@simpleangularcontrols/sac-bootstrap3 13.0.0-rc.2 → 13.0.0-rc.4

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 (135) hide show
  1. package/controls/checkbox/checkbox.d.ts +7 -2
  2. package/controls/checkbox/checkbox.d.ts.map +1 -1
  3. package/controls/checkbox/checkbox.module.d.ts +2 -1
  4. package/controls/checkbox/checkbox.module.d.ts.map +1 -1
  5. package/controls/checkbox/radiobuttons.d.ts +7 -2
  6. package/controls/checkbox/radiobuttons.d.ts.map +1 -1
  7. package/controls/datetime/date.d.ts +8 -2
  8. package/controls/datetime/date.d.ts.map +1 -1
  9. package/controls/datetime/datetime.d.ts +8 -2
  10. package/controls/datetime/datetime.d.ts.map +1 -1
  11. package/controls/datetime/datetime.module.d.ts +2 -1
  12. package/controls/datetime/datetime.module.d.ts.map +1 -1
  13. package/controls/datetime/time.d.ts +8 -2
  14. package/controls/datetime/time.d.ts.map +1 -1
  15. package/controls/form/form.d.ts +4 -12
  16. package/controls/form/form.d.ts.map +1 -1
  17. package/controls/form/form.module.d.ts.map +1 -1
  18. package/controls/input/input.d.ts +7 -2
  19. package/controls/input/input.d.ts.map +1 -1
  20. package/controls/input/input.module.d.ts +2 -1
  21. package/controls/input/input.module.d.ts.map +1 -1
  22. package/controls/input/inputarea.d.ts +7 -2
  23. package/controls/input/inputarea.d.ts.map +1 -1
  24. package/controls/input/inputcurrency.d.ts +7 -2
  25. package/controls/input/inputcurrency.d.ts.map +1 -1
  26. package/controls/input/inputdecimal.d.ts +7 -2
  27. package/controls/input/inputdecimal.d.ts.map +1 -1
  28. package/controls/input/inputemail.d.ts +7 -2
  29. package/controls/input/inputemail.d.ts.map +1 -1
  30. package/controls/input/inputinteger.d.ts +7 -2
  31. package/controls/input/inputinteger.d.ts.map +1 -1
  32. package/controls/input/inputpassword.d.ts +7 -2
  33. package/controls/input/inputpassword.d.ts.map +1 -1
  34. package/controls/input/inputsearch.d.ts +7 -2
  35. package/controls/input/inputsearch.d.ts.map +1 -1
  36. package/controls/layout/formlayout.directive.d.ts +7 -0
  37. package/controls/layout/formlayout.directive.d.ts.map +1 -0
  38. package/controls/layout/formlayout.directive.ngfactory.d.ts +4 -0
  39. package/controls/layout/formlayout.directive.ngfactory.d.ts.map +1 -0
  40. package/controls/layout/formlayout.directive.ngsummary.d.ts +2 -0
  41. package/controls/layout/formlayout.directive.ngsummary.d.ts.map +1 -0
  42. package/controls/layout/layout.module.d.ts +11 -0
  43. package/controls/layout/layout.module.d.ts.map +1 -0
  44. package/controls/layout/layout.module.ngfactory.d.ts +4 -0
  45. package/controls/layout/layout.module.ngfactory.d.ts.map +1 -0
  46. package/controls/layout/layout.module.ngsummary.d.ts +2 -0
  47. package/controls/layout/layout.module.ngsummary.d.ts.map +1 -0
  48. package/controls/layout/tocontrolwidthcss.pipe.d.ts +20 -0
  49. package/controls/layout/tocontrolwidthcss.pipe.d.ts.map +1 -0
  50. package/controls/layout/tocontrolwidthcss.pipe.ngfactory.d.ts +4 -0
  51. package/controls/layout/tocontrolwidthcss.pipe.ngfactory.d.ts.map +1 -0
  52. package/controls/layout/tocontrolwidthcss.pipe.ngsummary.d.ts +2 -0
  53. package/controls/layout/tocontrolwidthcss.pipe.ngsummary.d.ts.map +1 -0
  54. package/controls/layout/tolabelwidthcss.pipe.d.ts +14 -0
  55. package/controls/layout/tolabelwidthcss.pipe.d.ts.map +1 -0
  56. package/controls/layout/tolabelwidthcss.pipe.ngfactory.d.ts +4 -0
  57. package/controls/layout/tolabelwidthcss.pipe.ngfactory.d.ts.map +1 -0
  58. package/controls/layout/tolabelwidthcss.pipe.ngsummary.d.ts +2 -0
  59. package/controls/layout/tolabelwidthcss.pipe.ngsummary.d.ts.map +1 -0
  60. package/controls/list/dropdown.d.ts +17 -4
  61. package/controls/list/dropdown.d.ts.map +1 -1
  62. package/controls/list/list.module.d.ts +2 -1
  63. package/controls/list/list.module.d.ts.map +1 -1
  64. package/controls/list/listbox.d.ts +7 -2
  65. package/controls/list/listbox.d.ts.map +1 -1
  66. package/controls/static/formcontainer.d.ts +5 -5
  67. package/controls/static/formcontainer.d.ts.map +1 -1
  68. package/controls/static/staticlabel.d.ts +7 -2
  69. package/controls/static/staticlabel.d.ts.map +1 -1
  70. package/controls/static/staticlabel.module.d.ts +2 -1
  71. package/controls/static/staticlabel.module.d.ts.map +1 -1
  72. package/controls/tinymce/tinymce.d.ts +7 -7
  73. package/controls/tinymce/tinymce.d.ts.map +1 -1
  74. package/controls/tinymce/tinymce.module.d.ts +2 -1
  75. package/controls/tinymce/tinymce.module.d.ts.map +1 -1
  76. package/controls/upload/upload.d.ts +10 -4
  77. package/controls/upload/upload.d.ts.map +1 -1
  78. package/controls/upload/upload.module.d.ts +2 -1
  79. package/controls/upload/upload.module.d.ts.map +1 -1
  80. package/controls/upload/uploadmultiple.d.ts +9 -2
  81. package/controls/upload/uploadmultiple.d.ts.map +1 -1
  82. package/controls/validation/validationsummary.d.ts +6 -1
  83. package/controls/validation/validationsummary.d.ts.map +1 -1
  84. package/esm2020/controls/checkbox/checkbox.mjs +38 -14
  85. package/esm2020/controls/checkbox/checkbox.module.mjs +19 -10
  86. package/esm2020/controls/checkbox/radiobuttons.mjs +38 -14
  87. package/esm2020/controls/datetime/date.mjs +41 -16
  88. package/esm2020/controls/datetime/datetime.mjs +39 -14
  89. package/esm2020/controls/datetime/datetime.module.mjs +25 -12
  90. package/esm2020/controls/datetime/time.mjs +39 -14
  91. package/esm2020/controls/form/form.mjs +7 -19
  92. package/esm2020/controls/form/form.module.mjs +5 -14
  93. package/esm2020/controls/input/input.mjs +28 -12
  94. package/esm2020/controls/input/input.module.mjs +51 -6
  95. package/esm2020/controls/input/inputarea.mjs +38 -14
  96. package/esm2020/controls/input/inputcurrency.mjs +38 -14
  97. package/esm2020/controls/input/inputdecimal.mjs +38 -14
  98. package/esm2020/controls/input/inputemail.mjs +38 -14
  99. package/esm2020/controls/input/inputinteger.mjs +38 -14
  100. package/esm2020/controls/input/inputpassword.mjs +38 -14
  101. package/esm2020/controls/input/inputsearch.mjs +38 -14
  102. package/esm2020/controls/layout/formlayout.directive.mjs +14 -0
  103. package/esm2020/controls/layout/formlayout.directive.ngfactory.mjs +4 -0
  104. package/esm2020/controls/layout/formlayout.directive.ngsummary.mjs +2 -0
  105. package/esm2020/controls/layout/layout.module.mjs +32 -0
  106. package/esm2020/controls/layout/layout.module.ngfactory.mjs +4 -0
  107. package/esm2020/controls/layout/layout.module.ngsummary.mjs +2 -0
  108. package/esm2020/controls/layout/tocontrolwidthcss.pipe.mjs +51 -0
  109. package/esm2020/controls/layout/tocontrolwidthcss.pipe.ngfactory.mjs +4 -0
  110. package/esm2020/controls/layout/tocontrolwidthcss.pipe.ngsummary.mjs +2 -0
  111. package/esm2020/controls/layout/tolabelwidthcss.pipe.mjs +35 -0
  112. package/esm2020/controls/layout/tolabelwidthcss.pipe.ngfactory.mjs +4 -0
  113. package/esm2020/controls/layout/tolabelwidthcss.pipe.ngsummary.mjs +2 -0
  114. package/esm2020/controls/list/dropdown.mjs +51 -17
  115. package/esm2020/controls/list/list.module.mjs +31 -9
  116. package/esm2020/controls/list/listbox.mjs +39 -14
  117. package/esm2020/controls/static/formcontainer.mjs +36 -17
  118. package/esm2020/controls/static/staticlabel.mjs +38 -14
  119. package/esm2020/controls/static/staticlabel.module.mjs +15 -8
  120. package/esm2020/controls/tinymce/tinymce.mjs +19 -14
  121. package/esm2020/controls/tinymce/tinymce.module.mjs +9 -5
  122. package/esm2020/controls/upload/upload.mjs +40 -14
  123. package/esm2020/controls/upload/upload.module.mjs +8 -11
  124. package/esm2020/controls/upload/uploadmultiple.mjs +18 -8
  125. package/esm2020/controls/validation/validationsummary.mjs +14 -10
  126. package/esm2020/public_api.mjs +34 -30
  127. package/fesm2015/simpleangularcontrols-sac-bootstrap3.mjs +1595 -991
  128. package/fesm2015/simpleangularcontrols-sac-bootstrap3.mjs.map +1 -1
  129. package/fesm2020/simpleangularcontrols-sac-bootstrap3.mjs +1506 -902
  130. package/fesm2020/simpleangularcontrols-sac-bootstrap3.mjs.map +1 -1
  131. package/package.json +4 -2
  132. package/public_api.d.ts +33 -29
  133. package/public_api.d.ts.map +1 -1
  134. package/simpleangularcontrols-sac-bootstrap3-13.0.0-rc.4.tgz +0 -0
  135. package/simpleangularcontrols-sac-bootstrap3-13.0.0-rc.2.tgz +0 -0
@@ -1,13 +1,13 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, NgModule, Input, Directive, HostBinding, forwardRef, Host, Optional, ContentChildren, ComponentFactoryResolver, Injectable, Inject, SkipSelf, TemplateRef, ContentChild } from '@angular/core';
3
- import { SacButtonCommon, SacDialogCommon, SacFormCommon, SacCheckboxCommon, SacRadiobuttonsCommon, SacRadiobuttonCommon, SacDropdownCommon, SacDropdownOptionCommon, SacListboxCommon, SACCommonListboxOptionModule, SacValidationSummaryCommon, SacTabItemCommon, SacTabCommon, SacTooltipCommon, SacInputCommon, SacInputAreaCommon, SacInputCurrencyCommon, SacInputDecimalCommon, SacInputEmailCommon, SacInputIntegerCommon, SacInputPasswordCommon, SacInputSearchCommon, SacDateSelectorCommon, SacDateCommon, SacDateTimeCommon, SacTimeCommon, SacTinyMceCommon, SacStaticLabelCommon, SacStaticFormContainerCommon, SacWizardItemCommon, SacWizardCommon, SacUploadSingleCommon, SacUploadMultipleCommon, SacConfirmCommon, ServiceConfirmCommon, isDefined, SacConfirmButton, SacPagingCommon, SacGridCommon, SacGridColumnCommon, SacGridColumnBaseCommon, SacGridButtonCommon, SacGridColumnActionCommon, SacGridImageCommon, SacTreeViewChildCommon, SacTreeViewCommon, SacTreeItemActionCommon } from '@simpleangularcontrols/sac-common';
2
+ import { Component, NgModule, Directive, Pipe, forwardRef, Host, Optional, Input, ComponentFactoryResolver, Injectable, Inject, TemplateRef, ContentChild, ContentChildren, HostBinding, SkipSelf } from '@angular/core';
3
+ import { SacButtonCommon, SacFormLayoutCommon, SacCheckboxCommon, SacRadiobuttonsCommon, SacRadiobuttonCommon, SacDialogCommon, SacConfirmCommon, ServiceConfirmCommon, isDefined, SacConfirmButton, SacDateSelectorCommon, SacDateCommon, SacDateTimeCommon, SacTimeCommon, SacPagingCommon, SacGridCommon, SacGridColumnCommon, SacGridColumnBaseCommon, SacGridButtonCommon, SacGridColumnActionCommon, SacGridImageCommon, SacTooltipCommon, SacInputCommon, SacInputAreaCommon, SacInputCurrencyCommon, SacInputDecimalCommon, SacInputEmailCommon, SacInputIntegerCommon, SacInputPasswordCommon, SacInputSearchCommon, SacDropdownCommon, SacDropdownOptionCommon, SacListboxCommon, SACCommonListboxOptionModule, SacStaticFormContainerCommon, SacStaticLabelCommon, SacTabItemCommon, SacTabCommon, SacTinyMceCommon, SacTreeViewChildCommon, SacTreeViewCommon, SacTreeItemActionCommon, SacUploadSingleCommon, SacUploadMultipleCommon, SacFormCommon, SacValidationSummaryCommon, SacWizardItemCommon, SacWizardCommon } from '@simpleangularcontrols/sac-common';
4
4
  import * as i2 from '@angular/common';
5
5
  import { CommonModule } from '@angular/common';
6
6
  import * as i3 from '@angular/forms';
7
7
  import { NG_VALUE_ACCESSOR, NG_VALIDATORS, FormsModule, ControlContainer, NgForm } from '@angular/forms';
8
- import * as moment_ from 'moment';
9
8
  import * as i4 from 'angular-imask';
10
9
  import { IMaskModule } from 'angular-imask';
10
+ import * as moment_ from 'moment';
11
11
  import * as i2$1 from '@tinymce/tinymce-angular';
12
12
  import { EditorModule } from '@tinymce/tinymce-angular';
13
13
 
@@ -38,138 +38,165 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
38
38
  }]
39
39
  }] });
40
40
 
41
- class SacDialogComponent extends SacDialogCommon {
42
- constructor(el, cdRef) {
43
- super(cdRef);
44
- //#region Bootstrap 3 Spezifische Properites
45
- this.zindex = 20002;
46
- this._lastDialogMarginTop = 0;
47
- this.element = el.nativeElement;
48
- }
49
- // Margin Top für Center Position des Dialogs berechnen
50
- get dialogMarginTop() {
51
- let result = 0;
52
- // ContentPlaceholder kann NULL/UNDEFINED sein wenn Dialog nicht angezeigt wird
53
- if (this.dialogElement !== null && this.dialogElement !== undefined) {
54
- result = (this.dialogElement.nativeElement.clientHeight / 2) * -1;
41
+ class SacFormLayoutDirective extends SacFormLayoutCommon {
42
+ }
43
+ SacFormLayoutDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacFormLayoutDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
44
+ SacFormLayoutDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.7", type: SacFormLayoutDirective, selector: "[sacFormLayout]", usesInheritance: true, ngImport: i0 });
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacFormLayoutDirective, decorators: [{
46
+ type: Directive,
47
+ args: [{
48
+ selector: '[sacFormLayout]',
49
+ }]
50
+ }] });
51
+
52
+ class SacToControlWidthCssPipe {
53
+ // #region Public Methods
54
+ /**
55
+ * Get CSS classes from label width configuration to set control size
56
+ * @param value Configuration with grid columns for different viewports
57
+ * @returns string with css classe for bootstrap3
58
+ */
59
+ transform(value) {
60
+ const classes = [];
61
+ if (value.labelSizeXs) {
62
+ classes.push('col-xs-' + this.calcControlSize(value.labelSizeXs));
55
63
  }
56
- // Change Detection ausführen, falls Wert nach Rendering noch geändert hat. Kann durch HTML Content / Zeilenumbrüche usw. ausgelöst werden.
57
- if (this._lastDialogMarginTop !== result) {
58
- this._lastDialogMarginTop = result;
59
- this.ChangeDetector.detectChanges();
64
+ if (value.labelSizeSm) {
65
+ classes.push('col-sm-' + this.calcControlSize(value.labelSizeSm));
60
66
  }
61
- return result;
62
- }
63
- //#endregion
64
- ngOnInit() {
65
- // Element an Body für korrektes Styling unter Bootstrap 3 verschieben
66
- document.body.appendChild(this.element);
67
+ if (value.labelSizeMd) {
68
+ classes.push('col-md-' + this.calcControlSize(value.labelSizeMd));
69
+ }
70
+ if (value.labelSizeLg) {
71
+ classes.push('col-lg-' + this.calcControlSize(value.labelSizeLg));
72
+ }
73
+ return classes.join(' ');
67
74
  }
68
- ngOnDestroy() {
69
- this.hide();
70
- if (document.body.contains(this.element)) {
71
- document.body.removeChild(this.element);
75
+ // #endregion Public Methods
76
+ // #region Private Methods
77
+ /**
78
+ * calculate the control size
79
+ * @param labelsize grid size of label
80
+ * @returns grid size for control. should be between 1 and 12
81
+ */
82
+ calcControlSize(labelsize) {
83
+ if (labelsize === 12) {
84
+ return 12;
72
85
  }
73
- super.ngOnDestroy();
86
+ if (!labelsize) {
87
+ return 12;
88
+ }
89
+ return 12 - labelsize;
74
90
  }
75
91
  }
76
- SacDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDialogComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
77
- SacDialogComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacDialogComponent, selector: "sac-dialog", inputs: { zindex: "zindex" }, usesInheritance: true, ngImport: i0, template: "<div [id]=\"name\" *ngIf=\"_show\" [ngStyle]=\"{'z-index': zindex}\">\r\n <div class=\"modal in\" style=\"display: block;\" tabindex=\"-1\" role=\"dialog\" #dialog>\r\n <div class=\"modal-dialog\" role=\"document\" [style.width]=\"width\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\" (click)=\"hide()\" *ngIf=\"closebutton\"><span aria-hidden=\"true\">&times;</span></button>\r\n <span class=\"modal-title\">{{title}}</span>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ng-content select=\"[dialogbody]\"></ng-content>\r\n </div>\r\n <div class=\"modal-footer\">\r\n <ng-content select=\"[dialogfooter]\"></ng-content>\r\n </div>\r\n </div><!-- /.modal-content -->\r\n </div><!-- /.modal-dialog -->\r\n </div><!-- /.modal -->\r\n</div>\r\n<div class=\"modal-backdrop in\" *ngIf=\"_show && backdrop\" #backdrop></div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
78
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDialogComponent, decorators: [{
79
- type: Component,
80
- args: [{ selector: 'sac-dialog', template: "<div [id]=\"name\" *ngIf=\"_show\" [ngStyle]=\"{'z-index': zindex}\">\r\n <div class=\"modal in\" style=\"display: block;\" tabindex=\"-1\" role=\"dialog\" #dialog>\r\n <div class=\"modal-dialog\" role=\"document\" [style.width]=\"width\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\" (click)=\"hide()\" *ngIf=\"closebutton\"><span aria-hidden=\"true\">&times;</span></button>\r\n <span class=\"modal-title\">{{title}}</span>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ng-content select=\"[dialogbody]\"></ng-content>\r\n </div>\r\n <div class=\"modal-footer\">\r\n <ng-content select=\"[dialogfooter]\"></ng-content>\r\n </div>\r\n </div><!-- /.modal-content -->\r\n </div><!-- /.modal-dialog -->\r\n </div><!-- /.modal -->\r\n</div>\r\n<div class=\"modal-backdrop in\" *ngIf=\"_show && backdrop\" #backdrop></div>\r\n" }]
81
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { zindex: [{
82
- type: Input
83
- }] } });
84
-
85
- class SACBootstrap3DialogModule {
86
- }
87
- SACBootstrap3DialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
88
- SACBootstrap3DialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DialogModule, declarations: [SacDialogComponent], imports: [CommonModule], exports: [SacDialogComponent] });
89
- SACBootstrap3DialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DialogModule, imports: [[
90
- CommonModule
91
- ]] });
92
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DialogModule, decorators: [{
93
- type: NgModule,
92
+ SacToControlWidthCssPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacToControlWidthCssPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
93
+ SacToControlWidthCssPipepipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacToControlWidthCssPipe, name: "toControlWidthCss" });
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacToControlWidthCssPipe, decorators: [{
95
+ type: Pipe,
94
96
  args: [{
95
- declarations: [SacDialogComponent],
96
- imports: [
97
- CommonModule
98
- ],
99
- exports: [SacDialogComponent]
97
+ name: 'toControlWidthCss',
100
98
  }]
101
99
  }] });
102
100
 
103
- /**
104
- * Erweiterung / Hooking für automatismen in Formular. Wird als Container für alle Controls benötigt.
105
- *
106
- * @example Beispiel über Div Container
107
- *
108
- * <div ngForm></div>
109
- *
110
- * @example Beispiel über Form Tag
111
- *
112
- * <form></form>
113
- */
114
- /* eslint @angular-eslint/directive-selector: 0 */
115
- class SacFormDirective extends SacFormCommon {
101
+ class SacToLabelWidthCssPipe {
102
+ // #region Public Methods
116
103
  /**
117
- * Konstruktor
118
- * @param form Instanz von NgForm für eigene automatische Formular Logik
104
+ * Get CSS classes from label width configuration to set label size
105
+ * @param value Configuration with grid columns for different viewports
106
+ * @returns string with css classe for bootstrap3
119
107
  */
120
- constructor(form) {
121
- super(form);
122
- /**
123
- * Setzt die Standard CSS Klasse für auf dem Form Container
124
- */
125
- this.cssClassForm = true;
108
+ transform(value) {
109
+ const classes = [];
110
+ if (value.labelSizeXs) {
111
+ classes.push('col-xs-' + value.labelSizeXs);
112
+ }
113
+ if (value.labelSizeSm) {
114
+ classes.push('col-sm-' + value.labelSizeSm);
115
+ }
116
+ if (value.labelSizeMd) {
117
+ classes.push('col-md-' + value.labelSizeMd);
118
+ }
119
+ if (value.labelSizeLg) {
120
+ classes.push('col-lg-' + value.labelSizeLg);
121
+ }
122
+ return classes.join(' ');
126
123
  }
127
- /**
128
- * Setzt die CSS Klasse 'form-horizontal' wenn die Orientation auf Horizontal eingestellt ist
129
- */
130
- get orientientationHorizontal() { return this.getOrientation() === 'horizontal'; }
131
- /**
132
- * Setzt die CSS Klasse 'form-vertical' wenn die Orientation auf Vertical eingestellt ist
133
- */
134
- get orientientationVertical() { return this.getOrientation() === 'vertical'; }
135
124
  }
136
- SacFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacFormDirective, deps: [{ token: i3.NgForm }], target: i0.ɵɵFactoryTarget.Directive });
137
- SacFormDirectivedir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.7", type: SacFormDirective, selector: "form:not([ngNoForm]):not([formGroup]),[ngForm]", host: { properties: { "class.form": "this.cssClassForm", "class.form-horizontal": "this.orientientationHorizontal", "class.form-vertical": "this.orientientationVertical" } }, exportAs: ["sacform"], usesInheritance: true, ngImport: i0 });
138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacFormDirective, decorators: [{
139
- type: Directive,
125
+ SacToLabelWidthCssPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacToLabelWidthCssPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
126
+ SacToLabelWidthCssPipepipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" });
127
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacToLabelWidthCssPipe, decorators: [{
128
+ type: Pipe,
140
129
  args: [{
141
- selector: 'form:not([ngNoForm]):not([formGroup]),[ngForm]',
142
- exportAs: 'sacform'
130
+ name: 'toLabelWidthCss',
143
131
  }]
144
- }], ctorParameters: function () { return [{ type: i3.NgForm }]; }, propDecorators: { cssClassForm: [{
145
- type: HostBinding,
146
- args: ['class.form']
147
- }], orientientationHorizontal: [{
148
- type: HostBinding,
149
- args: ['class.form-horizontal']
150
- }], orientientationVertical: [{
151
- type: HostBinding,
152
- args: ['class.form-vertical']
153
- }] } });
132
+ }] });
133
+
134
+ class SACBootstrap3LayoutModule {
135
+ }
136
+ SACBootstrap3LayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3LayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
137
+ SACBootstrap3LayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3LayoutModule, declarations: [SacFormLayoutDirective,
138
+ SacToControlWidthCssPipe,
139
+ SacToLabelWidthCssPipe], imports: [CommonModule], exports: [SacFormLayoutDirective,
140
+ SacToControlWidthCssPipe,
141
+ SacToLabelWidthCssPipe] });
142
+ SACBootstrap3LayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3LayoutModule, imports: [[CommonModule]] });
143
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3LayoutModule, decorators: [{
144
+ type: NgModule,
145
+ args: [{
146
+ declarations: [
147
+ SacFormLayoutDirective,
148
+ SacToControlWidthCssPipe,
149
+ SacToLabelWidthCssPipe,
150
+ ],
151
+ imports: [CommonModule],
152
+ exports: [
153
+ SacFormLayoutDirective,
154
+ SacToControlWidthCssPipe,
155
+ SacToLabelWidthCssPipe,
156
+ ],
157
+ }]
158
+ }] });
154
159
 
155
160
  class SacCheckboxComponent extends SacCheckboxCommon {
156
- constructor(parent, injector) {
157
- super(parent, injector);
161
+ // #region Constructors
162
+ /**
163
+ * Constructor
164
+ * @param formLayout SacFormLayout to define scoped layout settings
165
+ * @param injector Injector for injecting services
166
+ */
167
+ constructor(formLayout, injector) {
168
+ super(formLayout, injector);
158
169
  }
159
170
  }
160
- SacCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacCheckboxComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
171
+ SacCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacCheckboxComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
161
172
  SacCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacCheckboxComponent, selector: "sac-checkbox", providers: [
162
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacCheckboxComponent },
163
- { provide: NG_VALIDATORS, useExisting: forwardRef(() => SacCheckboxComponent), multi: true }
164
- ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false\"\r\n for=\"{{name}}\"\r\n class=\"control-label\"\r\n [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\"\r\n >{{label}}</label\r\n >\r\n <div\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n >\r\n <div class=\"checkbox\">\r\n <label>\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"checkbox\"\r\n class=\"visible-checkbox\"\r\n [checked]=\"value\"\r\n [disabled]=\"isdisabled\"\r\n (blur)=\"onTouch()\"\r\n (change)=\"setValue($event.target.checked)\"\r\n />\r\n <ng-container *ngIf=\"checkboxtext\">&nbsp;<span>{{checkboxtext}}</span></ng-container>\r\n </label>\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
173
+ {
174
+ provide: NG_VALUE_ACCESSOR,
175
+ multi: true,
176
+ useExisting: SacCheckboxComponent,
177
+ },
178
+ {
179
+ provide: NG_VALIDATORS,
180
+ useExisting: forwardRef(() => SacCheckboxComponent),
181
+ multi: true,
182
+ },
183
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row\"\r\n [class.form-group]=\"!stacked\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"!disablelabel && !stacked\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[!disablelabel && !stacked ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[!disablelabel && !stacked ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"checkbox\">\r\n <label>\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"checkbox\"\r\n class=\"visible-checkbox\"\r\n [checked]=\"value\"\r\n [disabled]=\"isdisabled\"\r\n (blur)=\"onTouch()\"\r\n (change)=\"setValue($event.target.checked)\"\r\n />\r\n <ng-container *ngIf=\"checkboxtext\"\r\n >&nbsp;<span>{{checkboxtext}}</span></ng-container\r\n >\r\n </label>\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe } });
165
184
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacCheckboxComponent, decorators: [{
166
185
  type: Component,
167
186
  args: [{ selector: 'sac-checkbox', providers: [
168
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacCheckboxComponent },
169
- { provide: NG_VALIDATORS, useExisting: forwardRef(() => SacCheckboxComponent), multi: true }
170
- ], template: "<div\r\n class=\"form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false\"\r\n for=\"{{name}}\"\r\n class=\"control-label\"\r\n [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\"\r\n >{{label}}</label\r\n >\r\n <div\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n >\r\n <div class=\"checkbox\">\r\n <label>\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"checkbox\"\r\n class=\"visible-checkbox\"\r\n [checked]=\"value\"\r\n [disabled]=\"isdisabled\"\r\n (blur)=\"onTouch()\"\r\n (change)=\"setValue($event.target.checked)\"\r\n />\r\n <ng-container *ngIf=\"checkboxtext\">&nbsp;<span>{{checkboxtext}}</span></ng-container>\r\n </label>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
187
+ {
188
+ provide: NG_VALUE_ACCESSOR,
189
+ multi: true,
190
+ useExisting: SacCheckboxComponent,
191
+ },
192
+ {
193
+ provide: NG_VALIDATORS,
194
+ useExisting: forwardRef(() => SacCheckboxComponent),
195
+ multi: true,
196
+ },
197
+ ], template: "<div\r\n class=\"row\"\r\n [class.form-group]=\"!stacked\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"!disablelabel && !stacked\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[!disablelabel && !stacked ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[!disablelabel && !stacked ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"checkbox\">\r\n <label>\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"checkbox\"\r\n class=\"visible-checkbox\"\r\n [checked]=\"value\"\r\n [disabled]=\"isdisabled\"\r\n (blur)=\"onTouch()\"\r\n (change)=\"setValue($event.target.checked)\"\r\n />\r\n <ng-container *ngIf=\"checkboxtext\"\r\n >&nbsp;<span>{{checkboxtext}}</span></ng-container\r\n >\r\n </label>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
171
198
  }], ctorParameters: function () {
172
- return [{ type: SacFormDirective, decorators: [{
199
+ return [{ type: SacFormLayoutDirective, decorators: [{
173
200
  type: Host
174
201
  }, {
175
202
  type: Optional
@@ -177,23 +204,45 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
177
204
  } });
178
205
 
179
206
  class SacRadiobuttonsComponent extends SacRadiobuttonsCommon {
180
- constructor(parent, injector) {
181
- super(parent, injector);
207
+ // #region Constructors
208
+ /**
209
+ * Constructor
210
+ * @param formLayout SacFormLayout to define scoped layout settings
211
+ * @param injector Injector for injecting services
212
+ */
213
+ constructor(formLayout, injector) {
214
+ super(formLayout, injector);
182
215
  }
183
216
  }
184
- SacRadiobuttonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacRadiobuttonsComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
217
+ SacRadiobuttonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacRadiobuttonsComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
185
218
  SacRadiobuttonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacRadiobuttonsComponent, selector: "sac-radiobuttons", providers: [
186
- { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => SacRadiobuttonsComponent), multi: true },
187
- { provide: NG_VALIDATORS, useExisting: forwardRef(() => SacRadiobuttonsComponent), multi: true }
188
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\">\r\n <label *ngIf=\"disablelabel === false\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
219
+ {
220
+ provide: NG_VALUE_ACCESSOR,
221
+ useExisting: forwardRef(() => SacRadiobuttonsComponent),
222
+ multi: true,
223
+ },
224
+ {
225
+ provide: NG_VALIDATORS,
226
+ useExisting: forwardRef(() => SacRadiobuttonsComponent),
227
+ multi: true,
228
+ },
229
+ ], usesInheritance: true, ngImport: i0, template: "<div class=\"row form-group\">\r\n <label\r\n *ngIf=\"disablelabel === false\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe } });
189
230
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacRadiobuttonsComponent, decorators: [{
190
231
  type: Component,
191
232
  args: [{ selector: 'sac-radiobuttons', providers: [
192
- { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => SacRadiobuttonsComponent), multi: true },
193
- { provide: NG_VALIDATORS, useExisting: forwardRef(() => SacRadiobuttonsComponent), multi: true }
194
- ], template: "<div class=\"form-group\">\r\n <label *ngIf=\"disablelabel === false\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
233
+ {
234
+ provide: NG_VALUE_ACCESSOR,
235
+ useExisting: forwardRef(() => SacRadiobuttonsComponent),
236
+ multi: true,
237
+ },
238
+ {
239
+ provide: NG_VALIDATORS,
240
+ useExisting: forwardRef(() => SacRadiobuttonsComponent),
241
+ multi: true,
242
+ },
243
+ ], template: "<div class=\"row form-group\">\r\n <label\r\n *ngIf=\"disablelabel === false\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
195
244
  }], ctorParameters: function () {
196
- return [{ type: SacFormDirective, decorators: [{
245
+ return [{ type: SacFormLayoutDirective, decorators: [{
197
246
  type: Host
198
247
  }, {
199
248
  type: Optional
@@ -219,191 +268,558 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
219
268
  class SACBootstrap3CheckboxModule {
220
269
  }
221
270
  SACBootstrap3CheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3CheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
222
- SACBootstrap3CheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3CheckboxModule, declarations: [SacCheckboxComponent, SacRadiobuttonComponent, SacRadiobuttonsComponent], imports: [CommonModule], exports: [SacCheckboxComponent, SacRadiobuttonComponent, SacRadiobuttonsComponent] });
223
- SACBootstrap3CheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3CheckboxModule, imports: [[
224
- CommonModule
225
- ]] });
271
+ SACBootstrap3CheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3CheckboxModule, declarations: [SacCheckboxComponent,
272
+ SacRadiobuttonComponent,
273
+ SacRadiobuttonsComponent], imports: [CommonModule, SACBootstrap3LayoutModule], exports: [SacCheckboxComponent,
274
+ SacRadiobuttonComponent,
275
+ SacRadiobuttonsComponent] });
276
+ SACBootstrap3CheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3CheckboxModule, imports: [[CommonModule, SACBootstrap3LayoutModule]] });
226
277
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3CheckboxModule, decorators: [{
227
278
  type: NgModule,
228
279
  args: [{
229
- declarations: [SacCheckboxComponent, SacRadiobuttonComponent, SacRadiobuttonsComponent],
230
- imports: [
231
- CommonModule
280
+ declarations: [
281
+ SacCheckboxComponent,
282
+ SacRadiobuttonComponent,
283
+ SacRadiobuttonsComponent,
284
+ ],
285
+ imports: [CommonModule, SACBootstrap3LayoutModule],
286
+ exports: [
287
+ SacCheckboxComponent,
288
+ SacRadiobuttonComponent,
289
+ SacRadiobuttonsComponent,
232
290
  ],
233
- exports: [SacCheckboxComponent, SacRadiobuttonComponent, SacRadiobuttonsComponent]
234
291
  }]
235
292
  }] });
236
293
 
237
- class SacDropdownComponent extends SacDropdownCommon {
238
- constructor(parent, injector, _renderer, _elementRef) {
239
- super(parent, injector, _renderer, _elementRef);
294
+ class SacDialogComponent extends SacDialogCommon {
295
+ constructor(el, cdRef) {
296
+ super(cdRef);
297
+ //#region Bootstrap 3 Spezifische Properites
298
+ this.zindex = 20002;
299
+ this._lastDialogMarginTop = 0;
300
+ this.element = el.nativeElement;
240
301
  }
241
- }
242
- SacDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDropdownComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
243
- SacDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacDropdownComponent, selector: "sac-dropdown", providers: [
244
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacDropdownComponent },
245
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacDropdownComponent) }
246
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <select #dropdownitem id=\"{{name}}\" name=\"{{name}}\" class=\"form-control\"\r\n (blur)=\"onTouch()\" (change)=\"setValue(dropdownitem.value)\" [disabled]=\"isdisabled\">\r\n\r\n <option *ngIf=\"emptylabel !== ''\" [ngValue]=\"emptyvalue\">{{emptylabel}}</option>\r\n\r\n <ng-content></ng-content>\r\n\r\n <ng-container *ngIf=\"groupitems === ''\">\r\n <option *ngFor=\"let item of options\" [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\r\n\r\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\">\r\n </ng-template>\r\n\r\n </option>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"groupitems !== ''\">\r\n <optgroup *ngFor=\"let group of options\" [attr.label]=\"group[grouplabel]\">\r\n <option *ngFor=\"let item of group[groupitems]\" [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\r\n\r\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\">\r\n </ng-template>\r\n\r\n </option>\r\n </optgroup>\r\n </ng-container>\r\n\r\n\r\n </select>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultItemLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n", directives: [{ type: i0.forwardRef(function () { return i2.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i0.forwardRef(function () { return i3.NgSelectOption; }), selector: "option", inputs: ["ngValue", "value"] }, { type: i0.forwardRef(function () { return i3.ɵNgSelectMultipleOption; }), selector: "option", inputs: ["ngValue", "value"] }, { type: i0.forwardRef(function () { return SacDropdownOptionDirective; }), selector: "option,[sacOption]" }, { type: i0.forwardRef(function () { return i2.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i0.forwardRef(function () { return i2.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i0.forwardRef(function () { return i2.AsyncPipe; }) } });
247
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDropdownComponent, decorators: [{
248
- type: Component,
249
- args: [{ selector: 'sac-dropdown', providers: [
250
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacDropdownComponent },
251
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacDropdownComponent) }
252
- ], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <select #dropdownitem id=\"{{name}}\" name=\"{{name}}\" class=\"form-control\"\r\n (blur)=\"onTouch()\" (change)=\"setValue(dropdownitem.value)\" [disabled]=\"isdisabled\">\r\n\r\n <option *ngIf=\"emptylabel !== ''\" [ngValue]=\"emptyvalue\">{{emptylabel}}</option>\r\n\r\n <ng-content></ng-content>\r\n\r\n <ng-container *ngIf=\"groupitems === ''\">\r\n <option *ngFor=\"let item of options\" [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\r\n\r\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\">\r\n </ng-template>\r\n\r\n </option>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"groupitems !== ''\">\r\n <optgroup *ngFor=\"let group of options\" [attr.label]=\"group[grouplabel]\">\r\n <option *ngFor=\"let item of group[groupitems]\" [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\r\n\r\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\">\r\n </ng-template>\r\n\r\n </option>\r\n </optgroup>\r\n </ng-container>\r\n\r\n\r\n </select>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultItemLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n" }]
253
- }], ctorParameters: function () {
254
- return [{ type: SacFormDirective, decorators: [{
255
- type: Host
256
- }, {
257
- type: Optional
258
- }] }, { type: i0.Injector }, { type: i0.Renderer2 }, { type: i0.ElementRef }];
259
- } });
260
- class SacDropdownOptionDirective extends SacDropdownOptionCommon {
261
- constructor(_elementRef, _renderer, dropdownList) {
262
- super(_elementRef, _renderer, dropdownList);
302
+ // Margin Top für Center Position des Dialogs berechnen
303
+ get dialogMarginTop() {
304
+ let result = 0;
305
+ // ContentPlaceholder kann NULL/UNDEFINED sein wenn Dialog nicht angezeigt wird
306
+ if (this.dialogElement !== null && this.dialogElement !== undefined) {
307
+ result = (this.dialogElement.nativeElement.clientHeight / 2) * -1;
308
+ }
309
+ // Change Detection ausführen, falls Wert nach Rendering noch geändert hat. Kann durch HTML Content / Zeilenumbrüche usw. ausgelöst werden.
310
+ if (this._lastDialogMarginTop !== result) {
311
+ this._lastDialogMarginTop = result;
312
+ this.ChangeDetector.detectChanges();
313
+ }
314
+ return result;
263
315
  }
264
- }
265
- SacDropdownOptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDropdownOptionDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: SacDropdownComponent, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
266
- SacDropdownOptionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.7", type: SacDropdownOptionDirective, selector: "option,[sacOption]", usesInheritance: true, ngImport: i0 });
267
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDropdownOptionDirective, decorators: [{
268
- type: Directive,
269
- args: [{ selector: 'option,[sacOption]' }]
270
- }], ctorParameters: function () {
271
- return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: SacDropdownComponent, decorators: [{
272
- type: Optional
273
- }, {
274
- type: Host
275
- }] }];
276
- } });
277
-
278
- class SacListboxComponent extends SacListboxCommon {
279
- constructor(parent, injector) {
280
- super(parent, injector);
316
+ //#endregion
317
+ ngOnInit() {
318
+ // Element an Body für korrektes Styling unter Bootstrap 3 verschieben
319
+ document.body.appendChild(this.element);
320
+ }
321
+ ngOnDestroy() {
322
+ this.hide();
323
+ if (document.body.contains(this.element)) {
324
+ document.body.removeChild(this.element);
325
+ }
326
+ super.ngOnDestroy();
281
327
  }
282
328
  }
283
- SacListboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacListboxComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
284
- SacListboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacListboxComponent, selector: "sac-listbox", providers: [
285
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacListboxComponent },
286
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacListboxComponent) }
287
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <!-- <div class=\"col-12\" [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"> -->\r\n <select multiple id=\"{{name}}\" name=\"{{name}}\" class=\"form-control\" [size]=\"rowsize\"\r\n (blur)=\"onTouch()\" (change)=\"getSelectedItems($event.target)\" [disabled]=\"isdisabled\">\r\n <ng-content></ng-content>\r\n <ng-container *ngIf=\"groupitems === ''\">\r\n <option *ngFor=\"let option of options\" [value]=\"option[optionvalue]\" [disabled]=\"optionenabled !== '' && option[optionenabled] === false\">\r\n\r\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: option[optionlabel] }\">\r\n </ng-template>\r\n\r\n </option>\r\n </ng-container>\r\n <ng-container *ngIf=\"groupitems !== ''\">\r\n <optgroup *ngFor=\"let option of options\" [attr.label]=\"option[grouplabel]\">\r\n <option *ngFor=\"let item of option[groupitems]\" [value]=\"item[optionvalue]\" [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\r\n\r\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel] }\">\r\n </ng-template>\r\n\r\n </option>\r\n </optgroup>\r\n </ng-container>\r\n </select>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultItemLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { type: SacDropdownOptionDirective, selector: "option,[sacOption]" }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i2.AsyncPipe } });
288
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacListboxComponent, decorators: [{
329
+ SacDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDialogComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
330
+ SacDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacDialogComponent, selector: "sac-dialog", inputs: { zindex: "zindex" }, usesInheritance: true, ngImport: i0, template: "<div [id]=\"name\" *ngIf=\"_show\" [ngStyle]=\"{'z-index': zindex}\">\r\n <div class=\"modal in\" style=\"display: block;\" tabindex=\"-1\" role=\"dialog\" #dialog>\r\n <div class=\"modal-dialog\" role=\"document\" [style.width]=\"width\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\" (click)=\"hide()\" *ngIf=\"closebutton\"><span aria-hidden=\"true\">&times;</span></button>\r\n <span class=\"modal-title\">{{title}}</span>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ng-content select=\"[dialogbody]\"></ng-content>\r\n </div>\r\n <div class=\"modal-footer\">\r\n <ng-content select=\"[dialogfooter]\"></ng-content>\r\n </div>\r\n </div><!-- /.modal-content -->\r\n </div><!-- /.modal-dialog -->\r\n </div><!-- /.modal -->\r\n</div>\r\n<div class=\"modal-backdrop in\" *ngIf=\"_show && backdrop\" #backdrop></div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
331
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDialogComponent, decorators: [{
289
332
  type: Component,
290
- args: [{ selector: 'sac-listbox', providers: [
291
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacListboxComponent },
292
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacListboxComponent) }
293
- ], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <!-- <div class=\"col-12\" [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"> -->\r\n <select multiple id=\"{{name}}\" name=\"{{name}}\" class=\"form-control\" [size]=\"rowsize\"\r\n (blur)=\"onTouch()\" (change)=\"getSelectedItems($event.target)\" [disabled]=\"isdisabled\">\r\n <ng-content></ng-content>\r\n <ng-container *ngIf=\"groupitems === ''\">\r\n <option *ngFor=\"let option of options\" [value]=\"option[optionvalue]\" [disabled]=\"optionenabled !== '' && option[optionenabled] === false\">\r\n\r\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: option[optionlabel] }\">\r\n </ng-template>\r\n\r\n </option>\r\n </ng-container>\r\n <ng-container *ngIf=\"groupitems !== ''\">\r\n <optgroup *ngFor=\"let option of options\" [attr.label]=\"option[grouplabel]\">\r\n <option *ngFor=\"let item of option[groupitems]\" [value]=\"item[optionvalue]\" [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\r\n\r\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel] }\">\r\n </ng-template>\r\n\r\n </option>\r\n </optgroup>\r\n </ng-container>\r\n </select>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultItemLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n" }]
294
- }], ctorParameters: function () {
295
- return [{ type: SacFormDirective, decorators: [{
296
- type: Host
297
- }, {
298
- type: Optional
299
- }] }, { type: i0.Injector }];
300
- } });
333
+ args: [{ selector: 'sac-dialog', template: "<div [id]=\"name\" *ngIf=\"_show\" [ngStyle]=\"{'z-index': zindex}\">\r\n <div class=\"modal in\" style=\"display: block;\" tabindex=\"-1\" role=\"dialog\" #dialog>\r\n <div class=\"modal-dialog\" role=\"document\" [style.width]=\"width\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\" (click)=\"hide()\" *ngIf=\"closebutton\"><span aria-hidden=\"true\">&times;</span></button>\r\n <span class=\"modal-title\">{{title}}</span>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ng-content select=\"[dialogbody]\"></ng-content>\r\n </div>\r\n <div class=\"modal-footer\">\r\n <ng-content select=\"[dialogfooter]\"></ng-content>\r\n </div>\r\n </div><!-- /.modal-content -->\r\n </div><!-- /.modal-dialog -->\r\n </div><!-- /.modal -->\r\n</div>\r\n<div class=\"modal-backdrop in\" *ngIf=\"_show && backdrop\" #backdrop></div>\r\n" }]
334
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { zindex: [{
335
+ type: Input
336
+ }] } });
301
337
 
302
- class SACBootstrap3ListModule {
338
+ class SacConfirmComponent extends SacConfirmCommon {
303
339
  }
304
- SACBootstrap3ListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
305
- SACBootstrap3ListModulemod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ListModule, declarations: [SacDropdownComponent, SacDropdownOptionDirective, SacListboxComponent], imports: [CommonModule, SACCommonListboxOptionModule, FormsModule], exports: [SacDropdownComponent, SacDropdownOptionDirective, SacListboxComponent] });
306
- SACBootstrap3ListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ListModule, imports: [[
307
- CommonModule, SACCommonListboxOptionModule, FormsModule
308
- ]] });
309
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ListModule, decorators: [{
310
- type: NgModule,
311
- args: [{
312
- declarations: [SacDropdownComponent, SacDropdownOptionDirective, SacListboxComponent],
313
- imports: [
314
- CommonModule, SACCommonListboxOptionModule, FormsModule
315
- ],
316
- exports: [SacDropdownComponent, SacDropdownOptionDirective, SacListboxComponent]
317
- }]
340
+ SacConfirmComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacConfirmComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
341
+ SacConfirmComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacConfirmComponent, selector: "sac-confirm", usesInheritance: true, ngImport: i0, template: "<sac-dialog [(isvisible)]=\"isvisible\" [title]=\"title\" [allowesc]=\"false\" [closebutton]=\"false\">\r\n <div dialogbody>\r\n <div class=\"media\">\r\n <div class=\"media-left media-middle\" *ngIf=\"hasImage()\">\r\n <img [attr.src]=\"image\" />\r\n </div>\r\n <div class=\"media-body\">{{message}}</div>\r\n </div>\r\n </div>\r\n <div dialogfooter>\r\n <ng-container *ngFor=\"let button of buttons\">\r\n <sac-button [name]=\"button.key\" [text]=\"button.text\" (clicked)=\"confirm(button.key)\" style=\"margin-left: 15px;\"></sac-button>\r\n </ng-container>\r\n </div>\r\n</sac-dialog>\r\n", components: [{ type: SacDialogComponent, selector: "sac-dialog", inputs: ["zindex"] }, { type: SacButtonComponent, selector: "sac-button" }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
342
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacConfirmComponent, decorators: [{
343
+ type: Component,
344
+ args: [{ selector: 'sac-confirm', template: "<sac-dialog [(isvisible)]=\"isvisible\" [title]=\"title\" [allowesc]=\"false\" [closebutton]=\"false\">\r\n <div dialogbody>\r\n <div class=\"media\">\r\n <div class=\"media-left media-middle\" *ngIf=\"hasImage()\">\r\n <img [attr.src]=\"image\" />\r\n </div>\r\n <div class=\"media-body\">{{message}}</div>\r\n </div>\r\n </div>\r\n <div dialogfooter>\r\n <ng-container *ngFor=\"let button of buttons\">\r\n <sac-button [name]=\"button.key\" [text]=\"button.text\" (clicked)=\"confirm(button.key)\" style=\"margin-left: 15px;\"></sac-button>\r\n </ng-container>\r\n </div>\r\n</sac-dialog>\r\n" }]
318
345
  }] });
319
346
 
320
- class SacValidationSummaryComponent extends SacValidationSummaryCommon {
321
- constructor(parent, injector) {
322
- super(parent, injector);
323
- }
324
- }
325
- SacValidationSummaryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacValidationSummaryComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
326
- SacValidationSummaryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacValidationSummaryComponent, selector: "sac-validationsummary", providers: [
347
+ /**
348
+ * Service für Confirm Messages in TypeScript Code
349
+ *
350
+ * @example
351
+ * // Beispiel für ConfirmMessage mit Standard Buttons (Ja / Nein).
352
+ * confirmService.ConfirmMessage('titel', 'frage').subscribe(action => { // Action Code });
353
+ *
354
+ * @example
355
+ * // Beispiel für ConfirmMessage mit eigenen Buttons
356
+ * let buttons: SacConfirmButton[] = [];
357
+ * buttons.push(new SacConfirmButton('ActionKey','Text Primary'));
358
+ * buttons.push(new SacConfirmButton('ActionKey2','Text Button 2'));
359
+ * confirmService.ConfirmMessage('titel', 'frage', buttons).subscribe(action => { // Action Code });
360
+ */
361
+ class ServiceConfirm extends ServiceConfirmCommon {
362
+ /**
363
+ * Konstruktor
364
+ * @param componentFactoryResolver Component Factory Resolver Instanz
365
+ * @param appRef Application Referenz. Wird benötigt um den Dialog am Body anzuhängen
366
+ * @param injector Injector. Wird benötigt um den Dialog dynamisch zu erzeugen
367
+ */
368
+ constructor(componentFactoryResolver, appRef, injector) {
369
+ super(appRef, injector);
370
+ this.componentFactoryResolver = componentFactoryResolver;
371
+ /**
372
+ * Titel der im Dialog angezeigt werden soll.
373
+ */
374
+ this.title = '';
375
+ /**
376
+ * Message die in Dialog angezeigt werden soll.
377
+ */
378
+ this.message = '';
379
+ /**
380
+ * Collection von Buttons die angezeigt werden müssen.
381
+ */
382
+ this.buttons = [];
383
+ }
384
+ /**
385
+ * Erzeugen einer Component Factory für einen Dialog
386
+ */
387
+ GetComponentFactory() {
388
+ return this.componentFactoryResolver.resolveComponentFactory(SacConfirmComponent);
389
+ }
390
+ /**
391
+ * Konfiguration des Dialogs
392
+ * @param instance Instanz eines SacConfirm Dialogs
393
+ */
394
+ ConfigureDialog(instance) {
395
+ // Text in Dialog setzen
396
+ instance.title = this.title;
397
+ instance.message = this.message;
398
+ instance.buttons = this.buttons;
399
+ instance.image = this.iconService.ConfirmDefaultImage;
400
+ }
401
+ /**
402
+ * Confirm Dialog anzeigen
403
+ * @param message Nachricht die angezeigt werden soll.
404
+ * @returns EventEmitter mit Key des Buttons, welcher geklickt wurde.
405
+ */
406
+ ConfirmMessage(title, message, buttons = null) {
407
+ this.title = title;
408
+ this.message = message;
409
+ // Default Buttons setzen, wenn keine Buttons angegeben sind
410
+ if (!isDefined(buttons)) {
411
+ // TODO: Text von Localisation Service beziehen
412
+ this.buttons = [];
413
+ this.buttons.push(new SacConfirmButton('yes', 'Ja'));
414
+ this.buttons.push(new SacConfirmButton('no', 'Nein'));
415
+ }
416
+ else {
417
+ this.buttons = buttons;
418
+ }
419
+ return super.Confirm();
420
+ }
421
+ }
422
+ ServiceConfirm.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ServiceConfirm, deps: [{ token: ComponentFactoryResolver }, { token: i0.ApplicationRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
423
+ ServiceConfirm.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ServiceConfirm });
424
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ServiceConfirm, decorators: [{
425
+ type: Injectable
426
+ }], ctorParameters: function () {
427
+ return [{ type: i0.ComponentFactoryResolver, decorators: [{
428
+ type: Inject,
429
+ args: [ComponentFactoryResolver]
430
+ }] }, { type: i0.ApplicationRef }, { type: i0.Injector }];
431
+ } });
432
+
433
+ class SACBootstrap3DialogModule {
434
+ }
435
+ SACBootstrap3DialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
436
+ SACBootstrap3DialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DialogModule, declarations: [SacDialogComponent], imports: [CommonModule], exports: [SacDialogComponent] });
437
+ SACBootstrap3DialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DialogModule, imports: [[
438
+ CommonModule
439
+ ]] });
440
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DialogModule, decorators: [{
441
+ type: NgModule,
442
+ args: [{
443
+ declarations: [SacDialogComponent],
444
+ imports: [
445
+ CommonModule
446
+ ],
447
+ exports: [SacDialogComponent]
448
+ }]
449
+ }] });
450
+
451
+ /**
452
+ * Module für Confirm Messages
453
+ *
454
+ * In NgModule der Applikation folgenden Eintrag bei Imports einfügen: ExanicBootstrap3ConfirmModule.forRoot()
455
+ *
456
+ */
457
+ class SACBootstrap3ConfirmModule {
458
+ static forRoot() {
459
+ return {
460
+ ngModule: SACBootstrap3ConfirmModule,
461
+ providers: [ServiceConfirm]
462
+ };
463
+ }
464
+ }
465
+ SACBootstrap3ConfirmModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ConfirmModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
466
+ SACBootstrap3ConfirmModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ConfirmModule, declarations: [SacConfirmComponent], imports: [CommonModule, SACBootstrap3DialogModule, SACBootstrap3ButtonModule], exports: [SacConfirmComponent] });
467
+ SACBootstrap3ConfirmModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ConfirmModule, imports: [[CommonModule, SACBootstrap3DialogModule, SACBootstrap3ButtonModule]] });
468
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ConfirmModule, decorators: [{
469
+ type: NgModule,
470
+ args: [{
471
+ declarations: [SacConfirmComponent],
472
+ imports: [CommonModule, SACBootstrap3DialogModule, SACBootstrap3ButtonModule],
473
+ exports: [SacConfirmComponent]
474
+ }]
475
+ }] });
476
+
477
+ class SacDateSelectorComponent extends SacDateSelectorCommon {
478
+ }
479
+ SacDateSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDateSelectorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
480
+ SacDateSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacDateSelectorComponent, selector: "sac-dateselector", usesInheritance: true, ngImport: i0, template: "<div class=\"calendar-selector\" style=\"min-width: 265px\">\r\n <table class=\"table-condensed\" style=\"width: 100%\" *ngIf=\"dateselection\">\r\n <thead>\r\n <tr>\r\n <th class=\"prev text-left\" (click)=\"monthBack()\">\r\n <i [class]=\"iconMonthPrev\"></i>\r\n </th>\r\n <th colspan=\"5\" class=\"switch text-center\">{{month+1}}/{{year}}</th>\r\n <th class=\"next text-right\" (click)=\"monthNext()\">\r\n <i [class]=\"iconMonthNext\"></i>\r\n </th>\r\n </tr>\r\n <tr>\r\n <th class=\"dow text-center\">Mo</th>\r\n <th class=\"dow text-center\">Di</th>\r\n <th class=\"dow text-center\">Mi</th>\r\n <th class=\"dow text-center\">Do</th>\r\n <th class=\"dow text-center\">Fr</th>\r\n <th class=\"dow text-center\">Sa</th>\r\n <th class=\"dow text-center\">So</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <ng-container *ngFor=\"let week of dates; let i=index\">\r\n <tr>\r\n <td\r\n class=\"text-center\"\r\n *ngFor=\"let item of week\"\r\n [ngStyle]=\"{'cursor': item.isenabled ? 'pointer' : null}\"\r\n [ngClass]=\"{'day-current': item.iscurrent, 'day-selected': item.isselected, 'day-new': item.isnew, 'day-disabled': !item.isenabled}\"\r\n (click)=\"selectDate(item)\"\r\n >\r\n {{ item.displaytext }}\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </tbody>\r\n </table>\r\n <div class=\"container-fluid\" *ngIf=\"timeselection\" style=\"margin-top: 10px\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6\" style=\"padding-right: 20px\">\r\n <div class=\"form-group\">\r\n <label>Stunde</label>\r\n <input\r\n type=\"number\"\r\n class=\"form-control\"\r\n [value]=\"getHours()\"\r\n (input)=\"setHours($event.target.value)\"\r\n min=\"0\"\r\n max=\"23\"\r\n />\r\n </div>\r\n </div>\r\n <div class=\"col-md-6\" style=\"padding-left: 20px\">\r\n <div class=\"form-group\">\r\n <label>Minute</label>\r\n <input\r\n type=\"number\"\r\n class=\"form-control\"\r\n [value]=\"getMinutes()\"\r\n (input)=\"setMinutes($event.target.value)\"\r\n min=\"0\"\r\n max=\"59\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" style=\"margin-top: 10px\">\r\n <div class=\"col-md-4 text-left\">\r\n <button type=\"button\" class=\"btn btn-default\" (click)=\"setToday()\">\r\n Heute\r\n </button>\r\n </div>\r\n <div class=\"col-md-8 text-right\">\r\n <button type=\"button\" class=\"btn btn-default\" (click)=\"resetSelection()\">\r\n Reset\r\n </button>\r\n <button\r\n type=\"button\"\r\n class=\"btn btn-primary\"\r\n style=\"margin-left: 10px\"\r\n (click)=\"applySelection()\"\r\n >\r\n Apply\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
481
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDateSelectorComponent, decorators: [{
482
+ type: Component,
483
+ args: [{ selector: 'sac-dateselector', template: "<div class=\"calendar-selector\" style=\"min-width: 265px\">\r\n <table class=\"table-condensed\" style=\"width: 100%\" *ngIf=\"dateselection\">\r\n <thead>\r\n <tr>\r\n <th class=\"prev text-left\" (click)=\"monthBack()\">\r\n <i [class]=\"iconMonthPrev\"></i>\r\n </th>\r\n <th colspan=\"5\" class=\"switch text-center\">{{month+1}}/{{year}}</th>\r\n <th class=\"next text-right\" (click)=\"monthNext()\">\r\n <i [class]=\"iconMonthNext\"></i>\r\n </th>\r\n </tr>\r\n <tr>\r\n <th class=\"dow text-center\">Mo</th>\r\n <th class=\"dow text-center\">Di</th>\r\n <th class=\"dow text-center\">Mi</th>\r\n <th class=\"dow text-center\">Do</th>\r\n <th class=\"dow text-center\">Fr</th>\r\n <th class=\"dow text-center\">Sa</th>\r\n <th class=\"dow text-center\">So</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <ng-container *ngFor=\"let week of dates; let i=index\">\r\n <tr>\r\n <td\r\n class=\"text-center\"\r\n *ngFor=\"let item of week\"\r\n [ngStyle]=\"{'cursor': item.isenabled ? 'pointer' : null}\"\r\n [ngClass]=\"{'day-current': item.iscurrent, 'day-selected': item.isselected, 'day-new': item.isnew, 'day-disabled': !item.isenabled}\"\r\n (click)=\"selectDate(item)\"\r\n >\r\n {{ item.displaytext }}\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </tbody>\r\n </table>\r\n <div class=\"container-fluid\" *ngIf=\"timeselection\" style=\"margin-top: 10px\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6\" style=\"padding-right: 20px\">\r\n <div class=\"form-group\">\r\n <label>Stunde</label>\r\n <input\r\n type=\"number\"\r\n class=\"form-control\"\r\n [value]=\"getHours()\"\r\n (input)=\"setHours($event.target.value)\"\r\n min=\"0\"\r\n max=\"23\"\r\n />\r\n </div>\r\n </div>\r\n <div class=\"col-md-6\" style=\"padding-left: 20px\">\r\n <div class=\"form-group\">\r\n <label>Minute</label>\r\n <input\r\n type=\"number\"\r\n class=\"form-control\"\r\n [value]=\"getMinutes()\"\r\n (input)=\"setMinutes($event.target.value)\"\r\n min=\"0\"\r\n max=\"59\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" style=\"margin-top: 10px\">\r\n <div class=\"col-md-4 text-left\">\r\n <button type=\"button\" class=\"btn btn-default\" (click)=\"setToday()\">\r\n Heute\r\n </button>\r\n </div>\r\n <div class=\"col-md-8 text-right\">\r\n <button type=\"button\" class=\"btn btn-default\" (click)=\"resetSelection()\">\r\n Reset\r\n </button>\r\n <button\r\n type=\"button\"\r\n class=\"btn btn-primary\"\r\n style=\"margin-left: 10px\"\r\n (click)=\"applySelection()\"\r\n >\r\n Apply\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
484
+ }] });
485
+
486
+ const moment = moment_['default'];
487
+ class SacDateComponent extends SacDateCommon {
488
+ // #region Constructors
489
+ /**
490
+ * Constructor
491
+ * @param formLayout SacFormLayout to define scoped layout settings
492
+ * @param injector Injector for injecting services
493
+ * @param elementRef Reference to html dom element
494
+ */
495
+ constructor(formLayout, injector, elementRef) {
496
+ super(formLayout, injector, elementRef);
497
+ }
498
+ }
499
+ SacDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDateComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
500
+ SacDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacDateComponent, selector: "sac-date", providers: [
327
501
  {
328
502
  provide: NG_VALUE_ACCESSOR,
329
503
  multi: true,
330
- useExisting: SacValidationSummaryComponent
331
- }
332
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"alert alert-danger\" role=\"alert\" *ngIf=\"hasErrors\" [id]=\"name\">\r\n <ul>\r\n <li *ngFor=\"let error of formErrors\">\r\n {{error | async}}\r\n </li>\r\n </ul>\r\n</div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i2.AsyncPipe }, viewProviders: [{ provide: ControlContainer, useExisting: SacFormDirective }] });
333
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacValidationSummaryComponent, decorators: [{
504
+ useExisting: forwardRef(() => SacDateComponent),
505
+ },
506
+ {
507
+ provide: NG_VALIDATORS,
508
+ multi: true,
509
+ useExisting: forwardRef(() => SacDateComponent),
510
+ },
511
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div style=\"position: relative; width: 140px\">\r\n <div id=\"{{name}}\" class=\"datetime-textbox input-group\">\r\n <!-- this class comes in the div above when disabled [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\" -->\r\n <input\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control date-control\"\r\n [imask]=\"imaskDate\"\r\n placeholder=\"dd.mm.yyyy\"\r\n [attr.placeholder]=\"placeholder\"\r\n [value]=\"valuestring\"\r\n maxlength=\"10\"\r\n size=\"10\"\r\n (blur)=\"onTouch()\"\r\n (accept)=\"setValueString($event)\"\r\n [disabled]=\"isdisabled\"\r\n (click)=\"showDateSelector()\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <button\r\n class=\"btn btn-default\"\r\n type=\"button\"\r\n (click)=\"showDateSelector()\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <i [class]=\"IconSelector\"></i>\r\n </button>\r\n </span>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n\r\n <div\r\n class=\"popover bottom in\"\r\n role=\"tooltip\"\r\n *ngIf=\"_showselector\"\r\n style=\"\r\n display: block;\r\n left: unset;\r\n right: 0px;\r\n top: 34px;\r\n max-width: 325px;\r\n \"\r\n >\r\n <div class=\"arrow\" style=\"left: unset; right: 10px\"></div>\r\n <h3 class=\"popover-title\" style=\"display: none\"></h3>\r\n <div class=\"popover-content\">\r\n <sac-dateselector\r\n *ngIf=\"_showselector\"\r\n [initialvalue]=\"value\"\r\n (selectdate)=\"dateselect($event)\"\r\n dateselection=\"true\"\r\n ></sac-dateselector>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", components: [{ type: SacDateSelectorComponent, selector: "sac-dateselector" }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.IMaskDirective, selector: "[imask]", inputs: ["imaskElement", "imask", "unmask"], outputs: ["accept", "complete"], exportAs: ["imask"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
512
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDateComponent, decorators: [{
334
513
  type: Component,
335
- args: [{ selector: 'sac-validationsummary', providers: [
514
+ args: [{ selector: 'sac-date', providers: [
336
515
  {
337
516
  provide: NG_VALUE_ACCESSOR,
338
517
  multi: true,
339
- useExisting: SacValidationSummaryComponent
340
- }
341
- ], viewProviders: [{ provide: ControlContainer, useExisting: SacFormDirective }], template: "<div class=\"alert alert-danger\" role=\"alert\" *ngIf=\"hasErrors\" [id]=\"name\">\r\n <ul>\r\n <li *ngFor=\"let error of formErrors\">\r\n {{error | async}}\r\n </li>\r\n </ul>\r\n</div>\r\n" }]
518
+ useExisting: forwardRef(() => SacDateComponent),
519
+ },
520
+ {
521
+ provide: NG_VALIDATORS,
522
+ multi: true,
523
+ useExisting: forwardRef(() => SacDateComponent),
524
+ },
525
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div style=\"position: relative; width: 140px\">\r\n <div id=\"{{name}}\" class=\"datetime-textbox input-group\">\r\n <!-- this class comes in the div above when disabled [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\" -->\r\n <input\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control date-control\"\r\n [imask]=\"imaskDate\"\r\n placeholder=\"dd.mm.yyyy\"\r\n [attr.placeholder]=\"placeholder\"\r\n [value]=\"valuestring\"\r\n maxlength=\"10\"\r\n size=\"10\"\r\n (blur)=\"onTouch()\"\r\n (accept)=\"setValueString($event)\"\r\n [disabled]=\"isdisabled\"\r\n (click)=\"showDateSelector()\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <button\r\n class=\"btn btn-default\"\r\n type=\"button\"\r\n (click)=\"showDateSelector()\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <i [class]=\"IconSelector\"></i>\r\n </button>\r\n </span>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n\r\n <div\r\n class=\"popover bottom in\"\r\n role=\"tooltip\"\r\n *ngIf=\"_showselector\"\r\n style=\"\r\n display: block;\r\n left: unset;\r\n right: 0px;\r\n top: 34px;\r\n max-width: 325px;\r\n \"\r\n >\r\n <div class=\"arrow\" style=\"left: unset; right: 10px\"></div>\r\n <h3 class=\"popover-title\" style=\"display: none\"></h3>\r\n <div class=\"popover-content\">\r\n <sac-dateselector\r\n *ngIf=\"_showselector\"\r\n [initialvalue]=\"value\"\r\n (selectdate)=\"dateselect($event)\"\r\n dateselection=\"true\"\r\n ></sac-dateselector>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
342
526
  }], ctorParameters: function () {
343
- return [{ type: SacFormDirective, decorators: [{
527
+ return [{ type: SacFormLayoutDirective, decorators: [{
344
528
  type: Host
345
529
  }, {
346
530
  type: Optional
347
- }] }, { type: i0.Injector }];
531
+ }] }, { type: i0.Injector }, { type: i0.ElementRef }];
348
532
  } });
349
533
 
350
- class SACBootstrap3ValidationSummaryModule {
534
+ class SacDateTimeComponent extends SacDateTimeCommon {
535
+ // #region Constructors
536
+ /**
537
+ * Constructor
538
+ * @param formLayout SacFormLayout to define scoped layout settings
539
+ * @param injector Injector for injecting services
540
+ * @param elementRef Reference to html dom element
541
+ */
542
+ constructor(formLayout, injector, elementRef) {
543
+ super(formLayout, injector, elementRef);
544
+ }
545
+ }
546
+ SacDateTimeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDateTimeComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
547
+ SacDateTimeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacDateTimeComponent, selector: "sac-datetime", providers: [
548
+ {
549
+ provide: NG_VALUE_ACCESSOR,
550
+ multi: true,
551
+ useExisting: forwardRef(() => SacDateTimeComponent),
552
+ },
553
+ {
554
+ provide: NG_VALIDATORS,
555
+ multi: true,
556
+ useExisting: forwardRef(() => SacDateTimeComponent),
557
+ },
558
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div style=\"position: relative; width: 180px\">\r\n <div id=\"{{name}}\" class=\"datetime-textbox input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [imask]=\"imaskDate\"\r\n [attr.placeholder]=\"placeholder\"\r\n [value]=\"valuestring\"\r\n [ngClass]=\"{'is-invalid': invalid && (dirty || touched) }\"\r\n (blur)=\"onTouch()\"\r\n (accept)=\"setValueString($event)\"\r\n [disabled]=\"isdisabled\"\r\n (click)=\"showDateSelector()\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <button\r\n class=\"btn btn-default\"\r\n type=\"button\"\r\n (click)=\"showDateSelector()\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <i [class]=\"IconSelector\"></i>\r\n </button>\r\n </span>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n\r\n <div\r\n class=\"popover bottom in\"\r\n role=\"tooltip\"\r\n *ngIf=\"_showselector\"\r\n style=\"\r\n display: block;\r\n left: unset;\r\n right: 0px;\r\n top: 34px;\r\n max-width: 325px;\r\n \"\r\n >\r\n <div class=\"arrow\" style=\"left: unset; right: 10px\"></div>\r\n <h3 class=\"popover-title\" style=\"display: none\"></h3>\r\n <div class=\"popover-content\">\r\n <sac-dateselector\r\n *ngIf=\"_showselector\"\r\n [initialvalue]=\"value\"\r\n (selectdate)=\"dateselect($event)\"\r\n dateselection=\"true\"\r\n timeselection=\"true\"\r\n ></sac-dateselector>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", components: [{ type: SacDateSelectorComponent, selector: "sac-dateselector" }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.IMaskDirective, selector: "[imask]", inputs: ["imaskElement", "imask", "unmask"], outputs: ["accept", "complete"], exportAs: ["imask"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
559
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDateTimeComponent, decorators: [{
560
+ type: Component,
561
+ args: [{ selector: 'sac-datetime', providers: [
562
+ {
563
+ provide: NG_VALUE_ACCESSOR,
564
+ multi: true,
565
+ useExisting: forwardRef(() => SacDateTimeComponent),
566
+ },
567
+ {
568
+ provide: NG_VALIDATORS,
569
+ multi: true,
570
+ useExisting: forwardRef(() => SacDateTimeComponent),
571
+ },
572
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div style=\"position: relative; width: 180px\">\r\n <div id=\"{{name}}\" class=\"datetime-textbox input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [imask]=\"imaskDate\"\r\n [attr.placeholder]=\"placeholder\"\r\n [value]=\"valuestring\"\r\n [ngClass]=\"{'is-invalid': invalid && (dirty || touched) }\"\r\n (blur)=\"onTouch()\"\r\n (accept)=\"setValueString($event)\"\r\n [disabled]=\"isdisabled\"\r\n (click)=\"showDateSelector()\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <button\r\n class=\"btn btn-default\"\r\n type=\"button\"\r\n (click)=\"showDateSelector()\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <i [class]=\"IconSelector\"></i>\r\n </button>\r\n </span>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n\r\n <div\r\n class=\"popover bottom in\"\r\n role=\"tooltip\"\r\n *ngIf=\"_showselector\"\r\n style=\"\r\n display: block;\r\n left: unset;\r\n right: 0px;\r\n top: 34px;\r\n max-width: 325px;\r\n \"\r\n >\r\n <div class=\"arrow\" style=\"left: unset; right: 10px\"></div>\r\n <h3 class=\"popover-title\" style=\"display: none\"></h3>\r\n <div class=\"popover-content\">\r\n <sac-dateselector\r\n *ngIf=\"_showselector\"\r\n [initialvalue]=\"value\"\r\n (selectdate)=\"dateselect($event)\"\r\n dateselection=\"true\"\r\n timeselection=\"true\"\r\n ></sac-dateselector>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
573
+ }], ctorParameters: function () {
574
+ return [{ type: SacFormLayoutDirective, decorators: [{
575
+ type: Host
576
+ }, {
577
+ type: Optional
578
+ }] }, { type: i0.Injector }, { type: i0.ElementRef }];
579
+ } });
580
+
581
+ class SacTimeComponent extends SacTimeCommon {
582
+ // #region Constructors
583
+ /**
584
+ * Constructor
585
+ * @param formLayout SacFormLayout to define scoped layout settings
586
+ * @param injector Injector for injecting services
587
+ * @param elementRef Reference to html dom element
588
+ */
589
+ constructor(formLayout, injector, elementRef) {
590
+ super(formLayout, injector, elementRef);
591
+ }
592
+ }
593
+ SacTimeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTimeComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
594
+ SacTimeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTimeComponent, selector: "sac-time", providers: [
595
+ {
596
+ provide: NG_VALUE_ACCESSOR,
597
+ multi: true,
598
+ useExisting: forwardRef(() => SacTimeComponent),
599
+ },
600
+ {
601
+ provide: NG_VALIDATORS,
602
+ multi: true,
603
+ useExisting: forwardRef(() => SacTimeComponent),
604
+ },
605
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div style=\"position: relative; width: 140px\">\r\n <div class=\"input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n [value]=\"valuestring\"\r\n maxlength=\"6\"\r\n [imask]=\"imaskDate\"\r\n size=\"6\"\r\n class=\"form-control\"\r\n [attr.placeholder]=\"placeholder\"\r\n data-error-msg=\"ctl00_cphContent_ctl00_ucPublicationDetail_dtpValidFrom_timeTextBoxTypeValidator\"\r\n [ngClass]=\"{'is-invalid': invalid && (dirty || touched) }\"\r\n (blur)=\"onTouch()\"\r\n (accept)=\"setValueString($event)\"\r\n [disabled]=\"isdisabled\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <button\r\n class=\"btn btn-default\"\r\n type=\"button\"\r\n (click)=\"showTimeSelector()\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <i [class]=\"IconSelector\"></i>\r\n </button>\r\n </span>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n <div\r\n class=\"popover bottom in\"\r\n role=\"tooltip\"\r\n *ngIf=\"_showselector\"\r\n style=\"\r\n display: block;\r\n left: unset;\r\n right: 0px;\r\n top: 34px;\r\n max-width: 325px;\r\n \"\r\n >\r\n <div class=\"arrow\" style=\"left: unset; right: 10px\"></div>\r\n <h3 class=\"popover-title\" style=\"display: none\"></h3>\r\n <div class=\"popover-content\">\r\n <sac-dateselector\r\n *ngIf=\"_showselector\"\r\n [initialvalue]=\"value\"\r\n (selectdate)=\"timeselect($event)\"\r\n timeselection=\"true\"\r\n ></sac-dateselector>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", components: [{ type: SacDateSelectorComponent, selector: "sac-dateselector" }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.IMaskDirective, selector: "[imask]", inputs: ["imaskElement", "imask", "unmask"], outputs: ["accept", "complete"], exportAs: ["imask"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
606
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTimeComponent, decorators: [{
607
+ type: Component,
608
+ args: [{ selector: 'sac-time', providers: [
609
+ {
610
+ provide: NG_VALUE_ACCESSOR,
611
+ multi: true,
612
+ useExisting: forwardRef(() => SacTimeComponent),
613
+ },
614
+ {
615
+ provide: NG_VALIDATORS,
616
+ multi: true,
617
+ useExisting: forwardRef(() => SacTimeComponent),
618
+ },
619
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div style=\"position: relative; width: 140px\">\r\n <div class=\"input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n [value]=\"valuestring\"\r\n maxlength=\"6\"\r\n [imask]=\"imaskDate\"\r\n size=\"6\"\r\n class=\"form-control\"\r\n [attr.placeholder]=\"placeholder\"\r\n data-error-msg=\"ctl00_cphContent_ctl00_ucPublicationDetail_dtpValidFrom_timeTextBoxTypeValidator\"\r\n [ngClass]=\"{'is-invalid': invalid && (dirty || touched) }\"\r\n (blur)=\"onTouch()\"\r\n (accept)=\"setValueString($event)\"\r\n [disabled]=\"isdisabled\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <button\r\n class=\"btn btn-default\"\r\n type=\"button\"\r\n (click)=\"showTimeSelector()\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <i [class]=\"IconSelector\"></i>\r\n </button>\r\n </span>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n <div\r\n class=\"popover bottom in\"\r\n role=\"tooltip\"\r\n *ngIf=\"_showselector\"\r\n style=\"\r\n display: block;\r\n left: unset;\r\n right: 0px;\r\n top: 34px;\r\n max-width: 325px;\r\n \"\r\n >\r\n <div class=\"arrow\" style=\"left: unset; right: 10px\"></div>\r\n <h3 class=\"popover-title\" style=\"display: none\"></h3>\r\n <div class=\"popover-content\">\r\n <sac-dateselector\r\n *ngIf=\"_showselector\"\r\n [initialvalue]=\"value\"\r\n (selectdate)=\"timeselect($event)\"\r\n timeselection=\"true\"\r\n ></sac-dateselector>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
620
+ }], ctorParameters: function () {
621
+ return [{ type: SacFormLayoutDirective, decorators: [{
622
+ type: Host
623
+ }, {
624
+ type: Optional
625
+ }] }, { type: i0.Injector }, { type: i0.ElementRef }];
626
+ } });
627
+
628
+ class SACBootstrap3DateTimeModule {
629
+ }
630
+ SACBootstrap3DateTimeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DateTimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
631
+ SACBootstrap3DateTimeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DateTimeModule, declarations: [SacDateComponent,
632
+ SacDateTimeComponent,
633
+ SacTimeComponent,
634
+ SacDateSelectorComponent], imports: [CommonModule, IMaskModule, SACBootstrap3LayoutModule], exports: [SacDateComponent,
635
+ SacDateTimeComponent,
636
+ SacTimeComponent,
637
+ SacDateSelectorComponent] });
638
+ SACBootstrap3DateTimeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DateTimeModule, imports: [[CommonModule, IMaskModule, SACBootstrap3LayoutModule]] });
639
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DateTimeModule, decorators: [{
640
+ type: NgModule,
641
+ args: [{
642
+ declarations: [
643
+ SacDateComponent,
644
+ SacDateTimeComponent,
645
+ SacTimeComponent,
646
+ SacDateSelectorComponent,
647
+ ],
648
+ imports: [CommonModule, IMaskModule, SACBootstrap3LayoutModule],
649
+ exports: [
650
+ SacDateComponent,
651
+ SacDateTimeComponent,
652
+ SacTimeComponent,
653
+ SacDateSelectorComponent,
654
+ ],
655
+ }]
656
+ }] });
657
+
658
+ class SacPagingComponent extends SacPagingCommon {
659
+ /**
660
+ * Konstruktor
661
+ */
662
+ constructor(injector) { super(injector); }
663
+ }
664
+ SacPagingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacPagingComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
665
+ SacPagingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacPagingComponent, selector: "sac-paging", providers: [
666
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacPagingComponent },
667
+ { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacPagingComponent) }
668
+ ], usesInheritance: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"pager-nav col-sm-9\" id=\"{{name}}\">\r\n <ul class=\"pagination\" style=\"margin: 10px 0\">\r\n <li\r\n [ngClass]=\"{'aspNetDisabled disabled': activePageIndex === firstPageIndex}\"\r\n >\r\n <a (click)=\"firstPage()\">\u00AB</a>\r\n </li>\r\n <li\r\n *ngFor=\"let page of paginators; let i = index\"\r\n [ngClass]=\"{'active': page === activePageIndex}\"\r\n >\r\n <a (click)=\"changePage(page)\">{{page + 1 }}</a>\r\n </li>\r\n <li\r\n [ngClass]=\"{'aspNetDisabled disabled': activePageIndex === lastPageIndex}\"\r\n >\r\n <a (click)=\"lastPage()\">\u00BB</a>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"col-sm-3 text-right\" style=\"margin: 20px 0\">\r\n Seite {{getCurrentPageNumber()}} von {{getTotalPageNumber()}}\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
669
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacPagingComponent, decorators: [{
670
+ type: Component,
671
+ args: [{ selector: 'sac-paging', providers: [
672
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacPagingComponent },
673
+ { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacPagingComponent) }
674
+ ], template: "<div class=\"row\">\r\n <div class=\"pager-nav col-sm-9\" id=\"{{name}}\">\r\n <ul class=\"pagination\" style=\"margin: 10px 0\">\r\n <li\r\n [ngClass]=\"{'aspNetDisabled disabled': activePageIndex === firstPageIndex}\"\r\n >\r\n <a (click)=\"firstPage()\">\u00AB</a>\r\n </li>\r\n <li\r\n *ngFor=\"let page of paginators; let i = index\"\r\n [ngClass]=\"{'active': page === activePageIndex}\"\r\n >\r\n <a (click)=\"changePage(page)\">{{page + 1 }}</a>\r\n </li>\r\n <li\r\n [ngClass]=\"{'aspNetDisabled disabled': activePageIndex === lastPageIndex}\"\r\n >\r\n <a (click)=\"lastPage()\">\u00BB</a>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"col-sm-3 text-right\" style=\"margin: 20px 0\">\r\n Seite {{getCurrentPageNumber()}} von {{getTotalPageNumber()}}\r\n </div>\r\n</div>\r\n" }]
675
+ }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
676
+
677
+ class SacGridComponent extends SacGridCommon {
678
+ constructor() {
679
+ super(...arguments);
680
+ this.ellipsis = false;
681
+ }
682
+ }
683
+ SacGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
684
+ SacGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacGridComponent, selector: "sac-grid", providers: [
685
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacGridComponent },
686
+ { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacGridComponent) }
687
+ ], queries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<table class=\"table table-striped table-condensed table-hover\" id={{name}}>\r\n <thead>\r\n <tr>\r\n <ng-container *ngTemplateOutlet=\"template; context { row: {}, type: 'header'}\">\r\n </ng-container>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <ng-container *ngFor=\"let item of value; let i=index\">\r\n <tr>\r\n <ng-container *ngTemplateOutlet=\"template; context { row: item, type: 'body'}\">\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n <tr *ngIf=\"value === undefined || value === null || value.length === 0\">\r\n <td [attr.colspan]=\"ColumnCount\">{{emptytext}}</td>\r\n </tr>\r\n <tr>\r\n <td [attr.colspan]=\"ColumnCount\">\r\n <div class=\"container-fluid\">\r\n <sac-paging name=\"{{name}}Paging\" (paging)=\"pageChange($event)\" [pagerdata]=\"pagerdata\" [pagingtext]=\"pagingtext\" [pagesizetext]=\"pagesizetext\"></sac-paging>\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n", components: [{ type: SacPagingComponent, selector: "sac-paging" }], directives: [{ type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
688
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridComponent, decorators: [{
689
+ type: Component,
690
+ args: [{ selector: 'sac-grid', providers: [
691
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacGridComponent },
692
+ { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacGridComponent) }
693
+ ], template: "<table class=\"table table-striped table-condensed table-hover\" id={{name}}>\r\n <thead>\r\n <tr>\r\n <ng-container *ngTemplateOutlet=\"template; context { row: {}, type: 'header'}\">\r\n </ng-container>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <ng-container *ngFor=\"let item of value; let i=index\">\r\n <tr>\r\n <ng-container *ngTemplateOutlet=\"template; context { row: item, type: 'body'}\">\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n <tr *ngIf=\"value === undefined || value === null || value.length === 0\">\r\n <td [attr.colspan]=\"ColumnCount\">{{emptytext}}</td>\r\n </tr>\r\n <tr>\r\n <td [attr.colspan]=\"ColumnCount\">\r\n <div class=\"container-fluid\">\r\n <sac-paging name=\"{{name}}Paging\" (paging)=\"pageChange($event)\" [pagerdata]=\"pagerdata\" [pagingtext]=\"pagingtext\" [pagesizetext]=\"pagesizetext\"></sac-paging>\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n" }]
694
+ }], propDecorators: { template: [{
695
+ type: ContentChild,
696
+ args: [TemplateRef, { static: true }]
697
+ }] } });
698
+
699
+ class SacGridColumnComponent extends SacGridColumnCommon {
700
+ constructor(grid, injector, el) {
701
+ super(grid, injector, el);
702
+ }
703
+ }
704
+ SacGridColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridColumnComponent, deps: [{ token: SacGridComponent }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
705
+ SacGridColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacGridColumnComponent, selector: "sac-gridcolumn", providers: [
706
+ {
707
+ provide: SacGridColumnBaseCommon,
708
+ useExisting: forwardRef(() => SacGridColumnComponent),
709
+ },
710
+ ], usesInheritance: true, ngImport: i0, template: "<th\r\n scope=\"col\"\r\n *ngIf=\"IsHeader()\"\r\n [style.width]=\"width\"\r\n (click)=\"SortByColumn()\"\r\n>\r\n <span>{{header}}</span>\r\n <span\r\n [class]=\"IconSortUp\"\r\n style=\"padding-left: 0.5rem\"\r\n *ngIf=\"IsSortedColumn() && GetSortDirection() ==='asc'\"\r\n ></span>\r\n <span\r\n [class]=\"IconSortDown\"\r\n style=\"padding-left: 0.5rem\"\r\n *ngIf=\"IsSortedColumn() && GetSortDirection() ==='desc'\"\r\n ></span>\r\n</th>\r\n<td\r\n scope=\"col\"\r\n *ngIf=\"IsBody()\"\r\n [style.width]=\"width\"\r\n [class.ellipsis]=\"IsEllipsis()\"\r\n>\r\n <span [attr.title]=\"IsEllipsis() ? value : null\"> {{value}} </span>\r\n</td>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
711
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridColumnComponent, decorators: [{
712
+ type: Component,
713
+ args: [{ selector: 'sac-gridcolumn', providers: [
714
+ {
715
+ provide: SacGridColumnBaseCommon,
716
+ useExisting: forwardRef(() => SacGridColumnComponent),
717
+ },
718
+ ], template: "<th\r\n scope=\"col\"\r\n *ngIf=\"IsHeader()\"\r\n [style.width]=\"width\"\r\n (click)=\"SortByColumn()\"\r\n>\r\n <span>{{header}}</span>\r\n <span\r\n [class]=\"IconSortUp\"\r\n style=\"padding-left: 0.5rem\"\r\n *ngIf=\"IsSortedColumn() && GetSortDirection() ==='asc'\"\r\n ></span>\r\n <span\r\n [class]=\"IconSortDown\"\r\n style=\"padding-left: 0.5rem\"\r\n *ngIf=\"IsSortedColumn() && GetSortDirection() ==='desc'\"\r\n ></span>\r\n</th>\r\n<td\r\n scope=\"col\"\r\n *ngIf=\"IsBody()\"\r\n [style.width]=\"width\"\r\n [class.ellipsis]=\"IsEllipsis()\"\r\n>\r\n <span [attr.title]=\"IsEllipsis() ? value : null\"> {{value}} </span>\r\n</td>\r\n" }]
719
+ }], ctorParameters: function () { return [{ type: SacGridComponent }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
720
+
721
+ /**
722
+ * Grid Action Button
723
+ *
724
+ * @example Standard Action
725
+ *
726
+ * <ngGridButton icon="edit" (clicked)="action('edit')" [isdisabled]="true"></ngGridButton>
727
+ *
728
+ * @example Custom Action
729
+ *
730
+ * <ngGridButton iconstyle="sprite" icon="icon-sprite-base-main_info" (clicked)="action('info')"></ngGridButton>
731
+ *
732
+ */
733
+ class SacGridButtonComponent extends SacGridButtonCommon {
734
+ /**
735
+ * Gibt das Icon für den Button zurück
736
+ */
737
+ getIconClass() {
738
+ let iconset = this.iconstyle;
739
+ let iconcss = this.icon;
740
+ if (iconset === '') {
741
+ switch (this.icon) {
742
+ case 'edit':
743
+ iconset = 'sprite';
744
+ iconcss = 'icon-sprite-base-main_edit';
745
+ break;
746
+ case 'delete':
747
+ iconset = 'sprite';
748
+ iconcss = 'icon-sprite-base-main_delete';
749
+ break;
750
+ }
751
+ }
752
+ if (this._isdisabledvalue) {
753
+ iconcss += '_disabled';
754
+ }
755
+ const result = iconset + ' ' + iconcss;
756
+ return result.trim();
757
+ }
351
758
  }
352
- SACBootstrap3ValidationSummaryModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
353
- SACBootstrap3ValidationSummaryModulemod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, declarations: [SacValidationSummaryComponent], imports: [CommonModule], exports: [SacValidationSummaryComponent] });
354
- SACBootstrap3ValidationSummaryModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, imports: [[
355
- CommonModule
356
- ]] });
357
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, decorators: [{
358
- type: NgModule,
359
- args: [{
360
- declarations: [SacValidationSummaryComponent],
361
- imports: [
362
- CommonModule
363
- ],
364
- exports: [SacValidationSummaryComponent]
365
- }]
759
+ SacGridButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
760
+ SacGridButtonComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacGridButtonComponent, selector: "sac-gridbutton", usesInheritance: true, ngImport: i0, template: "<a (click)=\"callaction()\" style=\"padding-right: 5px;\" [class.disabled]=\"isdisabled\" [attr.disabled]=\"isdisabled ? 'disabled' : null\"><span class=\"{{getIconClass()}}\"></span></a>\r\n" });
761
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridButtonComponent, decorators: [{
762
+ type: Component,
763
+ args: [{ selector: 'sac-gridbutton', template: "<a (click)=\"callaction()\" style=\"padding-right: 5px;\" [class.disabled]=\"isdisabled\" [attr.disabled]=\"isdisabled ? 'disabled' : null\"><span class=\"{{getIconClass()}}\"></span></a>\r\n" }]
366
764
  }] });
367
765
 
368
- class SacTabItemComponent extends SacTabItemCommon {
766
+ class SacGridColumnActionComponent extends SacGridColumnActionCommon {
767
+ constructor(grid, injector, el) {
768
+ super(grid, injector, el);
769
+ this.width = '52px';
770
+ }
369
771
  }
370
- SacTabItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTabItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
371
- SacTabItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTabItemComponent, selector: "sac-tabitem", usesInheritance: true, ngImport: i0, template: "<div [id]=\"id\" [hidden]=\"unloadwhenhidden === false && active === false\"\r\n *ngIf=\"(unloadwhenhidden === true && active === true) || unloadwhenhidden === false\" class=\"tab-pane\">\r\n <ng-template [ngTemplateOutlet]=\"templateRef\"></ng-template>\r\n</div>\r\n\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
372
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTabItemComponent, decorators: [{
772
+ SacGridColumnActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridColumnActionComponent, deps: [{ token: SacGridComponent }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
773
+ SacGridColumnActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacGridColumnActionComponent, selector: "sac-gridcolumnaction", providers: [
774
+ {
775
+ provide: SacGridColumnBaseCommon,
776
+ useExisting: forwardRef(() => SacGridColumnActionComponent),
777
+ },
778
+ ], usesInheritance: true, ngImport: i0, template: "<th scope=\"col\" *ngIf=\"IsHeader()\" [style.width]=\"width\"><span></span></th>\r\n<td scope=\"col\" *ngIf=\"IsBody()\">\r\n <ng-content></ng-content>\r\n</td>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
779
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridColumnActionComponent, decorators: [{
373
780
  type: Component,
374
- args: [{ selector: 'sac-tabitem', template: "<div [id]=\"id\" [hidden]=\"unloadwhenhidden === false && active === false\"\r\n *ngIf=\"(unloadwhenhidden === true && active === true) || unloadwhenhidden === false\" class=\"tab-pane\">\r\n <ng-template [ngTemplateOutlet]=\"templateRef\"></ng-template>\r\n</div>\r\n\r\n" }]
375
- }] });
781
+ args: [{ selector: 'sac-gridcolumnaction', providers: [
782
+ {
783
+ provide: SacGridColumnBaseCommon,
784
+ useExisting: forwardRef(() => SacGridColumnActionComponent),
785
+ },
786
+ ], template: "<th scope=\"col\" *ngIf=\"IsHeader()\" [style.width]=\"width\"><span></span></th>\r\n<td scope=\"col\" *ngIf=\"IsBody()\">\r\n <ng-content></ng-content>\r\n</td>\r\n" }]
787
+ }], ctorParameters: function () { return [{ type: SacGridComponent }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
376
788
 
377
- class SacTabComponent extends SacTabCommon {
378
- tabItems() {
379
- return this._tabItems.toArray();
789
+ class SacGridImageComponent extends SacGridImageCommon {
790
+ getIconClass() {
791
+ switch (this.iconstyle) {
792
+ case 'edit':
793
+ return 'sprite icon-sprite-base-main_edit';
794
+ case 'delete':
795
+ return 'sprite icon-sprite-base-main_delete';
796
+ default:
797
+ return this.iconstyle;
798
+ }
380
799
  }
381
800
  }
382
- SacTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTabComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
383
- SacTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTabComponent, selector: "sac-tab", queries: [{ propertyName: "_tabItems", predicate: SacTabItemComponent }], usesInheritance: true, ngImport: i0, template: "<!-- Nav tabs -->\r\n<div [id]=\"name\" class=\"content-nav-tabs\">\r\n <ul class=\"nav nav-tabs\" role=\"tablist\">\r\n <li\r\n *ngFor=\"let item of _tabItems\"\r\n [ngClass]=\"{ 'active show': item.active, 'disabled': item.disabled }\"\r\n (click)=\"selectTab(item)\"\r\n [ngStyle]=\"{'cursor': item._disabled ? 'not-allowed' : 'pointer'}\"\r\n >\r\n <a [id]=\"GetTabItemButtonId(item._id)\" role=\"tab\">\r\n <ng-template\r\n *ngTemplateOutlet=\"tablabeltemplate || defaultTabLabelTemplate;context:{ label: item.label }\"\r\n >\r\n </ng-template>\r\n </a>\r\n </li>\r\n </ul>\r\n</div>\r\n\r\n<!-- Tab panes -->\r\n<div class=\"tab-content\" style=\"margin-top: 15px\">\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<ng-template #defaultTabLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n", directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
384
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTabComponent, decorators: [{
801
+ SacGridImageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridImageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
802
+ SacGridImageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacGridImageComponent, selector: "sac-gridimage", usesInheritance: true, ngImport: i0, template: "<span style=\"padding-right: 5px;\"><span class=\"{{getIconClass()}}\"></span></span>\r\n" });
803
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridImageComponent, decorators: [{
385
804
  type: Component,
386
- args: [{ selector: 'sac-tab', template: "<!-- Nav tabs -->\r\n<div [id]=\"name\" class=\"content-nav-tabs\">\r\n <ul class=\"nav nav-tabs\" role=\"tablist\">\r\n <li\r\n *ngFor=\"let item of _tabItems\"\r\n [ngClass]=\"{ 'active show': item.active, 'disabled': item.disabled }\"\r\n (click)=\"selectTab(item)\"\r\n [ngStyle]=\"{'cursor': item._disabled ? 'not-allowed' : 'pointer'}\"\r\n >\r\n <a [id]=\"GetTabItemButtonId(item._id)\" role=\"tab\">\r\n <ng-template\r\n *ngTemplateOutlet=\"tablabeltemplate || defaultTabLabelTemplate;context:{ label: item.label }\"\r\n >\r\n </ng-template>\r\n </a>\r\n </li>\r\n </ul>\r\n</div>\r\n\r\n<!-- Tab panes -->\r\n<div class=\"tab-content\" style=\"margin-top: 15px\">\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<ng-template #defaultTabLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n" }]
387
- }], propDecorators: { _tabItems: [{
388
- type: ContentChildren,
389
- args: [SacTabItemComponent]
390
- }] } });
805
+ args: [{ selector: 'sac-gridimage', template: "<span style=\"padding-right: 5px;\"><span class=\"{{getIconClass()}}\"></span></span>\r\n" }]
806
+ }] });
391
807
 
392
- class SACBootstrap3TabsModule {
808
+ class SACBootstrap3GridModule {
393
809
  }
394
- SACBootstrap3TabsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
395
- SACBootstrap3TabsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TabsModule, declarations: [SacTabComponent, SacTabItemComponent], imports: [CommonModule], exports: [SacTabComponent, SacTabItemComponent] });
396
- SACBootstrap3TabsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TabsModule, imports: [[
810
+ SACBootstrap3GridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3GridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
811
+ SACBootstrap3GridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3GridModule, declarations: [SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent], imports: [CommonModule], exports: [SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent] });
812
+ SACBootstrap3GridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3GridModule, imports: [[
397
813
  CommonModule
398
814
  ]] });
399
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TabsModule, decorators: [{
815
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3GridModule, decorators: [{
400
816
  type: NgModule,
401
817
  args: [{
402
- declarations: [SacTabComponent, SacTabItemComponent],
818
+ declarations: [SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent],
403
819
  imports: [
404
820
  CommonModule
405
821
  ],
406
- exports: [SacTabComponent, SacTabItemComponent]
822
+ exports: [SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent]
407
823
  }]
408
824
  }] });
409
825
 
@@ -428,371 +844,816 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
428
844
  */
429
845
  class SacTooltipComponent extends SacTooltipCommon {
430
846
  /**
431
- * Konstrukor
432
- * @param parent SacFormular Instanz
433
- * @param injector Component Injector
847
+ * Konstrukor
848
+ * @param parent SacFormular Instanz
849
+ * @param injector Component Injector
850
+ */
851
+ constructor(cdRef, ref) {
852
+ super(cdRef, ref);
853
+ }
854
+ }
855
+ SacTooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTooltipComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
856
+ SacTooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTooltipComponent, selector: "sac-tooltip", usesInheritance: true, ngImport: i0, template: "<div [style.display]=\"inlinemode ? 'inline' : null\">\r\n <div #container (mouseenter)=\"ShowTooltip()\" (mouseleave)=\"HideTooltip()\" [style.display]=\"inlinemode ? 'inline' : null\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div *ngIf=\"IsTooltipVisible()\" [style.visibility]=\"IsTooltipContentVisible ? 'visible' : 'hidden'\" #tooltip class=\"tooltip in\" style=\"display: block;\"\r\n [style.left.px]=\"LeftPos\" [style.top.px]=\"TopPos\"\r\n [class.top]=\"GetTooltipPosition() === TooltipPosition.top\" [class.left]=\"GetTooltipPosition() === TooltipPosition.left\"\r\n [class.right]=\"GetTooltipPosition() === TooltipPosition.right\" [class.bottom]=\"GetTooltipPosition() === TooltipPosition.bottom\">\r\n <div class=\"tooltip-arrow\" style=\"top: 50%;\"></div>\r\n <div class=\"tooltip-inner\">\r\n {{tooltiptext}}\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
857
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTooltipComponent, decorators: [{
858
+ type: Component,
859
+ args: [{ selector: 'sac-tooltip', template: "<div [style.display]=\"inlinemode ? 'inline' : null\">\r\n <div #container (mouseenter)=\"ShowTooltip()\" (mouseleave)=\"HideTooltip()\" [style.display]=\"inlinemode ? 'inline' : null\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div *ngIf=\"IsTooltipVisible()\" [style.visibility]=\"IsTooltipContentVisible ? 'visible' : 'hidden'\" #tooltip class=\"tooltip in\" style=\"display: block;\"\r\n [style.left.px]=\"LeftPos\" [style.top.px]=\"TopPos\"\r\n [class.top]=\"GetTooltipPosition() === TooltipPosition.top\" [class.left]=\"GetTooltipPosition() === TooltipPosition.left\"\r\n [class.right]=\"GetTooltipPosition() === TooltipPosition.right\" [class.bottom]=\"GetTooltipPosition() === TooltipPosition.bottom\">\r\n <div class=\"tooltip-arrow\" style=\"top: 50%;\"></div>\r\n <div class=\"tooltip-inner\">\r\n {{tooltiptext}}\r\n </div>\r\n </div>\r\n</div>\r\n" }]
860
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; } });
861
+
862
+ class SACBootstrap3TooltipModule {
863
+ }
864
+ SACBootstrap3TooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
865
+ SACBootstrap3TooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TooltipModule, declarations: [SacTooltipComponent], imports: [CommonModule, CommonModule], exports: [SacTooltipComponent] });
866
+ SACBootstrap3TooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TooltipModule, imports: [[
867
+ CommonModule, CommonModule
868
+ ]] });
869
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TooltipModule, decorators: [{
870
+ type: NgModule,
871
+ args: [{
872
+ declarations: [SacTooltipComponent],
873
+ imports: [
874
+ CommonModule, CommonModule
875
+ ],
876
+ exports: [SacTooltipComponent]
877
+ }]
878
+ }] });
879
+
880
+ class SacInputComponent extends SacInputCommon {
881
+ // #region Constructors
882
+ /**
883
+ * Constructor
884
+ * @param formLayout SacFormLayout to define scoped layout settings
885
+ * @param injector Injector for injecting services
886
+ */
887
+ constructor(formLayout, injector) {
888
+ super(formLayout, injector);
889
+ }
890
+ }
891
+ SacInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
892
+ SacInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputComponent, selector: "sac-input", providers: [
893
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputComponent },
894
+ {
895
+ provide: NG_VALIDATORS,
896
+ multi: true,
897
+ useExisting: forwardRef(() => SacInputComponent),
898
+ },
899
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
900
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputComponent, decorators: [{
901
+ type: Component,
902
+ args: [{ selector: 'sac-input', providers: [
903
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputComponent },
904
+ {
905
+ provide: NG_VALIDATORS,
906
+ multi: true,
907
+ useExisting: forwardRef(() => SacInputComponent),
908
+ },
909
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n" }]
910
+ }], ctorParameters: function () {
911
+ return [{ type: SacFormLayoutDirective, decorators: [{
912
+ type: Host
913
+ }, {
914
+ type: Optional
915
+ }] }, { type: i0.Injector }];
916
+ } });
917
+
918
+ /**
919
+ * Komponente für TextArea
920
+ *
921
+ * @example
922
+ *
923
+ * <ngInputArea name="ngInputArea" label="My Label" placeholder='i am input area' [isrequired]="true" customCssClass="myClass1 myClass3"></ngInputArea>
924
+ *
925
+ * @example
926
+ *
927
+ * <ngInputArea name="ngInputArea" label="My Label" height="150px" placeholder='i am input area' [islanguagespecific]="true">
928
+ *
929
+ */
930
+ class SacInputAreaComponent extends SacInputAreaCommon {
931
+ // #region Constructors
932
+ /**
933
+ * Constructor
934
+ * @param formLayout SacFormLayout to define scoped layout settings
935
+ * @param injector Injector for injecting services
936
+ */
937
+ constructor(formLayout, injector) {
938
+ super(formLayout, injector);
939
+ }
940
+ }
941
+ SacInputAreaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputAreaComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
942
+ SacInputAreaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputAreaComponent, selector: "sac-inputarea", providers: [
943
+ {
944
+ provide: NG_VALUE_ACCESSOR,
945
+ multi: true,
946
+ useExisting: SacInputAreaComponent,
947
+ },
948
+ {
949
+ provide: NG_VALIDATORS,
950
+ multi: true,
951
+ useExisting: forwardRef(() => SacInputAreaComponent),
952
+ },
953
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <textarea\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [attr.rows]=\"rows\"\r\n [class.is-invalid]=\"invalid && (dirty || touched)\"\r\n [class.validation-error]=\"invalid && (dirty || touched)\"\r\n [class.required]=\"isrequired\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n ></textarea>\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
954
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputAreaComponent, decorators: [{
955
+ type: Component,
956
+ args: [{ selector: 'sac-inputarea', providers: [
957
+ {
958
+ provide: NG_VALUE_ACCESSOR,
959
+ multi: true,
960
+ useExisting: SacInputAreaComponent,
961
+ },
962
+ {
963
+ provide: NG_VALIDATORS,
964
+ multi: true,
965
+ useExisting: forwardRef(() => SacInputAreaComponent),
966
+ },
967
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <textarea\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [attr.rows]=\"rows\"\r\n [class.is-invalid]=\"invalid && (dirty || touched)\"\r\n [class.validation-error]=\"invalid && (dirty || touched)\"\r\n [class.required]=\"isrequired\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n ></textarea>\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n" }]
968
+ }], ctorParameters: function () {
969
+ return [{ type: SacFormLayoutDirective, decorators: [{
970
+ type: Host
971
+ }, {
972
+ type: Optional
973
+ }] }, { type: i0.Injector }];
974
+ } });
975
+
976
+ class SacInputCurrencyComponent extends SacInputCurrencyCommon {
977
+ // #region Constructors
978
+ /**
979
+ * Constructor
980
+ * @param formLayout SacFormLayout to define scoped layout settings
981
+ * @param injector Injector for injecting services
982
+ */
983
+ constructor(formLayout, injector) {
984
+ super(formLayout, injector);
985
+ }
986
+ }
987
+ SacInputCurrencyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputCurrencyComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
988
+ SacInputCurrencyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputCurrencyComponent, selector: "sac-inputcurrency", providers: [
989
+ {
990
+ provide: NG_VALUE_ACCESSOR,
991
+ multi: true,
992
+ useExisting: SacInputCurrencyComponent,
993
+ },
994
+ {
995
+ provide: NG_VALIDATORS,
996
+ multi: true,
997
+ useExisting: forwardRef(() => SacInputCurrencyComponent),
998
+ },
999
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div class=\"input-group-addon\">CHF</div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
1000
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputCurrencyComponent, decorators: [{
1001
+ type: Component,
1002
+ args: [{ selector: 'sac-inputcurrency', providers: [
1003
+ {
1004
+ provide: NG_VALUE_ACCESSOR,
1005
+ multi: true,
1006
+ useExisting: SacInputCurrencyComponent,
1007
+ },
1008
+ {
1009
+ provide: NG_VALIDATORS,
1010
+ multi: true,
1011
+ useExisting: forwardRef(() => SacInputCurrencyComponent),
1012
+ },
1013
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div class=\"input-group-addon\">CHF</div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n" }]
1014
+ }], ctorParameters: function () {
1015
+ return [{ type: SacFormLayoutDirective, decorators: [{
1016
+ type: Host
1017
+ }, {
1018
+ type: Optional
1019
+ }] }, { type: i0.Injector }];
1020
+ } });
1021
+
1022
+ class SacInputDecimalComponent extends SacInputDecimalCommon {
1023
+ // #region Constructors
1024
+ /**
1025
+ * Constructor
1026
+ * @param formLayout SacFormLayout to define scoped layout settings
1027
+ * @param injector Injector for injecting services
1028
+ */
1029
+ constructor(formLayout, injector) {
1030
+ super(formLayout, injector);
1031
+ }
1032
+ }
1033
+ SacInputDecimalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputDecimalComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
1034
+ SacInputDecimalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputDecimalComponent, selector: "sac-inputdecimal", providers: [
1035
+ {
1036
+ provide: NG_VALUE_ACCESSOR,
1037
+ multi: true,
1038
+ useExisting: SacInputDecimalComponent,
1039
+ },
1040
+ {
1041
+ provide: NG_VALIDATORS,
1042
+ multi: true,
1043
+ useExisting: forwardRef(() => SacInputDecimalComponent),
1044
+ },
1045
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
1046
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputDecimalComponent, decorators: [{
1047
+ type: Component,
1048
+ args: [{ selector: 'sac-inputdecimal', providers: [
1049
+ {
1050
+ provide: NG_VALUE_ACCESSOR,
1051
+ multi: true,
1052
+ useExisting: SacInputDecimalComponent,
1053
+ },
1054
+ {
1055
+ provide: NG_VALIDATORS,
1056
+ multi: true,
1057
+ useExisting: forwardRef(() => SacInputDecimalComponent),
1058
+ },
1059
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n" }]
1060
+ }], ctorParameters: function () {
1061
+ return [{ type: SacFormLayoutDirective, decorators: [{
1062
+ type: Host
1063
+ }, {
1064
+ type: Optional
1065
+ }] }, { type: i0.Injector }];
1066
+ } });
1067
+
1068
+ class SacInputEmailComponent extends SacInputEmailCommon {
1069
+ // #region Constructors
1070
+ /**
1071
+ * Constructor
1072
+ * @param formLayout SacFormLayout to define scoped layout settings
1073
+ * @param injector Injector for injecting services
434
1074
  */
435
- constructor(cdRef, ref) {
436
- super(cdRef, ref);
1075
+ constructor(formLayout, injector) {
1076
+ super(formLayout, injector);
437
1077
  }
438
1078
  }
439
- SacTooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTooltipComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
440
- SacTooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTooltipComponent, selector: "sac-tooltip", usesInheritance: true, ngImport: i0, template: "<div [style.display]=\"inlinemode ? 'inline' : null\">\r\n <div #container (mouseenter)=\"ShowTooltip()\" (mouseleave)=\"HideTooltip()\" [style.display]=\"inlinemode ? 'inline' : null\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div *ngIf=\"IsTooltipVisible()\" [style.visibility]=\"IsTooltipContentVisible ? 'visible' : 'hidden'\" #tooltip class=\"tooltip in\" style=\"display: block;\"\r\n [style.left.px]=\"LeftPos\" [style.top.px]=\"TopPos\"\r\n [class.top]=\"GetTooltipPosition() === TooltipPosition.top\" [class.left]=\"GetTooltipPosition() === TooltipPosition.left\"\r\n [class.right]=\"GetTooltipPosition() === TooltipPosition.right\" [class.bottom]=\"GetTooltipPosition() === TooltipPosition.bottom\">\r\n <div class=\"tooltip-arrow\" style=\"top: 50%;\"></div>\r\n <div class=\"tooltip-inner\">\r\n {{tooltiptext}}\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
441
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTooltipComponent, decorators: [{
1079
+ SacInputEmailComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputEmailComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
1080
+ SacInputEmailComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputEmailComponent, selector: "sac-inputemail", providers: [
1081
+ {
1082
+ provide: NG_VALUE_ACCESSOR,
1083
+ multi: true,
1084
+ useExisting: SacInputEmailComponent,
1085
+ },
1086
+ {
1087
+ provide: NG_VALIDATORS,
1088
+ multi: true,
1089
+ useExisting: forwardRef(() => SacInputEmailComponent),
1090
+ },
1091
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"input-group\">\r\n <div class=\"input-group-addon\">@</div>\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n autocomplete=\"email\"\r\n [attr.maxlength]=\"maxlength\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
1092
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputEmailComponent, decorators: [{
442
1093
  type: Component,
443
- args: [{ selector: 'sac-tooltip', template: "<div [style.display]=\"inlinemode ? 'inline' : null\">\r\n <div #container (mouseenter)=\"ShowTooltip()\" (mouseleave)=\"HideTooltip()\" [style.display]=\"inlinemode ? 'inline' : null\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div *ngIf=\"IsTooltipVisible()\" [style.visibility]=\"IsTooltipContentVisible ? 'visible' : 'hidden'\" #tooltip class=\"tooltip in\" style=\"display: block;\"\r\n [style.left.px]=\"LeftPos\" [style.top.px]=\"TopPos\"\r\n [class.top]=\"GetTooltipPosition() === TooltipPosition.top\" [class.left]=\"GetTooltipPosition() === TooltipPosition.left\"\r\n [class.right]=\"GetTooltipPosition() === TooltipPosition.right\" [class.bottom]=\"GetTooltipPosition() === TooltipPosition.bottom\">\r\n <div class=\"tooltip-arrow\" style=\"top: 50%;\"></div>\r\n <div class=\"tooltip-inner\">\r\n {{tooltiptext}}\r\n </div>\r\n </div>\r\n</div>\r\n" }]
444
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; } });
445
-
446
- class SACBootstrap3TooltipModule {
447
- }
448
- SACBootstrap3TooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
449
- SACBootstrap3TooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TooltipModule, declarations: [SacTooltipComponent], imports: [CommonModule, CommonModule], exports: [SacTooltipComponent] });
450
- SACBootstrap3TooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TooltipModule, imports: [[
451
- CommonModule, CommonModule
452
- ]] });
453
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TooltipModule, decorators: [{
454
- type: NgModule,
455
- args: [{
456
- declarations: [SacTooltipComponent],
457
- imports: [
458
- CommonModule, CommonModule
459
- ],
460
- exports: [SacTooltipComponent]
461
- }]
462
- }] });
1094
+ args: [{ selector: 'sac-inputemail', providers: [
1095
+ {
1096
+ provide: NG_VALUE_ACCESSOR,
1097
+ multi: true,
1098
+ useExisting: SacInputEmailComponent,
1099
+ },
1100
+ {
1101
+ provide: NG_VALIDATORS,
1102
+ multi: true,
1103
+ useExisting: forwardRef(() => SacInputEmailComponent),
1104
+ },
1105
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"input-group\">\r\n <div class=\"input-group-addon\">@</div>\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n autocomplete=\"email\"\r\n [attr.maxlength]=\"maxlength\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n" }]
1106
+ }], ctorParameters: function () {
1107
+ return [{ type: SacFormLayoutDirective, decorators: [{
1108
+ type: Host
1109
+ }, {
1110
+ type: Optional
1111
+ }] }, { type: i0.Injector }];
1112
+ } });
463
1113
 
464
- class SacInputComponent extends SacInputCommon {
465
- constructor(parent, injector) {
466
- super(parent, injector);
1114
+ class SacInputIntegerComponent extends SacInputIntegerCommon {
1115
+ // #region Constructors
1116
+ /**
1117
+ * Constructor
1118
+ * @param formLayout SacFormLayout to define scoped layout settings
1119
+ * @param injector Injector for injecting services
1120
+ */
1121
+ constructor(formLayout, injector) {
1122
+ super(formLayout, injector);
467
1123
  }
468
1124
  }
469
- SacInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
470
- SacInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputComponent, selector: "sac-input", providers: [
471
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputComponent },
472
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputComponent) }
473
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\" [ngClass]=\"{'language-specific': islanguagespecific }\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n </div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe } });
474
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputComponent, decorators: [{
1125
+ SacInputIntegerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputIntegerComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
1126
+ SacInputIntegerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputIntegerComponent, selector: "sac-inputinteger", providers: [
1127
+ {
1128
+ provide: NG_VALUE_ACCESSOR,
1129
+ multi: true,
1130
+ useExisting: SacInputIntegerComponent,
1131
+ },
1132
+ {
1133
+ provide: NG_VALIDATORS,
1134
+ multi: true,
1135
+ useExisting: forwardRef(() => SacInputIntegerComponent),
1136
+ },
1137
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
1138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputIntegerComponent, decorators: [{
475
1139
  type: Component,
476
- args: [{ selector: 'sac-input', providers: [
477
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputComponent },
478
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputComponent) }
479
- ], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\" [ngClass]=\"{'language-specific': islanguagespecific }\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n </div>\r\n" }]
1140
+ args: [{ selector: 'sac-inputinteger', providers: [
1141
+ {
1142
+ provide: NG_VALUE_ACCESSOR,
1143
+ multi: true,
1144
+ useExisting: SacInputIntegerComponent,
1145
+ },
1146
+ {
1147
+ provide: NG_VALIDATORS,
1148
+ multi: true,
1149
+ useExisting: forwardRef(() => SacInputIntegerComponent),
1150
+ },
1151
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n" }]
480
1152
  }], ctorParameters: function () {
481
- return [{ type: SacFormDirective, decorators: [{
1153
+ return [{ type: SacFormLayoutDirective, decorators: [{
482
1154
  type: Host
483
1155
  }, {
484
1156
  type: Optional
485
1157
  }] }, { type: i0.Injector }];
486
1158
  } });
487
1159
 
488
- /**
489
- * Komponente für TextArea
490
- *
491
- * @example
492
- *
493
- * <ngInputArea name="ngInputArea" label="My Label" placeholder='i am input area' [isrequired]="true" customCssClass="myClass1 myClass3"></ngInputArea>
494
- *
495
- * @example
496
- *
497
- * <ngInputArea name="ngInputArea" label="My Label" height="150px" placeholder='i am input area' [islanguagespecific]="true">
498
- *
499
- */
500
- class SacInputAreaComponent extends SacInputAreaCommon {
501
- constructor(parent, injector) {
502
- super(parent, injector);
1160
+ class SacInputPasswordComponent extends SacInputPasswordCommon {
1161
+ // #region Constructors
1162
+ /**
1163
+ * Constructor
1164
+ * @param formLayout SacFormLayout to define scoped layout settings
1165
+ * @param injector Injector for injecting services
1166
+ */
1167
+ constructor(formLayout, injector) {
1168
+ super(formLayout, injector);
503
1169
  }
504
1170
  }
505
- SacInputAreaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputAreaComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
506
- SacInputAreaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputAreaComponent, selector: "sac-inputarea", providers: [
507
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputAreaComponent },
508
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputAreaComponent) }
509
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <textarea id=\"{{name}}\" name=\"{{name}}\" type=\"\" class=\"form-control\" [value]=\"value\" [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\" [attr.rows]=\"rows\"\r\n [class.is-invalid]=\"invalid && (dirty || touched)\"\r\n [class.validation-error]=\"invalid && (dirty || touched)\"\r\n [class.language-specific]=\"islanguagespecific\"\r\n [class.required]=\"isrequired\"\r\n [disabled]=\"isdisabled\" [readonly]=\"readonly\"></textarea>\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe } });
510
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputAreaComponent, decorators: [{
1171
+ SacInputPasswordComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputPasswordComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
1172
+ SacInputPasswordComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputPasswordComponent, selector: "sac-inputpassword", providers: [
1173
+ {
1174
+ provide: NG_VALUE_ACCESSOR,
1175
+ multi: true,
1176
+ useExisting: SacInputPasswordComponent,
1177
+ },
1178
+ {
1179
+ provide: NG_VALIDATORS,
1180
+ multi: true,
1181
+ useExisting: forwardRef(() => SacInputPasswordComponent),
1182
+ },
1183
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n class=\"form-control\"\r\n type=\"password\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\"\r\n autocomplete=\"new-password\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
1184
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputPasswordComponent, decorators: [{
511
1185
  type: Component,
512
- args: [{ selector: 'sac-inputarea', providers: [
513
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputAreaComponent },
514
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputAreaComponent) }
515
- ], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <textarea id=\"{{name}}\" name=\"{{name}}\" type=\"\" class=\"form-control\" [value]=\"value\" [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\" [attr.rows]=\"rows\"\r\n [class.is-invalid]=\"invalid && (dirty || touched)\"\r\n [class.validation-error]=\"invalid && (dirty || touched)\"\r\n [class.language-specific]=\"islanguagespecific\"\r\n [class.required]=\"isrequired\"\r\n [disabled]=\"isdisabled\" [readonly]=\"readonly\"></textarea>\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n\r\n" }]
1186
+ args: [{ selector: 'sac-inputpassword', providers: [
1187
+ {
1188
+ provide: NG_VALUE_ACCESSOR,
1189
+ multi: true,
1190
+ useExisting: SacInputPasswordComponent,
1191
+ },
1192
+ {
1193
+ provide: NG_VALIDATORS,
1194
+ multi: true,
1195
+ useExisting: forwardRef(() => SacInputPasswordComponent),
1196
+ },
1197
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n class=\"form-control\"\r\n type=\"password\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\"\r\n autocomplete=\"new-password\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n" }]
516
1198
  }], ctorParameters: function () {
517
- return [{ type: SacFormDirective, decorators: [{
1199
+ return [{ type: SacFormLayoutDirective, decorators: [{
518
1200
  type: Host
519
1201
  }, {
520
1202
  type: Optional
521
1203
  }] }, { type: i0.Injector }];
522
1204
  } });
523
1205
 
524
- class SacInputCurrencyComponent extends SacInputCurrencyCommon {
525
- constructor(parent, injector) {
526
- super(parent, injector);
1206
+ class SacInputSearchComponent extends SacInputSearchCommon {
1207
+ // #region Constructors
1208
+ /**
1209
+ * Constructor
1210
+ * @param formLayout SacFormLayout to define scoped layout settings
1211
+ * @param injector Injector for injecting services
1212
+ */
1213
+ constructor(formLayout, injector) {
1214
+ super(formLayout, injector);
527
1215
  }
528
1216
  }
529
- SacInputCurrencyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputCurrencyComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
530
- SacInputCurrencyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputCurrencyComponent, selector: "sac-inputcurrency", providers: [
531
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputCurrencyComponent },
532
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputCurrencyComponent) }
533
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <div class=\"input-group\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"input-group-addon\">CHF</div>\r\n </div>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe } });
534
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputCurrencyComponent, decorators: [{
1217
+ SacInputSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputSearchComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
1218
+ SacInputSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputSearchComponent, selector: "sac-inputsearch", providers: [
1219
+ {
1220
+ provide: NG_VALUE_ACCESSOR,
1221
+ multi: true,
1222
+ useExisting: SacInputSearchComponent,
1223
+ },
1224
+ {
1225
+ provide: NG_VALIDATORS,
1226
+ multi: true,
1227
+ useExisting: forwardRef(() => SacInputSearchComponent),
1228
+ },
1229
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <input\r\n type=\"submit\"\r\n class=\"btn btn-default\"\r\n id=\"{{name}}_search\"\r\n (click)=\"searchClick()\"\r\n [value]=\"buttontext\"\r\n />\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe } });
1230
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputSearchComponent, decorators: [{
535
1231
  type: Component,
536
- args: [{ selector: 'sac-inputcurrency', providers: [
537
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputCurrencyComponent },
538
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputCurrencyComponent) }
539
- ], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <div class=\"input-group\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"input-group-addon\">CHF</div>\r\n </div>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n" }]
1232
+ args: [{ selector: 'sac-inputsearch', providers: [
1233
+ {
1234
+ provide: NG_VALUE_ACCESSOR,
1235
+ multi: true,
1236
+ useExisting: SacInputSearchComponent,
1237
+ },
1238
+ {
1239
+ provide: NG_VALIDATORS,
1240
+ multi: true,
1241
+ useExisting: forwardRef(() => SacInputSearchComponent),
1242
+ },
1243
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <input\r\n type=\"submit\"\r\n class=\"btn btn-default\"\r\n id=\"{{name}}_search\"\r\n (click)=\"searchClick()\"\r\n [value]=\"buttontext\"\r\n />\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
540
1244
  }], ctorParameters: function () {
541
- return [{ type: SacFormDirective, decorators: [{
1245
+ return [{ type: SacFormLayoutDirective, decorators: [{
542
1246
  type: Host
543
1247
  }, {
544
1248
  type: Optional
545
1249
  }] }, { type: i0.Injector }];
546
1250
  } });
547
1251
 
548
- class SacInputDecimalComponent extends SacInputDecimalCommon {
549
- constructor(parent, injector) {
550
- super(parent, injector);
1252
+ class SACBootstrap3InputModule {
1253
+ }
1254
+ SACBootstrap3InputModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3InputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1255
+ SACBootstrap3InputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3InputModule, declarations: [SacInputComponent,
1256
+ SacInputAreaComponent,
1257
+ SacInputCurrencyComponent,
1258
+ SacInputDecimalComponent,
1259
+ SacInputEmailComponent,
1260
+ SacInputIntegerComponent,
1261
+ SacInputPasswordComponent,
1262
+ SacInputSearchComponent], imports: [CommonModule,
1263
+ CommonModule,
1264
+ FormsModule,
1265
+ SACBootstrap3TooltipModule,
1266
+ SACBootstrap3LayoutModule], exports: [SacInputComponent,
1267
+ SacInputAreaComponent,
1268
+ SacInputCurrencyComponent,
1269
+ SacInputDecimalComponent,
1270
+ SacInputEmailComponent,
1271
+ SacInputIntegerComponent,
1272
+ SacInputPasswordComponent,
1273
+ SacInputSearchComponent] });
1274
+ SACBootstrap3InputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3InputModule, imports: [[
1275
+ CommonModule,
1276
+ CommonModule,
1277
+ FormsModule,
1278
+ SACBootstrap3TooltipModule,
1279
+ SACBootstrap3LayoutModule,
1280
+ ]] });
1281
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3InputModule, decorators: [{
1282
+ type: NgModule,
1283
+ args: [{
1284
+ declarations: [
1285
+ SacInputComponent,
1286
+ SacInputAreaComponent,
1287
+ SacInputCurrencyComponent,
1288
+ SacInputDecimalComponent,
1289
+ SacInputEmailComponent,
1290
+ SacInputIntegerComponent,
1291
+ SacInputPasswordComponent,
1292
+ SacInputSearchComponent,
1293
+ ],
1294
+ imports: [
1295
+ CommonModule,
1296
+ CommonModule,
1297
+ FormsModule,
1298
+ SACBootstrap3TooltipModule,
1299
+ SACBootstrap3LayoutModule,
1300
+ ],
1301
+ exports: [
1302
+ SacInputComponent,
1303
+ SacInputAreaComponent,
1304
+ SacInputCurrencyComponent,
1305
+ SacInputDecimalComponent,
1306
+ SacInputEmailComponent,
1307
+ SacInputIntegerComponent,
1308
+ SacInputPasswordComponent,
1309
+ SacInputSearchComponent,
1310
+ ],
1311
+ }]
1312
+ }] });
1313
+
1314
+ // #region Classes
1315
+ class SacDropdownComponent extends SacDropdownCommon {
1316
+ // #region Constructors
1317
+ /**
1318
+ * Constructor
1319
+ * @param formLayout SacFormLayout to define scoped layout settings
1320
+ * @param injector Injector for injecting services
1321
+ * @param renderer Angular rendering engine
1322
+ * @param elementRef Reference to html dom element
1323
+ */
1324
+ constructor(formLayout, injector, renderer, elementRef) {
1325
+ super(formLayout, injector, renderer, elementRef);
551
1326
  }
552
1327
  }
553
- SacInputDecimalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputDecimalComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
554
- SacInputDecimalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputDecimalComponent, selector: "sac-inputdecimal", providers: [
555
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputDecimalComponent },
556
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputDecimalComponent) }
557
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe } });
558
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputDecimalComponent, decorators: [{
1328
+ SacDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDropdownComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
1329
+ SacDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacDropdownComponent, selector: "sac-dropdown", providers: [
1330
+ {
1331
+ provide: NG_VALUE_ACCESSOR,
1332
+ multi: true,
1333
+ useExisting: SacDropdownComponent,
1334
+ },
1335
+ {
1336
+ provide: NG_VALIDATORS,
1337
+ multi: true,
1338
+ useExisting: forwardRef(() => SacDropdownComponent),
1339
+ },
1340
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <select\r\n #dropdownitem\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n class=\"form-control\"\r\n (blur)=\"onTouch()\"\r\n (change)=\"setValue(dropdownitem.value)\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <option *ngIf=\"emptylabel !== ''\" [ngValue]=\"emptyvalue\">\r\n {{emptylabel}}\r\n </option>\r\n\r\n <ng-content></ng-content>\r\n\r\n <ng-container *ngIf=\"groupitems === ''\">\r\n <option\r\n *ngFor=\"let item of options\"\r\n [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\"\r\n >\r\n <ng-template\r\n *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\"\r\n >\r\n </ng-template>\r\n </option>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"groupitems !== ''\">\r\n <optgroup\r\n *ngFor=\"let group of options\"\r\n [attr.label]=\"group[grouplabel]\"\r\n >\r\n <option\r\n *ngFor=\"let item of group[groupitems]\"\r\n [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\"\r\n >\r\n <ng-template\r\n *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\"\r\n >\r\n </ng-template>\r\n </option>\r\n </optgroup>\r\n </ng-container>\r\n </select>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultItemLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n", directives: [{ type: i0.forwardRef(function () { return i2.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i0.forwardRef(function () { return i3.NgSelectOption; }), selector: "option", inputs: ["ngValue", "value"] }, { type: i0.forwardRef(function () { return i3.ɵNgSelectMultipleOption; }), selector: "option", inputs: ["ngValue", "value"] }, { type: i0.forwardRef(function () { return SacDropdownOptionDirective; }), selector: "option,[sacOption]" }, { type: i0.forwardRef(function () { return i2.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i0.forwardRef(function () { return i2.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "toLabelWidthCss": i0.forwardRef(function () { return SacToLabelWidthCssPipe; }), "toControlWidthCss": i0.forwardRef(function () { return SacToControlWidthCssPipe; }), "async": i0.forwardRef(function () { return i2.AsyncPipe; }) } });
1341
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDropdownComponent, decorators: [{
559
1342
  type: Component,
560
- args: [{ selector: 'sac-inputdecimal', providers: [
561
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputDecimalComponent },
562
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputDecimalComponent) }
563
- ], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n" }]
1343
+ args: [{ selector: 'sac-dropdown', providers: [
1344
+ {
1345
+ provide: NG_VALUE_ACCESSOR,
1346
+ multi: true,
1347
+ useExisting: SacDropdownComponent,
1348
+ },
1349
+ {
1350
+ provide: NG_VALIDATORS,
1351
+ multi: true,
1352
+ useExisting: forwardRef(() => SacDropdownComponent),
1353
+ },
1354
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <select\r\n #dropdownitem\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n class=\"form-control\"\r\n (blur)=\"onTouch()\"\r\n (change)=\"setValue(dropdownitem.value)\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <option *ngIf=\"emptylabel !== ''\" [ngValue]=\"emptyvalue\">\r\n {{emptylabel}}\r\n </option>\r\n\r\n <ng-content></ng-content>\r\n\r\n <ng-container *ngIf=\"groupitems === ''\">\r\n <option\r\n *ngFor=\"let item of options\"\r\n [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\"\r\n >\r\n <ng-template\r\n *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\"\r\n >\r\n </ng-template>\r\n </option>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"groupitems !== ''\">\r\n <optgroup\r\n *ngFor=\"let group of options\"\r\n [attr.label]=\"group[grouplabel]\"\r\n >\r\n <option\r\n *ngFor=\"let item of group[groupitems]\"\r\n [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\"\r\n >\r\n <ng-template\r\n *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\"\r\n >\r\n </ng-template>\r\n </option>\r\n </optgroup>\r\n </ng-container>\r\n </select>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultItemLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n" }]
564
1355
  }], ctorParameters: function () {
565
- return [{ type: SacFormDirective, decorators: [{
1356
+ return [{ type: SacFormLayoutDirective, decorators: [{
566
1357
  type: Host
567
1358
  }, {
568
1359
  type: Optional
569
- }] }, { type: i0.Injector }];
1360
+ }] }, { type: i0.Injector }, { type: i0.Renderer2 }, { type: i0.ElementRef }];
1361
+ } });
1362
+ class SacDropdownOptionDirective extends SacDropdownOptionCommon {
1363
+ // #region Constructors
1364
+ /**
1365
+ * Konstruktor
1366
+ * @param elementRef Referenz auf HTML DOM Element
1367
+ * @param renderer Angular Rendering Engine
1368
+ * @param dropdownList Referenz auf DropDown Komponente
1369
+ */
1370
+ constructor(elementRef, renderer, dropdownList) {
1371
+ super(elementRef, renderer, dropdownList);
1372
+ }
1373
+ }
1374
+ SacDropdownOptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDropdownOptionDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: SacDropdownComponent, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1375
+ SacDropdownOptionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.7", type: SacDropdownOptionDirective, selector: "option,[sacOption]", usesInheritance: true, ngImport: i0 });
1376
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDropdownOptionDirective, decorators: [{
1377
+ type: Directive,
1378
+ args: [{ selector: 'option,[sacOption]' }]
1379
+ }], ctorParameters: function () {
1380
+ return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: SacDropdownComponent, decorators: [{
1381
+ type: Optional
1382
+ }, {
1383
+ type: Host
1384
+ }] }];
570
1385
  } });
571
1386
 
572
- class SacInputEmailComponent extends SacInputEmailCommon {
573
- constructor(parent, injector) {
574
- super(parent, injector);
1387
+ class SacListboxComponent extends SacListboxCommon {
1388
+ // #region Constructors
1389
+ /**
1390
+ * Constructor
1391
+ * @param formLayout SacFormLayout to define scoped layout settings
1392
+ * @param injector Injector for injecting services
1393
+ */
1394
+ constructor(formLayout, injector) {
1395
+ super(formLayout, injector);
575
1396
  }
576
1397
  }
577
- SacInputEmailComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputEmailComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
578
- SacInputEmailComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputEmailComponent, selector: "sac-inputemail", providers: [
579
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputEmailComponent },
580
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputEmailComponent) }
581
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <div class=\"input-group\">\r\n <div class=\"input-group-addon\">@</div>\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n autocomplete=\"email\" [attr.maxlength]=\"maxlength\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n </div>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe } });
582
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputEmailComponent, decorators: [{
1398
+ SacListboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacListboxComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
1399
+ SacListboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacListboxComponent, selector: "sac-listbox", providers: [
1400
+ {
1401
+ provide: NG_VALUE_ACCESSOR,
1402
+ multi: true,
1403
+ useExisting: SacListboxComponent,
1404
+ },
1405
+ {
1406
+ provide: NG_VALIDATORS,
1407
+ multi: true,
1408
+ useExisting: forwardRef(() => SacListboxComponent),
1409
+ },
1410
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <select\r\n multiple\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n class=\"form-control\"\r\n [size]=\"rowsize\"\r\n (blur)=\"onTouch()\"\r\n (change)=\"getSelectedItems($event.target)\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <ng-content></ng-content>\r\n <ng-container *ngIf=\"groupitems === ''\">\r\n <option\r\n *ngFor=\"let option of options\"\r\n [value]=\"option[optionvalue]\"\r\n [disabled]=\"optionenabled !== '' && option[optionenabled] === false\"\r\n >\r\n <ng-template\r\n *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: option[optionlabel] }\"\r\n >\r\n </ng-template>\r\n </option>\r\n </ng-container>\r\n <ng-container *ngIf=\"groupitems !== ''\">\r\n <optgroup\r\n *ngFor=\"let option of options\"\r\n [attr.label]=\"option[grouplabel]\"\r\n >\r\n <option\r\n *ngFor=\"let item of option[groupitems]\"\r\n [value]=\"item[optionvalue]\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\"\r\n >\r\n <ng-template\r\n *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel] }\"\r\n >\r\n </ng-template>\r\n </option>\r\n </optgroup>\r\n </ng-container>\r\n </select>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultItemLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { type: SacDropdownOptionDirective, selector: "option,[sacOption]" }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
1411
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacListboxComponent, decorators: [{
583
1412
  type: Component,
584
- args: [{ selector: 'sac-inputemail', providers: [
585
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputEmailComponent },
586
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputEmailComponent) }
587
- ], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <div class=\"input-group\">\r\n <div class=\"input-group-addon\">@</div>\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n autocomplete=\"email\" [attr.maxlength]=\"maxlength\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n </div>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n" }]
1413
+ args: [{ selector: 'sac-listbox', providers: [
1414
+ {
1415
+ provide: NG_VALUE_ACCESSOR,
1416
+ multi: true,
1417
+ useExisting: SacListboxComponent,
1418
+ },
1419
+ {
1420
+ provide: NG_VALIDATORS,
1421
+ multi: true,
1422
+ useExisting: forwardRef(() => SacListboxComponent),
1423
+ },
1424
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <select\r\n multiple\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n class=\"form-control\"\r\n [size]=\"rowsize\"\r\n (blur)=\"onTouch()\"\r\n (change)=\"getSelectedItems($event.target)\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <ng-content></ng-content>\r\n <ng-container *ngIf=\"groupitems === ''\">\r\n <option\r\n *ngFor=\"let option of options\"\r\n [value]=\"option[optionvalue]\"\r\n [disabled]=\"optionenabled !== '' && option[optionenabled] === false\"\r\n >\r\n <ng-template\r\n *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: option[optionlabel] }\"\r\n >\r\n </ng-template>\r\n </option>\r\n </ng-container>\r\n <ng-container *ngIf=\"groupitems !== ''\">\r\n <optgroup\r\n *ngFor=\"let option of options\"\r\n [attr.label]=\"option[grouplabel]\"\r\n >\r\n <option\r\n *ngFor=\"let item of option[groupitems]\"\r\n [value]=\"item[optionvalue]\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\"\r\n >\r\n <ng-template\r\n *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel] }\"\r\n >\r\n </ng-template>\r\n </option>\r\n </optgroup>\r\n </ng-container>\r\n </select>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultItemLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n" }]
588
1425
  }], ctorParameters: function () {
589
- return [{ type: SacFormDirective, decorators: [{
1426
+ return [{ type: SacFormLayoutDirective, decorators: [{
590
1427
  type: Host
591
1428
  }, {
592
1429
  type: Optional
593
1430
  }] }, { type: i0.Injector }];
594
1431
  } });
595
1432
 
596
- class SacInputIntegerComponent extends SacInputIntegerCommon {
597
- constructor(parent, injector) {
598
- super(parent, injector);
599
- }
1433
+ class SACBootstrap3ListModule {
600
1434
  }
601
- SacInputIntegerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputIntegerComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
602
- SacInputIntegerComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputIntegerComponent, selector: "sac-inputinteger", providers: [
603
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputIntegerComponent },
604
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputIntegerComponent) }
605
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\" [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\" (keypress)=\"onKeyPress($event)\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe } });
606
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputIntegerComponent, decorators: [{
607
- type: Component,
608
- args: [{ selector: 'sac-inputinteger', providers: [
609
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputIntegerComponent },
610
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputIntegerComponent) }
611
- ], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\" [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\" (keypress)=\"onKeyPress($event)\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n" }]
612
- }], ctorParameters: function () {
613
- return [{ type: SacFormDirective, decorators: [{
614
- type: Host
615
- }, {
616
- type: Optional
617
- }] }, { type: i0.Injector }];
618
- } });
1435
+ SACBootstrap3ListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1436
+ SACBootstrap3ListModulemod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ListModule, declarations: [SacDropdownComponent,
1437
+ SacDropdownOptionDirective,
1438
+ SacListboxComponent], imports: [CommonModule,
1439
+ SACCommonListboxOptionModule,
1440
+ FormsModule,
1441
+ SACBootstrap3LayoutModule], exports: [SacDropdownComponent,
1442
+ SacDropdownOptionDirective,
1443
+ SacListboxComponent] });
1444
+ SACBootstrap3ListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ListModule, imports: [[
1445
+ CommonModule,
1446
+ SACCommonListboxOptionModule,
1447
+ FormsModule,
1448
+ SACBootstrap3LayoutModule,
1449
+ ]] });
1450
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ListModule, decorators: [{
1451
+ type: NgModule,
1452
+ args: [{
1453
+ declarations: [
1454
+ SacDropdownComponent,
1455
+ SacDropdownOptionDirective,
1456
+ SacListboxComponent,
1457
+ ],
1458
+ imports: [
1459
+ CommonModule,
1460
+ SACCommonListboxOptionModule,
1461
+ FormsModule,
1462
+ SACBootstrap3LayoutModule,
1463
+ ],
1464
+ exports: [
1465
+ SacDropdownComponent,
1466
+ SacDropdownOptionDirective,
1467
+ SacListboxComponent,
1468
+ ],
1469
+ }]
1470
+ }] });
619
1471
 
620
- class SacInputPasswordComponent extends SacInputPasswordCommon {
621
- constructor(parent, injector) {
622
- super(parent, injector);
1472
+ /**
1473
+ * Component für einbindung eines beliebigen Controls in die Form Struktur
1474
+ *
1475
+ * @example
1476
+ * <ngStaticFormContainer name='myformcontainer' label="My Custom Form Control" [isrequired]='false'>
1477
+ * <input type="range" class="form-control" />
1478
+ * </ngStaticFormContainer>
1479
+ *
1480
+ * @example
1481
+ * <ngStaticFormContainer name='myformcintainer' label="My Custom Form Control" [isrequired]='false' tooltiptext="Dies ist ein Tooltip Text">
1482
+ * <input type="range" class="form-control" />
1483
+ * </ngStaticFormContainer>
1484
+ *
1485
+ **/
1486
+ class SacStaticFormContainerComponent extends SacStaticFormContainerCommon {
1487
+ // #region Constructors
1488
+ /**
1489
+ * Constructor
1490
+ * @param formLayout SacFormLayout to define scoped layout settings
1491
+ * @param injector Injector for injecting services
1492
+ */
1493
+ constructor(formLayout, injector) {
1494
+ super(formLayout, injector);
623
1495
  }
624
1496
  }
625
- SacInputPasswordComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputPasswordComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
626
- SacInputPasswordComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputPasswordComponent, selector: "sac-inputpassword", providers: [
627
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputPasswordComponent },
628
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputPasswordComponent) }
629
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" class=\"form-control\" type=\"password\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\" autocomplete=\"new-password\" [ngClass]=\"{'language-specific': islanguagespecific }\"\r\n [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe } });
630
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputPasswordComponent, decorators: [{
1497
+ SacStaticFormContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacStaticFormContainerComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
1498
+ SacStaticFormContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacStaticFormContainerComponent, selector: "sac-staticformcontainer", providers: [
1499
+ {
1500
+ provide: NG_VALUE_ACCESSOR,
1501
+ multi: true,
1502
+ useExisting: SacStaticFormContainerComponent,
1503
+ },
1504
+ {
1505
+ provide: NG_VALIDATORS,
1506
+ multi: true,
1507
+ useExisting: forwardRef(() => SacStaticFormContainerComponent),
1508
+ },
1509
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <ng-content></ng-content>\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
1510
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacStaticFormContainerComponent, decorators: [{
631
1511
  type: Component,
632
- args: [{ selector: 'sac-inputpassword', providers: [
633
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputPasswordComponent },
634
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputPasswordComponent) }
635
- ], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" class=\"form-control\" type=\"password\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\" autocomplete=\"new-password\" [ngClass]=\"{'language-specific': islanguagespecific }\"\r\n [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n" }]
1512
+ args: [{ selector: 'sac-staticformcontainer', providers: [
1513
+ {
1514
+ provide: NG_VALUE_ACCESSOR,
1515
+ multi: true,
1516
+ useExisting: SacStaticFormContainerComponent,
1517
+ },
1518
+ {
1519
+ provide: NG_VALIDATORS,
1520
+ multi: true,
1521
+ useExisting: forwardRef(() => SacStaticFormContainerComponent),
1522
+ },
1523
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <ng-content></ng-content>\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n" }]
636
1524
  }], ctorParameters: function () {
637
- return [{ type: SacFormDirective, decorators: [{
1525
+ return [{ type: SacFormLayoutDirective, decorators: [{
638
1526
  type: Host
639
1527
  }, {
640
1528
  type: Optional
641
1529
  }] }, { type: i0.Injector }];
642
1530
  } });
643
1531
 
644
- class SacInputSearchComponent extends SacInputSearchCommon {
645
- constructor(parent, injector) {
646
- super(parent, injector);
1532
+ class SacStaticLabelComponent extends SacStaticLabelCommon {
1533
+ // #region Constructors
1534
+ /**
1535
+ * Constructor
1536
+ * @param formLayout SacFormLayout to define scoped layout settings
1537
+ * @param injector Injector for injecting services
1538
+ */
1539
+ constructor(formLayout, injector) {
1540
+ super(formLayout, injector);
647
1541
  }
648
1542
  }
649
- SacInputSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputSearchComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
650
- SacInputSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacInputSearchComponent, selector: "sac-inputsearch", providers: [
651
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputSearchComponent },
652
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputSearchComponent) }
653
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <div class=\"input-group\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\" [ngClass]=\"{'language-specific': islanguagespecific }\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <span class=\"input-group-btn\">\r\n <input type=\"submit\" class=\"btn btn-default\" id=\"{{name}}_search\" (click)=\"searchClick()\" [value]=\"buttontext\" />\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
654
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacInputSearchComponent, decorators: [{
1543
+ SacStaticLabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacStaticLabelComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
1544
+ SacStaticLabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacStaticLabelComponent, selector: "sac-staticlabel", providers: [
1545
+ {
1546
+ provide: NG_VALUE_ACCESSOR,
1547
+ multi: true,
1548
+ useExisting: SacStaticLabelComponent,
1549
+ },
1550
+ {
1551
+ provide: NG_VALIDATORS,
1552
+ multi: true,
1553
+ useExisting: forwardRef(() => SacStaticLabelComponent),
1554
+ },
1555
+ ], usesInheritance: true, ngImport: i0, template: "<div class=\"row form-group\">\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"form-control-static\" [innerHTML]=\"value\"></div>\r\n <label\r\n for=\"{{name}}\"\r\n class=\"col-left control-label\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe } });
1556
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacStaticLabelComponent, decorators: [{
655
1557
  type: Component,
656
- args: [{ selector: 'sac-inputsearch', providers: [
657
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputSearchComponent },
658
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputSearchComponent) }
659
- ], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <div class=\"input-group\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\" [ngClass]=\"{'language-specific': islanguagespecific }\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <span class=\"input-group-btn\">\r\n <input type=\"submit\" class=\"btn btn-default\" id=\"{{name}}_search\" (click)=\"searchClick()\" [value]=\"buttontext\" />\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
1558
+ args: [{ selector: 'sac-staticlabel', providers: [
1559
+ {
1560
+ provide: NG_VALUE_ACCESSOR,
1561
+ multi: true,
1562
+ useExisting: SacStaticLabelComponent,
1563
+ },
1564
+ {
1565
+ provide: NG_VALIDATORS,
1566
+ multi: true,
1567
+ useExisting: forwardRef(() => SacStaticLabelComponent),
1568
+ },
1569
+ ], template: "<div class=\"row form-group\">\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"form-control-static\" [innerHTML]=\"value\"></div>\r\n <label\r\n for=\"{{name}}\"\r\n class=\"col-left control-label\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n </div>\r\n</div>\r\n" }]
660
1570
  }], ctorParameters: function () {
661
- return [{ type: SacFormDirective, decorators: [{
1571
+ return [{ type: SacFormLayoutDirective, decorators: [{
662
1572
  type: Host
663
1573
  }, {
664
1574
  type: Optional
665
1575
  }] }, { type: i0.Injector }];
666
1576
  } });
667
1577
 
668
- class SACBootstrap3InputModule {
1578
+ class SACBootstrap3StaticLabelModule {
669
1579
  }
670
- SACBootstrap3InputModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3InputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
671
- SACBootstrap3InputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3InputModule, declarations: [SacInputComponent, SacInputAreaComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent], imports: [CommonModule, CommonModule, FormsModule, SACBootstrap3TooltipModule], exports: [SacInputComponent, SacInputAreaComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent] });
672
- SACBootstrap3InputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3InputModule, imports: [[
673
- CommonModule, CommonModule, FormsModule, SACBootstrap3TooltipModule
1580
+ SACBootstrap3StaticLabelModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3StaticLabelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1581
+ SACBootstrap3StaticLabelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3StaticLabelModule, declarations: [SacStaticLabelComponent, SacStaticFormContainerComponent], imports: [CommonModule,
1582
+ SACBootstrap3TooltipModule,
1583
+ SACBootstrap3LayoutModule], exports: [SacStaticLabelComponent, SacStaticFormContainerComponent] });
1584
+ SACBootstrap3StaticLabelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3StaticLabelModule, imports: [[
1585
+ CommonModule,
1586
+ SACBootstrap3TooltipModule,
1587
+ SACBootstrap3LayoutModule,
674
1588
  ]] });
675
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3InputModule, decorators: [{
1589
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3StaticLabelModule, decorators: [{
676
1590
  type: NgModule,
677
1591
  args: [{
678
- declarations: [SacInputComponent, SacInputAreaComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent],
1592
+ declarations: [SacStaticLabelComponent, SacStaticFormContainerComponent],
679
1593
  imports: [
680
- CommonModule, CommonModule, FormsModule, SACBootstrap3TooltipModule
1594
+ CommonModule,
1595
+ SACBootstrap3TooltipModule,
1596
+ SACBootstrap3LayoutModule,
681
1597
  ],
682
- exports: [SacInputComponent, SacInputAreaComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent]
1598
+ exports: [SacStaticLabelComponent, SacStaticFormContainerComponent],
683
1599
  }]
684
1600
  }] });
685
1601
 
686
- class SacDateSelectorComponent extends SacDateSelectorCommon {
1602
+ class SacTabItemComponent extends SacTabItemCommon {
687
1603
  }
688
- SacDateSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDateSelectorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
689
- SacDateSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacDateSelectorComponent, selector: "sac-dateselector", usesInheritance: true, ngImport: i0, template: "<div class=\"calendar-selector\" style=\"min-width: 265px\">\r\n <table class=\"table-condensed\" style=\"width: 100%\" *ngIf=\"dateselection\">\r\n <thead>\r\n <tr>\r\n <th class=\"prev text-left\" (click)=\"monthBack()\">\r\n <i [class]=\"iconMonthPrev\"></i>\r\n </th>\r\n <th colspan=\"5\" class=\"switch text-center\">{{month+1}}/{{year}}</th>\r\n <th class=\"next text-right\" (click)=\"monthNext()\">\r\n <i [class]=\"iconMonthNext\"></i>\r\n </th>\r\n </tr>\r\n <tr>\r\n <th class=\"dow text-center\">Mo</th>\r\n <th class=\"dow text-center\">Di</th>\r\n <th class=\"dow text-center\">Mi</th>\r\n <th class=\"dow text-center\">Do</th>\r\n <th class=\"dow text-center\">Fr</th>\r\n <th class=\"dow text-center\">Sa</th>\r\n <th class=\"dow text-center\">So</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <ng-container *ngFor=\"let week of dates; let i=index\">\r\n <tr>\r\n <td\r\n class=\"text-center\"\r\n *ngFor=\"let item of week\"\r\n [ngStyle]=\"{'cursor': item.isenabled ? 'pointer' : null}\"\r\n [ngClass]=\"{'day-current': item.iscurrent, 'day-selected': item.isselected, 'day-new': item.isnew, 'day-disabled': !item.isenabled}\"\r\n (click)=\"selectDate(item)\"\r\n >\r\n {{ item.displaytext }}\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </tbody>\r\n </table>\r\n <div class=\"container-fluid\" *ngIf=\"timeselection\" style=\"margin-top: 10px\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6\" style=\"padding-right: 20px\">\r\n <div class=\"form-group\">\r\n <label>Stunde</label>\r\n <input\r\n type=\"number\"\r\n class=\"form-control\"\r\n [value]=\"getHours()\"\r\n (input)=\"setHours($event.target.value)\"\r\n min=\"0\"\r\n max=\"23\"\r\n />\r\n </div>\r\n </div>\r\n <div class=\"col-md-6\" style=\"padding-left: 20px\">\r\n <div class=\"form-group\">\r\n <label>Minute</label>\r\n <input\r\n type=\"number\"\r\n class=\"form-control\"\r\n [value]=\"getMinutes()\"\r\n (input)=\"setMinutes($event.target.value)\"\r\n min=\"0\"\r\n max=\"59\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" style=\"margin-top: 10px\">\r\n <div class=\"col-md-4 text-left\">\r\n <button type=\"button\" class=\"btn btn-default\" (click)=\"setToday()\">\r\n Heute\r\n </button>\r\n </div>\r\n <div class=\"col-md-8 text-right\">\r\n <button type=\"button\" class=\"btn btn-default\" (click)=\"resetSelection()\">\r\n Reset\r\n </button>\r\n <button\r\n type=\"button\"\r\n class=\"btn btn-primary\"\r\n style=\"margin-left: 10px\"\r\n (click)=\"applySelection()\"\r\n >\r\n Apply\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
690
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDateSelectorComponent, decorators: [{
1604
+ SacTabItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTabItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1605
+ SacTabItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTabItemComponent, selector: "sac-tabitem", usesInheritance: true, ngImport: i0, template: "<div [id]=\"id\" [hidden]=\"unloadwhenhidden === false && active === false\"\r\n *ngIf=\"(unloadwhenhidden === true && active === true) || unloadwhenhidden === false\" class=\"tab-pane\">\r\n <ng-template [ngTemplateOutlet]=\"templateRef\"></ng-template>\r\n</div>\r\n\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
1606
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTabItemComponent, decorators: [{
691
1607
  type: Component,
692
- args: [{ selector: 'sac-dateselector', template: "<div class=\"calendar-selector\" style=\"min-width: 265px\">\r\n <table class=\"table-condensed\" style=\"width: 100%\" *ngIf=\"dateselection\">\r\n <thead>\r\n <tr>\r\n <th class=\"prev text-left\" (click)=\"monthBack()\">\r\n <i [class]=\"iconMonthPrev\"></i>\r\n </th>\r\n <th colspan=\"5\" class=\"switch text-center\">{{month+1}}/{{year}}</th>\r\n <th class=\"next text-right\" (click)=\"monthNext()\">\r\n <i [class]=\"iconMonthNext\"></i>\r\n </th>\r\n </tr>\r\n <tr>\r\n <th class=\"dow text-center\">Mo</th>\r\n <th class=\"dow text-center\">Di</th>\r\n <th class=\"dow text-center\">Mi</th>\r\n <th class=\"dow text-center\">Do</th>\r\n <th class=\"dow text-center\">Fr</th>\r\n <th class=\"dow text-center\">Sa</th>\r\n <th class=\"dow text-center\">So</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <ng-container *ngFor=\"let week of dates; let i=index\">\r\n <tr>\r\n <td\r\n class=\"text-center\"\r\n *ngFor=\"let item of week\"\r\n [ngStyle]=\"{'cursor': item.isenabled ? 'pointer' : null}\"\r\n [ngClass]=\"{'day-current': item.iscurrent, 'day-selected': item.isselected, 'day-new': item.isnew, 'day-disabled': !item.isenabled}\"\r\n (click)=\"selectDate(item)\"\r\n >\r\n {{ item.displaytext }}\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </tbody>\r\n </table>\r\n <div class=\"container-fluid\" *ngIf=\"timeselection\" style=\"margin-top: 10px\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6\" style=\"padding-right: 20px\">\r\n <div class=\"form-group\">\r\n <label>Stunde</label>\r\n <input\r\n type=\"number\"\r\n class=\"form-control\"\r\n [value]=\"getHours()\"\r\n (input)=\"setHours($event.target.value)\"\r\n min=\"0\"\r\n max=\"23\"\r\n />\r\n </div>\r\n </div>\r\n <div class=\"col-md-6\" style=\"padding-left: 20px\">\r\n <div class=\"form-group\">\r\n <label>Minute</label>\r\n <input\r\n type=\"number\"\r\n class=\"form-control\"\r\n [value]=\"getMinutes()\"\r\n (input)=\"setMinutes($event.target.value)\"\r\n min=\"0\"\r\n max=\"59\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" style=\"margin-top: 10px\">\r\n <div class=\"col-md-4 text-left\">\r\n <button type=\"button\" class=\"btn btn-default\" (click)=\"setToday()\">\r\n Heute\r\n </button>\r\n </div>\r\n <div class=\"col-md-8 text-right\">\r\n <button type=\"button\" class=\"btn btn-default\" (click)=\"resetSelection()\">\r\n Reset\r\n </button>\r\n <button\r\n type=\"button\"\r\n class=\"btn btn-primary\"\r\n style=\"margin-left: 10px\"\r\n (click)=\"applySelection()\"\r\n >\r\n Apply\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
1608
+ args: [{ selector: 'sac-tabitem', template: "<div [id]=\"id\" [hidden]=\"unloadwhenhidden === false && active === false\"\r\n *ngIf=\"(unloadwhenhidden === true && active === true) || unloadwhenhidden === false\" class=\"tab-pane\">\r\n <ng-template [ngTemplateOutlet]=\"templateRef\"></ng-template>\r\n</div>\r\n\r\n" }]
693
1609
  }] });
694
1610
 
695
- const moment = moment_["default"];
696
- class SacDateComponent extends SacDateCommon {
697
- constructor(parent, injector, _elementRef) {
698
- super(parent, injector, _elementRef);
699
- }
700
- }
701
- SacDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDateComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
702
- SacDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacDateComponent, selector: "sac-date", providers: [
703
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => SacDateComponent) },
704
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacDateComponent) }
705
- ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isadaptivelabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"control-label\"\r\n [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n >\r\n <div style=\"position: relative; width: 140px\">\r\n <div id=\"{{name}}\" class=\"datetime-textbox input-group\">\r\n <!-- this class comes in the div above when disabled [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\" -->\r\n <input\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control date-control\"\r\n [imask]=\"imaskDate\"\r\n placeholder=\"dd.mm.yyyy\"\r\n [attr.placeholder]=\"placeholder\"\r\n [value]=\"valuestring\"\r\n maxlength=\"10\"\r\n size=\"10\"\r\n (blur)=\"onTouch()\"\r\n (accept)=\"setValueString($event)\"\r\n [disabled]=\"isdisabled\"\r\n (click)=\"showDateSelector()\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <button\r\n class=\"btn btn-default\"\r\n type=\"button\"\r\n (click)=\"showDateSelector()\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <i [class]=\"IconSelector\"></i>\r\n </button>\r\n </span>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n\r\n <div\r\n class=\"popover bottom in\"\r\n role=\"tooltip\"\r\n *ngIf=\"_showselector\"\r\n style=\"\r\n display: block;\r\n left: unset;\r\n right: 0px;\r\n top: 34px;\r\n max-width: 325px;\r\n \"\r\n >\r\n <div class=\"arrow\" style=\"left: unset; right: 10px\"></div>\r\n <h3 class=\"popover-title\" style=\"display: none\"></h3>\r\n <div class=\"popover-content\">\r\n <sac-dateselector\r\n *ngIf=\"_showselector\"\r\n [initialvalue]=\"value\"\r\n (selectdate)=\"dateselect($event)\"\r\n dateselection=\"true\"\r\n ></sac-dateselector>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", components: [{ type: SacDateSelectorComponent, selector: "sac-dateselector" }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.IMaskDirective, selector: "[imask]", inputs: ["imaskElement", "imask", "unmask"], outputs: ["accept", "complete"], exportAs: ["imask"] }], pipes: { "async": i2.AsyncPipe } });
706
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDateComponent, decorators: [{
707
- type: Component,
708
- args: [{ selector: 'sac-date', providers: [
709
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => SacDateComponent) },
710
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacDateComponent) }
711
- ], template: "<div\r\n class=\"form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isadaptivelabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"control-label\"\r\n [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n >\r\n <div style=\"position: relative; width: 140px\">\r\n <div id=\"{{name}}\" class=\"datetime-textbox input-group\">\r\n <!-- this class comes in the div above when disabled [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\" -->\r\n <input\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control date-control\"\r\n [imask]=\"imaskDate\"\r\n placeholder=\"dd.mm.yyyy\"\r\n [attr.placeholder]=\"placeholder\"\r\n [value]=\"valuestring\"\r\n maxlength=\"10\"\r\n size=\"10\"\r\n (blur)=\"onTouch()\"\r\n (accept)=\"setValueString($event)\"\r\n [disabled]=\"isdisabled\"\r\n (click)=\"showDateSelector()\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <button\r\n class=\"btn btn-default\"\r\n type=\"button\"\r\n (click)=\"showDateSelector()\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <i [class]=\"IconSelector\"></i>\r\n </button>\r\n </span>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n\r\n <div\r\n class=\"popover bottom in\"\r\n role=\"tooltip\"\r\n *ngIf=\"_showselector\"\r\n style=\"\r\n display: block;\r\n left: unset;\r\n right: 0px;\r\n top: 34px;\r\n max-width: 325px;\r\n \"\r\n >\r\n <div class=\"arrow\" style=\"left: unset; right: 10px\"></div>\r\n <h3 class=\"popover-title\" style=\"display: none\"></h3>\r\n <div class=\"popover-content\">\r\n <sac-dateselector\r\n *ngIf=\"_showselector\"\r\n [initialvalue]=\"value\"\r\n (selectdate)=\"dateselect($event)\"\r\n dateselection=\"true\"\r\n ></sac-dateselector>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
712
- }], ctorParameters: function () {
713
- return [{ type: SacFormDirective, decorators: [{
714
- type: Host
715
- }, {
716
- type: Optional
717
- }] }, { type: i0.Injector }, { type: i0.ElementRef }];
718
- } });
719
-
720
- class SacDateTimeComponent extends SacDateTimeCommon {
721
- constructor(parent, injector, _elementRef) {
722
- super(parent, injector, _elementRef);
723
- }
724
- }
725
- SacDateTimeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDateTimeComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
726
- SacDateTimeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacDateTimeComponent, selector: "sac-datetime", providers: [
727
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => SacDateTimeComponent) },
728
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacDateTimeComponent) }
729
- ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isadaptivelabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"control-label\"\r\n [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n >\r\n <div style=\"position: relative; width: 180px\">\r\n <div id=\"{{name}}\" class=\"datetime-textbox input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [imask]=\"imaskDate\"\r\n [attr.placeholder]=\"placeholder\"\r\n [value]=\"valuestring\"\r\n [ngClass]=\"{'is-invalid': invalid && (dirty || touched) }\"\r\n (blur)=\"onTouch()\"\r\n (accept)=\"setValueString($event)\"\r\n [disabled]=\"isdisabled\"\r\n (click)=\"showDateSelector()\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <button\r\n class=\"btn btn-default\"\r\n type=\"button\"\r\n (click)=\"showDateSelector()\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <i [class]=\"IconSelector\"></i>\r\n </button>\r\n </span>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n\r\n <div\r\n class=\"popover bottom in\"\r\n role=\"tooltip\"\r\n *ngIf=\"_showselector\"\r\n style=\"\r\n display: block;\r\n left: unset;\r\n right: 0px;\r\n top: 34px;\r\n max-width: 325px;\r\n \"\r\n >\r\n <div class=\"arrow\" style=\"left: unset; right: 10px\"></div>\r\n <h3 class=\"popover-title\" style=\"display: none\"></h3>\r\n <div class=\"popover-content\">\r\n <sac-dateselector\r\n *ngIf=\"_showselector\"\r\n [initialvalue]=\"value\"\r\n (selectdate)=\"dateselect($event)\"\r\n dateselection=\"true\"\r\n timeselection=\"true\"\r\n ></sac-dateselector>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", components: [{ type: SacDateSelectorComponent, selector: "sac-dateselector" }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.IMaskDirective, selector: "[imask]", inputs: ["imaskElement", "imask", "unmask"], outputs: ["accept", "complete"], exportAs: ["imask"] }], pipes: { "async": i2.AsyncPipe } });
730
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacDateTimeComponent, decorators: [{
731
- type: Component,
732
- args: [{ selector: 'sac-datetime', providers: [
733
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => SacDateTimeComponent) },
734
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacDateTimeComponent) }
735
- ], template: "<div\r\n class=\"form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isadaptivelabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"control-label\"\r\n [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n >\r\n <div style=\"position: relative; width: 180px\">\r\n <div id=\"{{name}}\" class=\"datetime-textbox input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [imask]=\"imaskDate\"\r\n [attr.placeholder]=\"placeholder\"\r\n [value]=\"valuestring\"\r\n [ngClass]=\"{'is-invalid': invalid && (dirty || touched) }\"\r\n (blur)=\"onTouch()\"\r\n (accept)=\"setValueString($event)\"\r\n [disabled]=\"isdisabled\"\r\n (click)=\"showDateSelector()\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <button\r\n class=\"btn btn-default\"\r\n type=\"button\"\r\n (click)=\"showDateSelector()\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <i [class]=\"IconSelector\"></i>\r\n </button>\r\n </span>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n\r\n <div\r\n class=\"popover bottom in\"\r\n role=\"tooltip\"\r\n *ngIf=\"_showselector\"\r\n style=\"\r\n display: block;\r\n left: unset;\r\n right: 0px;\r\n top: 34px;\r\n max-width: 325px;\r\n \"\r\n >\r\n <div class=\"arrow\" style=\"left: unset; right: 10px\"></div>\r\n <h3 class=\"popover-title\" style=\"display: none\"></h3>\r\n <div class=\"popover-content\">\r\n <sac-dateselector\r\n *ngIf=\"_showselector\"\r\n [initialvalue]=\"value\"\r\n (selectdate)=\"dateselect($event)\"\r\n dateselection=\"true\"\r\n timeselection=\"true\"\r\n ></sac-dateselector>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
736
- }], ctorParameters: function () {
737
- return [{ type: SacFormDirective, decorators: [{
738
- type: Host
739
- }, {
740
- type: Optional
741
- }] }, { type: i0.Injector }, { type: i0.ElementRef }];
742
- } });
743
-
744
- class SacTimeComponent extends SacTimeCommon {
745
- constructor(parent, injector, _elementRef) {
746
- super(parent, injector, _elementRef);
1611
+ class SacTabComponent extends SacTabCommon {
1612
+ tabItems() {
1613
+ return this._tabItems.toArray();
747
1614
  }
748
1615
  }
749
- SacTimeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTimeComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
750
- SacTimeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTimeComponent, selector: "sac-time", providers: [
751
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => SacTimeComponent) },
752
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacTimeComponent) }
753
- ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isadaptivelabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"control-label\"\r\n [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n >\r\n <div style=\"position: relative; width: 140px\">\r\n <div class=\"input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n [value]=\"valuestring\"\r\n maxlength=\"6\"\r\n [imask]=\"imaskDate\"\r\n size=\"6\"\r\n class=\"form-control\"\r\n [attr.placeholder]=\"placeholder\"\r\n data-error-msg=\"ctl00_cphContent_ctl00_ucPublicationDetail_dtpValidFrom_timeTextBoxTypeValidator\"\r\n [ngClass]=\"{'is-invalid': invalid && (dirty || touched) }\"\r\n (blur)=\"onTouch()\"\r\n (accept)=\"setValueString($event)\"\r\n [disabled]=\"isdisabled\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <button\r\n class=\"btn btn-default\"\r\n type=\"button\"\r\n (click)=\"showTimeSelector()\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <i [class]=\"IconSelector\"></i>\r\n </button>\r\n </span>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n <div\r\n class=\"popover bottom in\"\r\n role=\"tooltip\"\r\n *ngIf=\"_showselector\"\r\n style=\"\r\n display: block;\r\n left: unset;\r\n right: 0px;\r\n top: 34px;\r\n max-width: 325px;\r\n \"\r\n >\r\n <div class=\"arrow\" style=\"left: unset; right: 10px\"></div>\r\n <h3 class=\"popover-title\" style=\"display: none\"></h3>\r\n <div class=\"popover-content\">\r\n <sac-dateselector\r\n *ngIf=\"_showselector\"\r\n [initialvalue]=\"value\"\r\n (selectdate)=\"timeselect($event)\"\r\n timeselection=\"true\"\r\n ></sac-dateselector>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", components: [{ type: SacDateSelectorComponent, selector: "sac-dateselector" }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.IMaskDirective, selector: "[imask]", inputs: ["imaskElement", "imask", "unmask"], outputs: ["accept", "complete"], exportAs: ["imask"] }], pipes: { "async": i2.AsyncPipe } });
754
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTimeComponent, decorators: [{
1616
+ SacTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTabComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1617
+ SacTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTabComponent, selector: "sac-tab", queries: [{ propertyName: "_tabItems", predicate: SacTabItemComponent }], usesInheritance: true, ngImport: i0, template: "<!-- Nav tabs -->\r\n<div [id]=\"name\" class=\"content-nav-tabs\">\r\n <ul class=\"nav nav-tabs\" role=\"tablist\">\r\n <li\r\n *ngFor=\"let item of _tabItems\"\r\n [ngClass]=\"{ 'active show': item.active, 'disabled': item.disabled }\"\r\n (click)=\"selectTab(item)\"\r\n [ngStyle]=\"{'cursor': item._disabled ? 'not-allowed' : 'pointer'}\"\r\n >\r\n <a [id]=\"GetTabItemButtonId(item._id)\" role=\"tab\">\r\n <ng-template\r\n *ngTemplateOutlet=\"tablabeltemplate || defaultTabLabelTemplate;context:{ label: item.label }\"\r\n >\r\n </ng-template>\r\n </a>\r\n </li>\r\n </ul>\r\n</div>\r\n\r\n<!-- Tab panes -->\r\n<div class=\"tab-content\" style=\"margin-top: 15px\">\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<ng-template #defaultTabLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n", directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
1618
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTabComponent, decorators: [{
755
1619
  type: Component,
756
- args: [{ selector: 'sac-time', providers: [
757
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => SacTimeComponent) },
758
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacTimeComponent) }
759
- ], template: "<div\r\n class=\"form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isadaptivelabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"control-label\"\r\n [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n >\r\n <div style=\"position: relative; width: 140px\">\r\n <div class=\"input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n [value]=\"valuestring\"\r\n maxlength=\"6\"\r\n [imask]=\"imaskDate\"\r\n size=\"6\"\r\n class=\"form-control\"\r\n [attr.placeholder]=\"placeholder\"\r\n data-error-msg=\"ctl00_cphContent_ctl00_ucPublicationDetail_dtpValidFrom_timeTextBoxTypeValidator\"\r\n [ngClass]=\"{'is-invalid': invalid && (dirty || touched) }\"\r\n (blur)=\"onTouch()\"\r\n (accept)=\"setValueString($event)\"\r\n [disabled]=\"isdisabled\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <button\r\n class=\"btn btn-default\"\r\n type=\"button\"\r\n (click)=\"showTimeSelector()\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <i [class]=\"IconSelector\"></i>\r\n </button>\r\n </span>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n <div\r\n class=\"popover bottom in\"\r\n role=\"tooltip\"\r\n *ngIf=\"_showselector\"\r\n style=\"\r\n display: block;\r\n left: unset;\r\n right: 0px;\r\n top: 34px;\r\n max-width: 325px;\r\n \"\r\n >\r\n <div class=\"arrow\" style=\"left: unset; right: 10px\"></div>\r\n <h3 class=\"popover-title\" style=\"display: none\"></h3>\r\n <div class=\"popover-content\">\r\n <sac-dateselector\r\n *ngIf=\"_showselector\"\r\n [initialvalue]=\"value\"\r\n (selectdate)=\"timeselect($event)\"\r\n timeselection=\"true\"\r\n ></sac-dateselector>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
760
- }], ctorParameters: function () {
761
- return [{ type: SacFormDirective, decorators: [{
762
- type: Host
763
- }, {
764
- type: Optional
765
- }] }, { type: i0.Injector }, { type: i0.ElementRef }];
766
- } });
1620
+ args: [{ selector: 'sac-tab', template: "<!-- Nav tabs -->\r\n<div [id]=\"name\" class=\"content-nav-tabs\">\r\n <ul class=\"nav nav-tabs\" role=\"tablist\">\r\n <li\r\n *ngFor=\"let item of _tabItems\"\r\n [ngClass]=\"{ 'active show': item.active, 'disabled': item.disabled }\"\r\n (click)=\"selectTab(item)\"\r\n [ngStyle]=\"{'cursor': item._disabled ? 'not-allowed' : 'pointer'}\"\r\n >\r\n <a [id]=\"GetTabItemButtonId(item._id)\" role=\"tab\">\r\n <ng-template\r\n *ngTemplateOutlet=\"tablabeltemplate || defaultTabLabelTemplate;context:{ label: item.label }\"\r\n >\r\n </ng-template>\r\n </a>\r\n </li>\r\n </ul>\r\n</div>\r\n\r\n<!-- Tab panes -->\r\n<div class=\"tab-content\" style=\"margin-top: 15px\">\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<ng-template #defaultTabLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n" }]
1621
+ }], propDecorators: { _tabItems: [{
1622
+ type: ContentChildren,
1623
+ args: [SacTabItemComponent]
1624
+ }] } });
767
1625
 
768
- class SACBootstrap3DateTimeModule {
1626
+ class SACBootstrap3TabsModule {
769
1627
  }
770
- SACBootstrap3DateTimeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DateTimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
771
- SACBootstrap3DateTimeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DateTimeModule, declarations: [SacDateComponent, SacDateTimeComponent, SacTimeComponent, SacDateSelectorComponent], imports: [CommonModule, IMaskModule], exports: [SacDateComponent, SacDateTimeComponent, SacTimeComponent, SacDateSelectorComponent] });
772
- SACBootstrap3DateTimeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DateTimeModule, imports: [[
773
- CommonModule, IMaskModule
1628
+ SACBootstrap3TabsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1629
+ SACBootstrap3TabsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TabsModule, declarations: [SacTabComponent, SacTabItemComponent], imports: [CommonModule], exports: [SacTabComponent, SacTabItemComponent] });
1630
+ SACBootstrap3TabsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TabsModule, imports: [[
1631
+ CommonModule
774
1632
  ]] });
775
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3DateTimeModule, decorators: [{
1633
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TabsModule, decorators: [{
776
1634
  type: NgModule,
777
1635
  args: [{
778
- declarations: [SacDateComponent, SacDateTimeComponent, SacTimeComponent, SacDateSelectorComponent],
1636
+ declarations: [SacTabComponent, SacTabItemComponent],
779
1637
  imports: [
780
- CommonModule, IMaskModule
1638
+ CommonModule
781
1639
  ],
782
- exports: [SacDateComponent, SacDateTimeComponent, SacTimeComponent, SacDateSelectorComponent]
1640
+ exports: [SacTabComponent, SacTabItemComponent]
783
1641
  }]
784
1642
  }] });
785
1643
 
786
1644
  class SacTinyMceComponent extends SacTinyMceCommon {
1645
+ // #region Constructors
787
1646
  /**
788
- * Konstruktor
789
- * @param parent Formular
790
- * @param injector Angular Dependency Injection Service
791
- * @param ngZone ngZone
1647
+ * Constructor
1648
+ * @param formLayout SacFormLayout to define scoped layout settings
1649
+ * @param injector Injector for injecting services
1650
+ * @param ngZone ngZone to manage external javascripts
792
1651
  */
793
- constructor(parent, injector, ngZone) {
794
- super(parent, injector, ngZone);
1652
+ constructor(formLayout, injector, ngZone) {
1653
+ super(formLayout, injector, ngZone);
795
1654
  }
1655
+ // #endregion Constructors
1656
+ // #region Public Methods
796
1657
  /**
797
1658
  * overwrite tinymce defaults
798
1659
  * @returns boostrap3 does not support file browser
@@ -801,7 +1662,7 @@ class SacTinyMceComponent extends SacTinyMceCommon {
801
1662
  return { file_picker_types: undefined, file_picker_callback: undefined };
802
1663
  }
803
1664
  }
804
- SacTinyMceComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTinyMceComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1665
+ SacTinyMceComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTinyMceComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
805
1666
  SacTinyMceComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTinyMceComponent, selector: "sac-tinymce", providers: [
806
1667
  {
807
1668
  provide: NG_VALUE_ACCESSOR,
@@ -813,7 +1674,7 @@ SacTinyMceComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
813
1674
  useExisting: forwardRef(() => SacTinyMceComponent),
814
1675
  multi: true,
815
1676
  },
816
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-row form-group\">\r\n <div\r\n class=\"col\"\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + labelsize : 'sr-only' ]\"\r\n >\r\n <label for=\"{{name}}\" class=\"form-control-label\">{{label}}</label>\r\n </div>\r\n <div\r\n class=\"col-12\"\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n [class.has-error]=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n <editor\r\n [id]=\"name + '_tinymce'\"\r\n [init]=\"_config\"\r\n [initialValue]=\"value\"\r\n ngModel\r\n [ngModelOptions]=\"{standalone: true}\"\r\n (ngModelChange)=\"setValue($event)\"\r\n (onSaveContent)=\"save($event.event.content)\"\r\n [disabled]=\"disabled\"\r\n [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n ></editor>\r\n <div\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n class=\"help-block\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<sac-dialog\r\n *ngIf=\"selectdialogvisible\"\r\n [allowesc]=\"false\"\r\n [backdrop]=\"true\"\r\n [(isvisible)]=\"selectdialogvisible\"\r\n title=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_DIALOGTITLE') | async }}\"\r\n size=\"large\"\r\n height=\"500px\"\r\n>\r\n <ng-container dialogbody> </ng-container>\r\n <ng-container dialogfooter>\r\n <sac-button\r\n role=\"primary\"\r\n [name]=\"name + '_modalOk'\"\r\n text=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_OK') | async }}\"\r\n (clicked)=\"setSelectDialogResult()\"\r\n ></sac-button>\r\n <sac-button\r\n [name]=\"name + '_modalClose'\"\r\n text=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_CANCEL') | async }}\"\r\n (clicked)=\"closeSelectDialog()\"\r\n ></sac-button>\r\n </ng-container>\r\n</sac-dialog>\r\n", components: [{ type: i2$1.EditorComponent, selector: "editor", inputs: ["cloudChannel", "apiKey", "init", "id", "initialValue", "outputFormat", "inline", "tagName", "plugins", "toolbar", "modelEvents", "allowedEvents", "ignoreEvents", "disabled"] }, { type: SacDialogComponent, selector: "sac-dialog", inputs: ["zindex"] }, { type: SacButtonComponent, selector: "sac-button" }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe } });
1677
+ ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-row form-group\">\r\n <div\r\n class=\"col\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n >\r\n <label for=\"{{name}}\" class=\"form-control-label\">{{label}}</label>\r\n </div>\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n [class.has-error]=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n <editor\r\n [id]=\"name + '_tinymce'\"\r\n [init]=\"_config\"\r\n [initialValue]=\"value\"\r\n ngModel\r\n [ngModelOptions]=\"{standalone: true}\"\r\n (ngModelChange)=\"setValue($event)\"\r\n (onSaveContent)=\"save($event.event.content)\"\r\n [disabled]=\"disabled\"\r\n [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n ></editor>\r\n <div\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n class=\"help-block\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<sac-dialog\r\n *ngIf=\"selectdialogvisible\"\r\n [allowesc]=\"false\"\r\n [backdrop]=\"true\"\r\n [(isvisible)]=\"selectdialogvisible\"\r\n title=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_DIALOGTITLE') | async }}\"\r\n size=\"large\"\r\n height=\"500px\"\r\n>\r\n <ng-container dialogbody> </ng-container>\r\n <ng-container dialogfooter>\r\n <sac-button\r\n role=\"primary\"\r\n [name]=\"name + '_modalOk'\"\r\n text=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_OK') | async }}\"\r\n (clicked)=\"setSelectDialogResult()\"\r\n ></sac-button>\r\n <sac-button\r\n [name]=\"name + '_modalClose'\"\r\n text=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_CANCEL') | async }}\"\r\n (clicked)=\"closeSelectDialog()\"\r\n ></sac-button>\r\n </ng-container>\r\n</sac-dialog>\r\n", components: [{ type: i2$1.EditorComponent, selector: "editor", inputs: ["cloudChannel", "apiKey", "init", "id", "initialValue", "outputFormat", "inline", "tagName", "plugins", "toolbar", "modelEvents", "allowedEvents", "ignoreEvents", "disabled"] }, { type: SacDialogComponent, selector: "sac-dialog", inputs: ["zindex"] }, { type: SacButtonComponent, selector: "sac-button" }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
817
1678
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTinyMceComponent, decorators: [{
818
1679
  type: Component,
819
1680
  args: [{ selector: 'sac-tinymce', providers: [
@@ -827,9 +1688,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
827
1688
  useExisting: forwardRef(() => SacTinyMceComponent),
828
1689
  multi: true,
829
1690
  },
830
- ], template: "<div class=\"form-row form-group\">\r\n <div\r\n class=\"col\"\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + labelsize : 'sr-only' ]\"\r\n >\r\n <label for=\"{{name}}\" class=\"form-control-label\">{{label}}</label>\r\n </div>\r\n <div\r\n class=\"col-12\"\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n [class.has-error]=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n <editor\r\n [id]=\"name + '_tinymce'\"\r\n [init]=\"_config\"\r\n [initialValue]=\"value\"\r\n ngModel\r\n [ngModelOptions]=\"{standalone: true}\"\r\n (ngModelChange)=\"setValue($event)\"\r\n (onSaveContent)=\"save($event.event.content)\"\r\n [disabled]=\"disabled\"\r\n [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n ></editor>\r\n <div\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n class=\"help-block\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<sac-dialog\r\n *ngIf=\"selectdialogvisible\"\r\n [allowesc]=\"false\"\r\n [backdrop]=\"true\"\r\n [(isvisible)]=\"selectdialogvisible\"\r\n title=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_DIALOGTITLE') | async }}\"\r\n size=\"large\"\r\n height=\"500px\"\r\n>\r\n <ng-container dialogbody> </ng-container>\r\n <ng-container dialogfooter>\r\n <sac-button\r\n role=\"primary\"\r\n [name]=\"name + '_modalOk'\"\r\n text=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_OK') | async }}\"\r\n (clicked)=\"setSelectDialogResult()\"\r\n ></sac-button>\r\n <sac-button\r\n [name]=\"name + '_modalClose'\"\r\n text=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_CANCEL') | async }}\"\r\n (clicked)=\"closeSelectDialog()\"\r\n ></sac-button>\r\n </ng-container>\r\n</sac-dialog>\r\n" }]
1691
+ ], template: "<div class=\"form-row form-group\">\r\n <div\r\n class=\"col\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n >\r\n <label for=\"{{name}}\" class=\"form-control-label\">{{label}}</label>\r\n </div>\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n [class.has-error]=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n <editor\r\n [id]=\"name + '_tinymce'\"\r\n [init]=\"_config\"\r\n [initialValue]=\"value\"\r\n ngModel\r\n [ngModelOptions]=\"{standalone: true}\"\r\n (ngModelChange)=\"setValue($event)\"\r\n (onSaveContent)=\"save($event.event.content)\"\r\n [disabled]=\"disabled\"\r\n [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n ></editor>\r\n <div\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n class=\"help-block\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<sac-dialog\r\n *ngIf=\"selectdialogvisible\"\r\n [allowesc]=\"false\"\r\n [backdrop]=\"true\"\r\n [(isvisible)]=\"selectdialogvisible\"\r\n title=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_DIALOGTITLE') | async }}\"\r\n size=\"large\"\r\n height=\"500px\"\r\n>\r\n <ng-container dialogbody> </ng-container>\r\n <ng-container dialogfooter>\r\n <sac-button\r\n role=\"primary\"\r\n [name]=\"name + '_modalOk'\"\r\n text=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_OK') | async }}\"\r\n (clicked)=\"setSelectDialogResult()\"\r\n ></sac-button>\r\n <sac-button\r\n [name]=\"name + '_modalClose'\"\r\n text=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_CANCEL') | async }}\"\r\n (clicked)=\"closeSelectDialog()\"\r\n ></sac-button>\r\n </ng-container>\r\n</sac-dialog>\r\n" }]
831
1692
  }], ctorParameters: function () {
832
- return [{ type: SacFormDirective, decorators: [{
1693
+ return [{ type: SacFormLayoutDirective, decorators: [{
833
1694
  type: Host
834
1695
  }, {
835
1696
  type: Optional
@@ -843,13 +1704,15 @@ SACBootstrap3TinyMceModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.
843
1704
  FormsModule,
844
1705
  EditorModule,
845
1706
  SACBootstrap3ButtonModule,
846
- SACBootstrap3DialogModule], exports: [SacTinyMceComponent] });
1707
+ SACBootstrap3DialogModule,
1708
+ SACBootstrap3LayoutModule], exports: [SacTinyMceComponent] });
847
1709
  SACBootstrap3TinyMceModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TinyMceModule, imports: [[
848
1710
  CommonModule,
849
1711
  FormsModule,
850
1712
  EditorModule,
851
1713
  SACBootstrap3ButtonModule,
852
1714
  SACBootstrap3DialogModule,
1715
+ SACBootstrap3LayoutModule,
853
1716
  ]] });
854
1717
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TinyMceModule, decorators: [{
855
1718
  type: NgModule,
@@ -857,165 +1720,107 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
857
1720
  declarations: [SacTinyMceComponent],
858
1721
  imports: [
859
1722
  CommonModule,
860
- FormsModule,
861
- EditorModule,
862
- SACBootstrap3ButtonModule,
863
- SACBootstrap3DialogModule,
864
- ],
865
- exports: [SacTinyMceComponent],
866
- }]
867
- }] });
868
-
869
- class SacStaticLabelComponent extends SacStaticLabelCommon {
870
- constructor(parent, injector) {
871
- super(parent, injector);
872
- }
873
- }
874
- SacStaticLabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacStaticLabelComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
875
- SacStaticLabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacStaticLabelComponent, selector: "sac-staticlabel", providers: [
876
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacStaticLabelComponent },
877
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacStaticLabelComponent) }
878
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <div class=\"form-control-static\" [innerHTML]=\"value\">\r\n </div>\r\n <label for=\"{{name}}\" class=\"col-left control-label\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
879
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacStaticLabelComponent, decorators: [{
880
- type: Component,
881
- args: [{ selector: 'sac-staticlabel', providers: [
882
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacStaticLabelComponent },
883
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacStaticLabelComponent) }
884
- ], template: "<div class=\"form-group\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <div class=\"form-control-static\" [innerHTML]=\"value\">\r\n </div>\r\n <label for=\"{{name}}\" class=\"col-left control-label\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n </div>\r\n</div>\r\n" }]
885
- }], ctorParameters: function () {
886
- return [{ type: SacFormDirective, decorators: [{
887
- type: Host
888
- }, {
889
- type: Optional
890
- }] }, { type: i0.Injector }];
891
- } });
892
-
893
- /**
894
- * Component für einbindung eines beliebigen Controls in die Form Struktur
895
- *
896
- * @example
897
- * <ngStaticFormContainer name='myformcontainer' label="My Custom Form Control" [isrequired]='false'>
898
- * <input type="range" class="form-control" />
899
- * </ngStaticFormContainer>
900
- *
901
- * @example
902
- * <ngStaticFormContainer name='myformcintainer' label="My Custom Form Control" [isrequired]='false' tooltiptext="Dies ist ein Tooltip Text">
903
- * <input type="range" class="form-control" />
904
- * </ngStaticFormContainer>
905
- *
906
- **/
907
- class SacStaticFormContainerComponent extends SacStaticFormContainerCommon {
908
- /**
909
- * Konsturktor
910
- * @param parent Parent SacFormular Instanz
911
- * @param injector Injector Instanz
912
- */
913
- constructor(parent, injector) {
914
- super(parent, injector);
915
- }
916
- }
917
- SacStaticFormContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacStaticFormContainerComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
918
- SacStaticFormContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacStaticFormContainerComponent, selector: "sac-staticformcontainer", providers: [
919
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacStaticFormContainerComponent },
920
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacStaticFormContainerComponent) }
921
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <ng-content></ng-content>\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe } });
922
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacStaticFormContainerComponent, decorators: [{
923
- type: Component,
924
- args: [{ selector: 'sac-staticformcontainer', providers: [
925
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacStaticFormContainerComponent },
926
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacStaticFormContainerComponent) }
927
- ], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <ng-content></ng-content>\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n" }]
928
- }], ctorParameters: function () {
929
- return [{ type: SacFormDirective, decorators: [{
930
- type: Host
931
- }, {
932
- type: Optional
933
- }] }, { type: i0.Injector }];
934
- } });
935
-
936
- class SACBootstrap3StaticLabelModule {
937
- }
938
- SACBootstrap3StaticLabelModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3StaticLabelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
939
- SACBootstrap3StaticLabelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3StaticLabelModule, declarations: [SacStaticLabelComponent, SacStaticFormContainerComponent], imports: [CommonModule, SACBootstrap3TooltipModule], exports: [SacStaticLabelComponent, SacStaticFormContainerComponent] });
940
- SACBootstrap3StaticLabelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3StaticLabelModule, imports: [[
941
- CommonModule, SACBootstrap3TooltipModule
942
- ]] });
943
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3StaticLabelModule, decorators: [{
944
- type: NgModule,
945
- args: [{
946
- declarations: [SacStaticLabelComponent, SacStaticFormContainerComponent],
947
- imports: [
948
- CommonModule, SACBootstrap3TooltipModule
1723
+ FormsModule,
1724
+ EditorModule,
1725
+ SACBootstrap3ButtonModule,
1726
+ SACBootstrap3DialogModule,
1727
+ SACBootstrap3LayoutModule,
949
1728
  ],
950
- exports: [SacStaticLabelComponent, SacStaticFormContainerComponent]
1729
+ exports: [SacTinyMceComponent],
951
1730
  }]
952
1731
  }] });
953
1732
 
954
- class SacWizardItemComponent extends SacWizardItemCommon {
1733
+ class SacTreeViewChildComponent extends SacTreeViewChildCommon {
955
1734
  }
956
- SacWizardItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacWizardItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
957
- SacWizardItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacWizardItemComponent, selector: "sac-wizarditem", usesInheritance: true, ngImport: i0, template: "" });
958
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacWizardItemComponent, decorators: [{
1735
+ SacTreeViewChildComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTreeViewChildComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1736
+ SacTreeViewChildComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTreeViewChildComponent, selector: "sac-treeviewchild", usesInheritance: true, ngImport: i0, template: "<ul class=\"jstree-children\" *ngIf=\"nodes && nodes.length\">\r\n <li\r\n *ngFor=\"let node of nodes; let last = last\"\r\n class=\"jstree-node\"\r\n [ngClass]=\"{\r\n 'jstree-open': !node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-closed': node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-leaf': !node[childrenAttr].length,\r\n 'jstree-last': last\r\n }\"\r\n [id]=\"node[idAttr]\"\r\n >\r\n <div\r\n unselectable=\"on\"\r\n role=\"presentation\"\r\n class=\"jstree-wholerow\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n [ngClass]=\"{'jstree-wholerow-clicked': node === selectedNode, 'jstree-wholerow-hovered': node.hover}\"\r\n >\r\n &nbsp;\r\n </div>\r\n\r\n <i\r\n class=\"jstree-icon jstree-ocl\"\r\n role=\"presentation\"\r\n (click)=\"onCollapseClick(node)\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n ></i>\r\n\r\n <a\r\n class=\"jstree-anchor\"\r\n (click)=\"onClick(node)\"\r\n [ngClass]=\"{'jstree-clicked': node === selectedNode, 'jstreehovered': node.hover}\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"treefileicon; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n {{node[textAttr]}}\r\n </a>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"template; context { item: node }\"\r\n ></ng-container>\r\n\r\n <sac-treeviewchild\r\n *ngIf=\"node[childrenAttr] && node[childrenAttr].length\"\r\n [fileicontemplate]=\"fileicontemplate\"\r\n [template]=\"template\"\r\n [collapseall]=\"collapseall\"\r\n [ngClass]=\"(node[collapseAttr]===true)?'collapse':'show'\"\r\n [data]=\"node[childrenAttr]\"\r\n [idAttr]=\"idAttr\"\r\n [parentAttr]=\"parentAttr\"\r\n [textAttr]=\"textAttr\"\r\n [prepareData]=\"false\"\r\n (onselecteditem)=\"sendMsgToParent($event)\"\r\n [(selectedid)]=\"selectedid\"\r\n >\r\n </sac-treeviewchild>\r\n </li>\r\n</ul>\r\n", components: [{ type: SacTreeViewChildComponent, selector: "sac-treeviewchild" }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
1737
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTreeViewChildComponent, decorators: [{
959
1738
  type: Component,
960
- args: [{ selector: 'sac-wizarditem', template: "" }]
1739
+ args: [{ selector: 'sac-treeviewchild', template: "<ul class=\"jstree-children\" *ngIf=\"nodes && nodes.length\">\r\n <li\r\n *ngFor=\"let node of nodes; let last = last\"\r\n class=\"jstree-node\"\r\n [ngClass]=\"{\r\n 'jstree-open': !node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-closed': node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-leaf': !node[childrenAttr].length,\r\n 'jstree-last': last\r\n }\"\r\n [id]=\"node[idAttr]\"\r\n >\r\n <div\r\n unselectable=\"on\"\r\n role=\"presentation\"\r\n class=\"jstree-wholerow\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n [ngClass]=\"{'jstree-wholerow-clicked': node === selectedNode, 'jstree-wholerow-hovered': node.hover}\"\r\n >\r\n &nbsp;\r\n </div>\r\n\r\n <i\r\n class=\"jstree-icon jstree-ocl\"\r\n role=\"presentation\"\r\n (click)=\"onCollapseClick(node)\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n ></i>\r\n\r\n <a\r\n class=\"jstree-anchor\"\r\n (click)=\"onClick(node)\"\r\n [ngClass]=\"{'jstree-clicked': node === selectedNode, 'jstreehovered': node.hover}\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"treefileicon; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n {{node[textAttr]}}\r\n </a>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"template; context { item: node }\"\r\n ></ng-container>\r\n\r\n <sac-treeviewchild\r\n *ngIf=\"node[childrenAttr] && node[childrenAttr].length\"\r\n [fileicontemplate]=\"fileicontemplate\"\r\n [template]=\"template\"\r\n [collapseall]=\"collapseall\"\r\n [ngClass]=\"(node[collapseAttr]===true)?'collapse':'show'\"\r\n [data]=\"node[childrenAttr]\"\r\n [idAttr]=\"idAttr\"\r\n [parentAttr]=\"parentAttr\"\r\n [textAttr]=\"textAttr\"\r\n [prepareData]=\"false\"\r\n (onselecteditem)=\"sendMsgToParent($event)\"\r\n [(selectedid)]=\"selectedid\"\r\n >\r\n </sac-treeviewchild>\r\n </li>\r\n</ul>\r\n" }]
961
1740
  }] });
962
1741
 
963
- class SacWizardComponent extends SacWizardCommon {
964
- wizardItems() {
965
- return this._wizardItems;
1742
+ class SacTreeViewComponent extends SacTreeViewCommon {
1743
+ }
1744
+ SacTreeViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTreeViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1745
+ SacTreeViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTreeViewComponent, selector: "sac-treeview", usesInheritance: true, ngImport: i0, template: "<div class=\"structure panel panel-default\" icon=\"Structure\">\r\n <div class=\"panel-heading\">\r\n <p class=\"panel-title\"><span>{{ name }}</span></p>\r\n </div>\r\n <div class=\"panel-body\">\r\n <div class=\"right\">\r\n <div\r\n class=\"form-submit form-inline\"\r\n style=\"text-align: right; height: 24px\"\r\n >\r\n <a class=\"btn-inline\"\r\n ><i class=\"icon icon-base-expand\" (click)=\"collapseAllNode(false)\"></i\r\n ></a>\r\n <a class=\"btn-inline\"\r\n ><i\r\n class=\"icon icon-base-collapse\"\r\n (click)=\"collapseAllNode(true)\"\r\n ></i\r\n ></a>\r\n </div>\r\n </div>\r\n <div\r\n [id]=\"name\"\r\n class=\"structure-tree single-root jstree jstree-1 jstree-default\"\r\n >\r\n <ul\r\n class=\"jstree-container-ul jstree-children jstree-no-dots jstree-striped jstree-wholerow-ul\"\r\n *ngIf=\"nodes && nodes.length\"\r\n >\r\n <li\r\n *ngFor=\"let node of nodes; let last = last\"\r\n class=\"jstree-node\"\r\n [ngClass]=\"{\r\n 'jstree-open': !node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-closed': node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-leaf': !node[childrenAttr].length,\r\n 'jstree-last': last\r\n }\"\r\n [id]=\"node[idAttr]\"\r\n >\r\n <div\r\n unselectable=\"on\"\r\n role=\"presentation\"\r\n class=\"jstree-wholerow\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n [ngClass]=\"{'jstree-wholerow-clicked': node === selectedNode, 'jstree-wholerow-hovered': node.hover}\"\r\n >\r\n &nbsp;\r\n </div>\r\n\r\n <i\r\n class=\"jstree-icon jstree-ocl\"\r\n role=\"presentation\"\r\n (click)=\"onCollapseClick(node)\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n ></i>\r\n\r\n <a\r\n class=\"jstree-anchor\"\r\n (click)=\"onClick(node)\"\r\n [ngClass]=\"{'jstree-clicked': node === selectedNode, 'jstreehovered': node.hover}\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"treefileicon; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n <span>{{node[textAttr]}}</span>\r\n </a>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"template; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n <sac-treeviewchild\r\n *ngIf=\"node[childrenAttr] && node[childrenAttr].length\"\r\n [fileicontemplate]=\"fileicontemplate\"\r\n [template]=\"template\"\r\n [collapseall]=\"collapseall\"\r\n [ngClass]=\"(node[collapseAttr]===true)?'collapse':'show'\"\r\n [data]=\"node[childrenAttr]\"\r\n [idAttr]=\"idAttr\"\r\n [parentAttr]=\"parentAttr\"\r\n [textAttr]=\"textAttr\"\r\n [prepareData]=\"false\"\r\n (onselecteditem)=\"sendMsgToParent($event)\"\r\n [(selectedid)]=\"selectedid\"\r\n >\r\n </sac-treeviewchild>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n", components: [{ type: SacTreeViewChildComponent, selector: "sac-treeviewchild" }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
1746
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTreeViewComponent, decorators: [{
1747
+ type: Component,
1748
+ args: [{ selector: 'sac-treeview', template: "<div class=\"structure panel panel-default\" icon=\"Structure\">\r\n <div class=\"panel-heading\">\r\n <p class=\"panel-title\"><span>{{ name }}</span></p>\r\n </div>\r\n <div class=\"panel-body\">\r\n <div class=\"right\">\r\n <div\r\n class=\"form-submit form-inline\"\r\n style=\"text-align: right; height: 24px\"\r\n >\r\n <a class=\"btn-inline\"\r\n ><i class=\"icon icon-base-expand\" (click)=\"collapseAllNode(false)\"></i\r\n ></a>\r\n <a class=\"btn-inline\"\r\n ><i\r\n class=\"icon icon-base-collapse\"\r\n (click)=\"collapseAllNode(true)\"\r\n ></i\r\n ></a>\r\n </div>\r\n </div>\r\n <div\r\n [id]=\"name\"\r\n class=\"structure-tree single-root jstree jstree-1 jstree-default\"\r\n >\r\n <ul\r\n class=\"jstree-container-ul jstree-children jstree-no-dots jstree-striped jstree-wholerow-ul\"\r\n *ngIf=\"nodes && nodes.length\"\r\n >\r\n <li\r\n *ngFor=\"let node of nodes; let last = last\"\r\n class=\"jstree-node\"\r\n [ngClass]=\"{\r\n 'jstree-open': !node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-closed': node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-leaf': !node[childrenAttr].length,\r\n 'jstree-last': last\r\n }\"\r\n [id]=\"node[idAttr]\"\r\n >\r\n <div\r\n unselectable=\"on\"\r\n role=\"presentation\"\r\n class=\"jstree-wholerow\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n [ngClass]=\"{'jstree-wholerow-clicked': node === selectedNode, 'jstree-wholerow-hovered': node.hover}\"\r\n >\r\n &nbsp;\r\n </div>\r\n\r\n <i\r\n class=\"jstree-icon jstree-ocl\"\r\n role=\"presentation\"\r\n (click)=\"onCollapseClick(node)\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n ></i>\r\n\r\n <a\r\n class=\"jstree-anchor\"\r\n (click)=\"onClick(node)\"\r\n [ngClass]=\"{'jstree-clicked': node === selectedNode, 'jstreehovered': node.hover}\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"treefileicon; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n <span>{{node[textAttr]}}</span>\r\n </a>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"template; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n <sac-treeviewchild\r\n *ngIf=\"node[childrenAttr] && node[childrenAttr].length\"\r\n [fileicontemplate]=\"fileicontemplate\"\r\n [template]=\"template\"\r\n [collapseall]=\"collapseall\"\r\n [ngClass]=\"(node[collapseAttr]===true)?'collapse':'show'\"\r\n [data]=\"node[childrenAttr]\"\r\n [idAttr]=\"idAttr\"\r\n [parentAttr]=\"parentAttr\"\r\n [textAttr]=\"textAttr\"\r\n [prepareData]=\"false\"\r\n (onselecteditem)=\"sendMsgToParent($event)\"\r\n [(selectedid)]=\"selectedid\"\r\n >\r\n </sac-treeviewchild>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
1749
+ }] });
1750
+
1751
+ class SacTreeItemActionComponent extends SacTreeItemActionCommon {
1752
+ constructor(el) {
1753
+ super(el);
966
1754
  }
967
1755
  }
968
- SacWizardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacWizardComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
969
- SacWizardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacWizardComponent, selector: "sac-wizard", providers: [
970
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacWizardComponent }
971
- ], queries: [{ propertyName: "_wizardItems", predicate: SacWizardItemComponent }], usesInheritance: true, ngImport: i0, template: "<ul [id]=\"name\" class=\"nav nav-wizard\" role=\"tablist\">\r\n <li *ngFor=\"let item of _wizardItems\" class=\"nav-item\" [ngClass]=\"{ 'active': item._active, 'disabled': item._disabled, 'success': item._iscomplete }\"\r\n [ngStyle]=\"{'cursor': item._disabled ? 'not-allowed' : 'pointer'}\">\r\n <a role=\"tab\" (click)=\"selectStep(item)\">\r\n <div class=\"circle\">\r\n <span class=\"step\"></span>\r\n </div>\r\n </a>\r\n <div class=\"info\">\r\n <a (click)=\"selectStep(item)\">{{item.label}}</a>\r\n </div>\r\n </li>\r\n</ul>\r\n", directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
972
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacWizardComponent, decorators: [{
1756
+ SacTreeItemActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTreeItemActionComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
1757
+ SacTreeItemActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTreeItemActionComponent, selector: "sac-treeitemaction", usesInheritance: true, ngImport: i0, template: "<i class=\"{{transformClass(iconstyle)}}\" (mouseover)=\"item.hover=true\" (mouseout)=\"item.hover=false\" (click)=\"iconaction()\" ></i>" });
1758
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTreeItemActionComponent, decorators: [{
973
1759
  type: Component,
974
- args: [{ selector: 'sac-wizard', providers: [
975
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacWizardComponent }
976
- ], template: "<ul [id]=\"name\" class=\"nav nav-wizard\" role=\"tablist\">\r\n <li *ngFor=\"let item of _wizardItems\" class=\"nav-item\" [ngClass]=\"{ 'active': item._active, 'disabled': item._disabled, 'success': item._iscomplete }\"\r\n [ngStyle]=\"{'cursor': item._disabled ? 'not-allowed' : 'pointer'}\">\r\n <a role=\"tab\" (click)=\"selectStep(item)\">\r\n <div class=\"circle\">\r\n <span class=\"step\"></span>\r\n </div>\r\n </a>\r\n <div class=\"info\">\r\n <a (click)=\"selectStep(item)\">{{item.label}}</a>\r\n </div>\r\n </li>\r\n</ul>\r\n" }]
977
- }], propDecorators: { _wizardItems: [{
978
- type: ContentChildren,
979
- args: [SacWizardItemComponent]
980
- }] } });
1760
+ args: [{ selector: 'sac-treeitemaction', template: "<i class=\"{{transformClass(iconstyle)}}\" (mouseover)=\"item.hover=true\" (mouseout)=\"item.hover=false\" (click)=\"iconaction()\" ></i>" }]
1761
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
981
1762
 
982
- class SACBootstrap3WizardModule {
1763
+ class SACBootstrap3TtreeviewModule {
983
1764
  }
984
- SACBootstrap3WizardModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3WizardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
985
- SACBootstrap3WizardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3WizardModule, declarations: [SacWizardComponent, SacWizardItemComponent], imports: [CommonModule], exports: [SacWizardComponent, SacWizardItemComponent] });
986
- SACBootstrap3WizardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3WizardModule, imports: [[
1765
+ SACBootstrap3TtreeviewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TtreeviewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1766
+ SACBootstrap3TtreeviewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TtreeviewModule, declarations: [SacTreeViewComponent, SacTreeViewChildComponent, SacTreeItemActionComponent], imports: [CommonModule], exports: [SacTreeViewComponent, SacTreeViewChildComponent, SacTreeItemActionComponent] });
1767
+ SACBootstrap3TtreeviewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TtreeviewModule, imports: [[
987
1768
  CommonModule
988
1769
  ]] });
989
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3WizardModule, decorators: [{
1770
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TtreeviewModule, decorators: [{
990
1771
  type: NgModule,
991
1772
  args: [{
992
- declarations: [SacWizardComponent, SacWizardItemComponent],
1773
+ declarations: [SacTreeViewComponent, SacTreeViewChildComponent, SacTreeItemActionComponent],
993
1774
  imports: [
994
1775
  CommonModule
995
1776
  ],
996
- exports: [SacWizardComponent, SacWizardItemComponent]
1777
+ exports: [SacTreeViewComponent, SacTreeViewChildComponent, SacTreeItemActionComponent]
997
1778
  }]
998
1779
  }] });
999
1780
 
1000
1781
  // https://github.com/kukhariev/ngx-uploadx/
1001
1782
  class SacUploadComponent extends SacUploadSingleCommon {
1002
- constructor(parent, injector, renderer, ngZone) {
1003
- super(parent, injector, renderer, ngZone);
1783
+ // #region Constructors
1784
+ /**
1785
+ * Constructor
1786
+ * @param formLayout SacFormLayout to define scoped layout settings
1787
+ * @param injector Injector for injecting services
1788
+ * @param renderer Angular rendering engine
1789
+ * @param ngZone ngZone to manage external javascripts
1790
+ */
1791
+ constructor(formLayout, injector, renderer, ngZone) {
1792
+ super(formLayout, injector, renderer, ngZone);
1004
1793
  }
1005
1794
  }
1006
- SacUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacUploadComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1795
+ SacUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacUploadComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1007
1796
  SacUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacUploadComponent, selector: "sac-upload", providers: [
1008
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacUploadComponent },
1009
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacUploadComponent) }
1010
- ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isadaptivelabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"control-label\"\r\n [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n >\r\n <div class=\"input-group upload-component upload-single\">\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-input -->\r\n <div\r\n class=\"btn upload-input custom-file\"\r\n [class.disabled]=\"HasQueueItem()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <i [class]=\"IconBrowse\"></i>\r\n <span class=\"upload-browse\"\r\n >{{ lngResourceService.GetString('UPLOAD_BUTTON_BROWSE') | async\r\n }}</span\r\n >\r\n <input\r\n type=\"file\"\r\n class=\"custom-file-input\"\r\n #files\r\n (click)=\"files.value = ''\"\r\n (uploadxState)=\"onUpload($event)\"\r\n multiple\r\n [disabled]=\"HasQueueItem()\"\r\n />\r\n </div>\r\n </div>\r\n <div class=\"form-control upload-progress\">\r\n <div class=\"progress\">\r\n <div\r\n class=\"progress-bar\"\r\n [class.progress-bar-success]=\"Progress()===100\"\r\n role=\"progressbar\"\r\n [attr.aria-valuenow]=\"Progress()\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n [style.width.%]=\"Progress()\"\r\n >\r\n <span class=\"progress-text text-dark\"\r\n >{{ Filename() | async }}</span\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <input type=\"textimage-preview-filename\" class=\"form-control image-preview-filename\" disabled=\"disabled\"> --><!-- don't give a name === doesn't send on POST/GET -->\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancelAll()\"\r\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\r\n class=\"btn\"\r\n (click)=\"pauseAll()\"\r\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && IsPaused()\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;line-height:34px;height:34px;color:#000}\n"], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe } });
1797
+ {
1798
+ provide: NG_VALUE_ACCESSOR,
1799
+ multi: true,
1800
+ useExisting: SacUploadComponent,
1801
+ },
1802
+ {
1803
+ provide: NG_VALIDATORS,
1804
+ multi: true,
1805
+ useExisting: forwardRef(() => SacUploadComponent),
1806
+ },
1807
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"input-group upload-component upload-single\">\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-input -->\r\n <div\r\n class=\"btn upload-input custom-file\"\r\n [class.disabled]=\"HasQueueItem()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <i [class]=\"IconBrowse\"></i>\r\n <span class=\"upload-browse\"\r\n >{{ lngResourceService.GetString('UPLOAD_BUTTON_BROWSE') | async\r\n }}</span\r\n >\r\n <input\r\n type=\"file\"\r\n class=\"custom-file-input\"\r\n #files\r\n (click)=\"files.value = ''\"\r\n (uploadxState)=\"onUpload($event)\"\r\n multiple\r\n [disabled]=\"HasQueueItem()\"\r\n />\r\n </div>\r\n </div>\r\n <div class=\"form-control upload-progress\">\r\n <div class=\"progress\">\r\n <div\r\n class=\"progress-bar\"\r\n [class.progress-bar-success]=\"Progress()===100\"\r\n role=\"progressbar\"\r\n [attr.aria-valuenow]=\"Progress()\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n [style.width.%]=\"Progress()\"\r\n >\r\n <span class=\"progress-text text-dark\"\r\n >{{ Filename() | async }}</span\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <input type=\"textimage-preview-filename\" class=\"form-control image-preview-filename\" disabled=\"disabled\"> --><!-- don't give a name === doesn't send on POST/GET -->\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancelAll()\"\r\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\r\n class=\"btn\"\r\n (click)=\"pauseAll()\"\r\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && IsPaused()\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;line-height:34px;height:34px;color:#000}\n"], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
1011
1808
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacUploadComponent, decorators: [{
1012
1809
  type: Component,
1013
1810
  args: [{ selector: 'sac-upload', providers: [
1014
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacUploadComponent },
1015
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacUploadComponent) }
1016
- ], template: "<div\r\n class=\"form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isadaptivelabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"control-label\"\r\n [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n >\r\n <div class=\"input-group upload-component upload-single\">\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-input -->\r\n <div\r\n class=\"btn upload-input custom-file\"\r\n [class.disabled]=\"HasQueueItem()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <i [class]=\"IconBrowse\"></i>\r\n <span class=\"upload-browse\"\r\n >{{ lngResourceService.GetString('UPLOAD_BUTTON_BROWSE') | async\r\n }}</span\r\n >\r\n <input\r\n type=\"file\"\r\n class=\"custom-file-input\"\r\n #files\r\n (click)=\"files.value = ''\"\r\n (uploadxState)=\"onUpload($event)\"\r\n multiple\r\n [disabled]=\"HasQueueItem()\"\r\n />\r\n </div>\r\n </div>\r\n <div class=\"form-control upload-progress\">\r\n <div class=\"progress\">\r\n <div\r\n class=\"progress-bar\"\r\n [class.progress-bar-success]=\"Progress()===100\"\r\n role=\"progressbar\"\r\n [attr.aria-valuenow]=\"Progress()\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n [style.width.%]=\"Progress()\"\r\n >\r\n <span class=\"progress-text text-dark\"\r\n >{{ Filename() | async }}</span\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <input type=\"textimage-preview-filename\" class=\"form-control image-preview-filename\" disabled=\"disabled\"> --><!-- don't give a name === doesn't send on POST/GET -->\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancelAll()\"\r\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\r\n class=\"btn\"\r\n (click)=\"pauseAll()\"\r\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && IsPaused()\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;line-height:34px;height:34px;color:#000}\n"] }]
1811
+ {
1812
+ provide: NG_VALUE_ACCESSOR,
1813
+ multi: true,
1814
+ useExisting: SacUploadComponent,
1815
+ },
1816
+ {
1817
+ provide: NG_VALIDATORS,
1818
+ multi: true,
1819
+ useExisting: forwardRef(() => SacUploadComponent),
1820
+ },
1821
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"input-group upload-component upload-single\">\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-input -->\r\n <div\r\n class=\"btn upload-input custom-file\"\r\n [class.disabled]=\"HasQueueItem()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <i [class]=\"IconBrowse\"></i>\r\n <span class=\"upload-browse\"\r\n >{{ lngResourceService.GetString('UPLOAD_BUTTON_BROWSE') | async\r\n }}</span\r\n >\r\n <input\r\n type=\"file\"\r\n class=\"custom-file-input\"\r\n #files\r\n (click)=\"files.value = ''\"\r\n (uploadxState)=\"onUpload($event)\"\r\n multiple\r\n [disabled]=\"HasQueueItem()\"\r\n />\r\n </div>\r\n </div>\r\n <div class=\"form-control upload-progress\">\r\n <div class=\"progress\">\r\n <div\r\n class=\"progress-bar\"\r\n [class.progress-bar-success]=\"Progress()===100\"\r\n role=\"progressbar\"\r\n [attr.aria-valuenow]=\"Progress()\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n [style.width.%]=\"Progress()\"\r\n >\r\n <span class=\"progress-text text-dark\"\r\n >{{ Filename() | async }}</span\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <input type=\"textimage-preview-filename\" class=\"form-control image-preview-filename\" disabled=\"disabled\"> --><!-- don't give a name === doesn't send on POST/GET -->\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancelAll()\"\r\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\r\n class=\"btn\"\r\n (click)=\"pauseAll()\"\r\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && IsPaused()\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;line-height:34px;height:34px;color:#000}\n"] }]
1017
1822
  }], ctorParameters: function () {
1018
- return [{ type: SacFormDirective, decorators: [{
1823
+ return [{ type: SacFormLayoutDirective, decorators: [{
1019
1824
  type: Host
1020
1825
  }, {
1021
1826
  type: Optional
@@ -1024,11 +1829,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
1024
1829
 
1025
1830
  // https://github.com/kukhariev/ngx-uploadx/
1026
1831
  class SacUploadMultipleComponent extends SacUploadMultipleCommon {
1027
- constructor(parent, injector, renderer, ngZone) {
1028
- super(parent, injector, renderer, ngZone);
1832
+ // #region Constructors
1833
+ /**
1834
+ * Constructor
1835
+ * @param formLayout SacFormLayout to define scoped layout settings
1836
+ * @param injector Injector for injecting services
1837
+ * @param renderer Angular rendering engine
1838
+ * @param ngZone ngZone to manage external javascripts
1839
+ */
1840
+ constructor(formLayout, injector, renderer, ngZone) {
1841
+ super(formLayout, injector, renderer, ngZone);
1029
1842
  }
1030
1843
  }
1031
- SacUploadMultipleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacUploadMultipleComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1844
+ SacUploadMultipleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacUploadMultipleComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1032
1845
  SacUploadMultipleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacUploadMultipleComponent, selector: "sac-uploadmultiple", providers: [
1033
1846
  {
1034
1847
  provide: NG_VALUE_ACCESSOR,
@@ -1040,7 +1853,7 @@ SacUploadMultipleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0
1040
1853
  multi: true,
1041
1854
  useExisting: forwardRef(() => SacUploadMultipleComponent),
1042
1855
  },
1043
- ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isadaptivelabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"control-label\"\r\n [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n >\r\n <div class=\"upload-component\">\r\n <div class=\"row\">\r\n <div class=\"col-xs-12\">\r\n <div class=\"btn-group\">\r\n <div\r\n class=\"btn upload-input custom-file\"\r\n [class.disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <i [class]=\"IconBrowse\"></i>\r\n <span class=\"upload-browse\">Browse</span>\r\n <input\r\n type=\"file\"\r\n class=\"custom-file-input\"\r\n #files\r\n (click)=\"files.value = ''\"\r\n (uploadxState)=\"onUpload($event)\"\r\n multiple\r\n [disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\r\n />\r\n </div>\r\n\r\n <div class=\"btn-group\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancelAll()\"\r\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\r\n class=\"btn\"\r\n (click)=\"pauseAll()\"\r\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && IsPaused() === true\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngFor=\"let file of uploads\" style=\"margin-top: 5px\">\r\n <div class=\"input-group upload-component upload-multiple\">\r\n <div class=\"form-control upload-progress\">\r\n <div class=\"progress\">\r\n <div\r\n class=\"progress-bar\"\r\n [class.progress-bar-success]=\"file.progress===100\"\r\n role=\"progressbar\"\r\n [attr.aria-valuenow]=\"file.progress\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n [style.width.%]=\"file.progress\"\r\n >\r\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancel(file.uploadId)\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && file.status !== 'paused')\"\r\n class=\"btn\"\r\n (click)=\"pause(file.uploadId)\"\r\n [attr.disabled]=\"file.status !== 'uploading' ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && file.status === 'paused'\"\r\n class=\"btn\"\r\n (click)=\"upload(file.uploadId)\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"upload(file.uploadId)\"\r\n [attr.disabled]=\"file.status !== 'added' && file.status !== 'paused' ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;line-height:34px;height:34px;color:#000}\n"], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i2.AsyncPipe } });
1856
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"upload-component\">\r\n <div class=\"row\">\r\n <div class=\"col-xs-12\">\r\n <div class=\"btn-group\">\r\n <div\r\n class=\"btn upload-input custom-file\"\r\n [class.disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <i [class]=\"IconBrowse\"></i>\r\n <span class=\"upload-browse\">Browse</span>\r\n <input\r\n type=\"file\"\r\n class=\"custom-file-input\"\r\n #files\r\n (click)=\"files.value = ''\"\r\n (uploadxState)=\"onUpload($event)\"\r\n multiple\r\n [disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\r\n />\r\n </div>\r\n\r\n <div class=\"btn-group\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancelAll()\"\r\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\r\n class=\"btn\"\r\n (click)=\"pauseAll()\"\r\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && IsPaused() === true\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngFor=\"let file of uploads\" style=\"margin-top: 5px\">\r\n <div class=\"input-group upload-component upload-multiple\">\r\n <div class=\"form-control upload-progress\">\r\n <div class=\"progress\">\r\n <div\r\n class=\"progress-bar\"\r\n [class.progress-bar-success]=\"file.progress===100\"\r\n role=\"progressbar\"\r\n [attr.aria-valuenow]=\"file.progress\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n [style.width.%]=\"file.progress\"\r\n >\r\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancel(file.uploadId)\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && file.status !== 'paused')\"\r\n class=\"btn\"\r\n (click)=\"pause(file.uploadId)\"\r\n [attr.disabled]=\"file.status !== 'uploading' ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && file.status === 'paused'\"\r\n class=\"btn\"\r\n (click)=\"upload(file.uploadId)\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"upload(file.uploadId)\"\r\n [attr.disabled]=\"file.status !== 'added' && file.status !== 'paused' ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;line-height:34px;height:34px;color:#000}\n"], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "toLabelWidthCss": SacToLabelWidthCssPipe, "toControlWidthCss": SacToControlWidthCssPipe, "async": i2.AsyncPipe } });
1044
1857
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacUploadMultipleComponent, decorators: [{
1045
1858
  type: Component,
1046
1859
  args: [{ selector: 'sac-uploadmultiple', providers: [
@@ -1054,9 +1867,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
1054
1867
  multi: true,
1055
1868
  useExisting: forwardRef(() => SacUploadMultipleComponent),
1056
1869
  },
1057
- ], template: "<div\r\n class=\"form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isadaptivelabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"control-label\"\r\n [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\"\r\n >\r\n <div class=\"upload-component\">\r\n <div class=\"row\">\r\n <div class=\"col-xs-12\">\r\n <div class=\"btn-group\">\r\n <div\r\n class=\"btn upload-input custom-file\"\r\n [class.disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <i [class]=\"IconBrowse\"></i>\r\n <span class=\"upload-browse\">Browse</span>\r\n <input\r\n type=\"file\"\r\n class=\"custom-file-input\"\r\n #files\r\n (click)=\"files.value = ''\"\r\n (uploadxState)=\"onUpload($event)\"\r\n multiple\r\n [disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\r\n />\r\n </div>\r\n\r\n <div class=\"btn-group\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancelAll()\"\r\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\r\n class=\"btn\"\r\n (click)=\"pauseAll()\"\r\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && IsPaused() === true\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngFor=\"let file of uploads\" style=\"margin-top: 5px\">\r\n <div class=\"input-group upload-component upload-multiple\">\r\n <div class=\"form-control upload-progress\">\r\n <div class=\"progress\">\r\n <div\r\n class=\"progress-bar\"\r\n [class.progress-bar-success]=\"file.progress===100\"\r\n role=\"progressbar\"\r\n [attr.aria-valuenow]=\"file.progress\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n [style.width.%]=\"file.progress\"\r\n >\r\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancel(file.uploadId)\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && file.status !== 'paused')\"\r\n class=\"btn\"\r\n (click)=\"pause(file.uploadId)\"\r\n [attr.disabled]=\"file.status !== 'uploading' ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && file.status === 'paused'\"\r\n class=\"btn\"\r\n (click)=\"upload(file.uploadId)\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"upload(file.uploadId)\"\r\n [attr.disabled]=\"file.status !== 'added' && file.status !== 'paused' ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;line-height:34px;height:34px;color:#000}\n"] }]
1870
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"upload-component\">\r\n <div class=\"row\">\r\n <div class=\"col-xs-12\">\r\n <div class=\"btn-group\">\r\n <div\r\n class=\"btn upload-input custom-file\"\r\n [class.disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <i [class]=\"IconBrowse\"></i>\r\n <span class=\"upload-browse\">Browse</span>\r\n <input\r\n type=\"file\"\r\n class=\"custom-file-input\"\r\n #files\r\n (click)=\"files.value = ''\"\r\n (uploadxState)=\"onUpload($event)\"\r\n multiple\r\n [disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\r\n />\r\n </div>\r\n\r\n <div class=\"btn-group\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancelAll()\"\r\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\r\n class=\"btn\"\r\n (click)=\"pauseAll()\"\r\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && IsPaused() === true\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngFor=\"let file of uploads\" style=\"margin-top: 5px\">\r\n <div class=\"input-group upload-component upload-multiple\">\r\n <div class=\"form-control upload-progress\">\r\n <div class=\"progress\">\r\n <div\r\n class=\"progress-bar\"\r\n [class.progress-bar-success]=\"file.progress===100\"\r\n role=\"progressbar\"\r\n [attr.aria-valuenow]=\"file.progress\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n [style.width.%]=\"file.progress\"\r\n >\r\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancel(file.uploadId)\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && file.status !== 'paused')\"\r\n class=\"btn\"\r\n (click)=\"pause(file.uploadId)\"\r\n [attr.disabled]=\"file.status !== 'uploading' ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && file.status === 'paused'\"\r\n class=\"btn\"\r\n (click)=\"upload(file.uploadId)\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"upload(file.uploadId)\"\r\n [attr.disabled]=\"file.status !== 'added' && file.status !== 'paused' ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;line-height:34px;height:34px;color:#000}\n"] }]
1058
1871
  }], ctorParameters: function () {
1059
- return [{ type: SacFormDirective, decorators: [{
1872
+ return [{ type: SacFormLayoutDirective, decorators: [{
1060
1873
  type: Host
1061
1874
  }, {
1062
1875
  type: Optional
@@ -1066,139 +1879,155 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
1066
1879
  class SACBootstrap3UploadModule {
1067
1880
  }
1068
1881
  SACBootstrap3UploadModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3UploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1069
- SACBootstrap3UploadModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3UploadModule, declarations: [SacUploadComponent, SacUploadMultipleComponent], imports: [CommonModule, FormsModule], exports: [SacUploadComponent, SacUploadMultipleComponent] });
1070
- SACBootstrap3UploadModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3UploadModule, imports: [[
1071
- CommonModule, FormsModule
1072
- ]] });
1882
+ SACBootstrap3UploadModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3UploadModule, declarations: [SacUploadComponent, SacUploadMultipleComponent], imports: [CommonModule, FormsModule, SACBootstrap3LayoutModule], exports: [SacUploadComponent, SacUploadMultipleComponent] });
1883
+ SACBootstrap3UploadModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3UploadModule, imports: [[CommonModule, FormsModule, SACBootstrap3LayoutModule]] });
1073
1884
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3UploadModule, decorators: [{
1074
1885
  type: NgModule,
1075
1886
  args: [{
1076
1887
  declarations: [SacUploadComponent, SacUploadMultipleComponent],
1077
- imports: [
1078
- CommonModule, FormsModule
1079
- ],
1080
- exports: [SacUploadComponent, SacUploadMultipleComponent]
1888
+ imports: [CommonModule, FormsModule, SACBootstrap3LayoutModule],
1889
+ exports: [SacUploadComponent, SacUploadMultipleComponent],
1081
1890
  }]
1082
1891
  }] });
1083
1892
 
1084
- class SacConfirmComponent extends SacConfirmCommon {
1085
- }
1086
- SacConfirmComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacConfirmComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1087
- SacConfirmComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacConfirmComponent, selector: "sac-confirm", usesInheritance: true, ngImport: i0, template: "<sac-dialog [(isvisible)]=\"isvisible\" [title]=\"title\" [allowesc]=\"false\" [closebutton]=\"false\">\r\n <div dialogbody>\r\n <div class=\"media\">\r\n <div class=\"media-left media-middle\" *ngIf=\"hasImage()\">\r\n <img [attr.src]=\"image\" />\r\n </div>\r\n <div class=\"media-body\">{{message}}</div>\r\n </div>\r\n </div>\r\n <div dialogfooter>\r\n <ng-container *ngFor=\"let button of buttons\">\r\n <sac-button [name]=\"button.key\" [text]=\"button.text\" (clicked)=\"confirm(button.key)\" style=\"margin-left: 15px;\"></sac-button>\r\n </ng-container>\r\n </div>\r\n</sac-dialog>\r\n", components: [{ type: SacDialogComponent, selector: "sac-dialog", inputs: ["zindex"] }, { type: SacButtonComponent, selector: "sac-button" }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
1088
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacConfirmComponent, decorators: [{
1089
- type: Component,
1090
- args: [{ selector: 'sac-confirm', template: "<sac-dialog [(isvisible)]=\"isvisible\" [title]=\"title\" [allowesc]=\"false\" [closebutton]=\"false\">\r\n <div dialogbody>\r\n <div class=\"media\">\r\n <div class=\"media-left media-middle\" *ngIf=\"hasImage()\">\r\n <img [attr.src]=\"image\" />\r\n </div>\r\n <div class=\"media-body\">{{message}}</div>\r\n </div>\r\n </div>\r\n <div dialogfooter>\r\n <ng-container *ngFor=\"let button of buttons\">\r\n <sac-button [name]=\"button.key\" [text]=\"button.text\" (clicked)=\"confirm(button.key)\" style=\"margin-left: 15px;\"></sac-button>\r\n </ng-container>\r\n </div>\r\n</sac-dialog>\r\n" }]
1091
- }] });
1092
-
1093
1893
  /**
1094
- * Service für Confirm Messages in TypeScript Code
1894
+ * Erweiterung / Hooking für automatismen in Formular. Wird als Container für alle Controls benötigt.
1095
1895
  *
1096
- * @example
1097
- * // Beispiel für ConfirmMessage mit Standard Buttons (Ja / Nein).
1098
- * confirmService.ConfirmMessage('titel', 'frage').subscribe(action => { // Action Code });
1896
+ * @example Beispiel über Div Container
1099
1897
  *
1100
- * @example
1101
- * // Beispiel für ConfirmMessage mit eigenen Buttons
1102
- * let buttons: SacConfirmButton[] = [];
1103
- * buttons.push(new SacConfirmButton('ActionKey','Text Primary'));
1104
- * buttons.push(new SacConfirmButton('ActionKey2','Text Button 2'));
1105
- * confirmService.ConfirmMessage('titel', 'frage', buttons).subscribe(action => { // Action Code });
1898
+ * <div ngForm></div>
1899
+ *
1900
+ * @example Beispiel über Form Tag
1901
+ *
1902
+ * <form></form>
1106
1903
  */
1107
- class ServiceConfirm extends ServiceConfirmCommon {
1904
+ /* eslint @angular-eslint/directive-selector: 0 */
1905
+ class SacFormDirective extends SacFormCommon {
1906
+ // #endregion Properties
1907
+ // #region Constructors
1108
1908
  /**
1109
1909
  * Konstruktor
1110
- * @param componentFactoryResolver Component Factory Resolver Instanz
1111
- * @param appRef Application Referenz. Wird benötigt um den Dialog am Body anzuhängen
1112
- * @param injector Injector. Wird benötigt um den Dialog dynamisch zu erzeugen
1910
+ * @param form Instanz von NgForm für eigene automatische Formular Logik
1113
1911
  */
1114
- constructor(componentFactoryResolver, appRef, injector) {
1115
- super(appRef, injector);
1116
- this.componentFactoryResolver = componentFactoryResolver;
1117
- /**
1118
- * Titel der im Dialog angezeigt werden soll.
1119
- */
1120
- this.title = '';
1121
- /**
1122
- * Message die in Dialog angezeigt werden soll.
1123
- */
1124
- this.message = '';
1912
+ constructor(form) {
1913
+ super(form);
1914
+ // #region Properties
1125
1915
  /**
1126
- * Collection von Buttons die angezeigt werden müssen.
1916
+ * Setzt die Standard CSS Klasse für auf dem Form Container
1127
1917
  */
1128
- this.buttons = [];
1129
- }
1130
- /**
1131
- * Erzeugen einer Component Factory für einen Dialog
1132
- */
1133
- GetComponentFactory() {
1134
- return this.componentFactoryResolver.resolveComponentFactory(SacConfirmComponent);
1135
- }
1136
- /**
1137
- * Konfiguration des Dialogs
1138
- * @param instance Instanz eines SacConfirm Dialogs
1139
- */
1140
- ConfigureDialog(instance) {
1141
- // Text in Dialog setzen
1142
- instance.title = this.title;
1143
- instance.message = this.message;
1144
- instance.buttons = this.buttons;
1145
- instance.image = this.iconService.ConfirmDefaultImage;
1918
+ this.cssClassForm = true;
1146
1919
  }
1920
+ }
1921
+ SacFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacFormDirective, deps: [{ token: i3.NgForm }], target: i0.ɵɵFactoryTarget.Directive });
1922
+ SacFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.7", type: SacFormDirective, selector: "form:not([ngNoForm]):not([formGroup]),[ngForm]", host: { properties: { "class.form": "this.cssClassForm" } }, exportAs: ["sacform"], usesInheritance: true, ngImport: i0 });
1923
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacFormDirective, decorators: [{
1924
+ type: Directive,
1925
+ args: [{
1926
+ selector: 'form:not([ngNoForm]):not([formGroup]),[ngForm]',
1927
+ exportAs: 'sacform',
1928
+ }]
1929
+ }], ctorParameters: function () { return [{ type: i3.NgForm }]; }, propDecorators: { cssClassForm: [{
1930
+ type: HostBinding,
1931
+ args: ['class.form']
1932
+ }] } });
1933
+
1934
+ class SacValidationSummaryComponent extends SacValidationSummaryCommon {
1935
+ // #region Constructors
1147
1936
  /**
1148
- * Confirm Dialog anzeigen
1149
- * @param message Nachricht die angezeigt werden soll.
1150
- * @returns EventEmitter mit Key des Buttons, welcher geklickt wurde.
1937
+ * Constructor
1938
+ * @param formControl Instance of Form Component to receive invalid form controls
1939
+ * @param injector Injector for injecting services
1151
1940
  */
1152
- ConfirmMessage(title, message, buttons = null) {
1153
- this.title = title;
1154
- this.message = message;
1155
- // Default Buttons setzen, wenn keine Buttons angegeben sind
1156
- if (!isDefined(buttons)) {
1157
- // TODO: Text von Localisation Service beziehen
1158
- this.buttons = [];
1159
- this.buttons.push(new SacConfirmButton('yes', 'Ja'));
1160
- this.buttons.push(new SacConfirmButton('no', 'Nein'));
1161
- }
1162
- else {
1163
- this.buttons = buttons;
1164
- }
1165
- return super.Confirm();
1941
+ constructor(formControl, injector) {
1942
+ super(formControl, injector);
1166
1943
  }
1167
1944
  }
1168
- ServiceConfirm.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ServiceConfirm, deps: [{ token: ComponentFactoryResolver }, { token: i0.ApplicationRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
1169
- ServiceConfirmprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ServiceConfirm });
1170
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ServiceConfirm, decorators: [{
1171
- type: Injectable
1945
+ SacValidationSummaryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacValidationSummaryComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
1946
+ SacValidationSummaryComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacValidationSummaryComponent, selector: "sac-validationsummary", providers: [
1947
+ {
1948
+ provide: NG_VALUE_ACCESSOR,
1949
+ multi: true,
1950
+ useExisting: SacValidationSummaryComponent,
1951
+ },
1952
+ ], usesInheritance: true, ngImport: i0, template: "<div class=\"alert alert-danger\" role=\"alert\" *ngIf=\"hasErrors\" [id]=\"name\">\r\n <ul>\r\n <li *ngFor=\"let error of formErrors\">\r\n {{error | async}}\r\n </li>\r\n </ul>\r\n</div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i2.AsyncPipe }, viewProviders: [{ provide: ControlContainer, useExisting: SacFormDirective }] });
1953
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacValidationSummaryComponent, decorators: [{
1954
+ type: Component,
1955
+ args: [{ selector: 'sac-validationsummary', providers: [
1956
+ {
1957
+ provide: NG_VALUE_ACCESSOR,
1958
+ multi: true,
1959
+ useExisting: SacValidationSummaryComponent,
1960
+ },
1961
+ ], viewProviders: [{ provide: ControlContainer, useExisting: SacFormDirective }], template: "<div class=\"alert alert-danger\" role=\"alert\" *ngIf=\"hasErrors\" [id]=\"name\">\r\n <ul>\r\n <li *ngFor=\"let error of formErrors\">\r\n {{error | async}}\r\n </li>\r\n </ul>\r\n</div>\r\n" }]
1172
1962
  }], ctorParameters: function () {
1173
- return [{ type: i0.ComponentFactoryResolver, decorators: [{
1174
- type: Inject,
1175
- args: [ComponentFactoryResolver]
1176
- }] }, { type: i0.ApplicationRef }, { type: i0.Injector }];
1963
+ return [{ type: SacFormDirective, decorators: [{
1964
+ type: Host
1965
+ }, {
1966
+ type: Optional
1967
+ }] }, { type: i0.Injector }];
1177
1968
  } });
1178
1969
 
1179
- /**
1180
- * Module für Confirm Messages
1181
- *
1182
- * In NgModule der Applikation folgenden Eintrag bei Imports einfügen: ExanicBootstrap3ConfirmModule.forRoot()
1183
- *
1184
- */
1185
- class SACBootstrap3ConfirmModule {
1186
- static forRoot() {
1187
- return {
1188
- ngModule: SACBootstrap3ConfirmModule,
1189
- providers: [ServiceConfirm]
1190
- };
1191
- }
1970
+ class SACBootstrap3ValidationSummaryModule {
1971
+ }
1972
+ SACBootstrap3ValidationSummaryModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1973
+ SACBootstrap3ValidationSummaryModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, declarations: [SacValidationSummaryComponent], imports: [CommonModule], exports: [SacValidationSummaryComponent] });
1974
+ SACBootstrap3ValidationSummaryModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, imports: [[
1975
+ CommonModule
1976
+ ]] });
1977
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, decorators: [{
1978
+ type: NgModule,
1979
+ args: [{
1980
+ declarations: [SacValidationSummaryComponent],
1981
+ imports: [
1982
+ CommonModule
1983
+ ],
1984
+ exports: [SacValidationSummaryComponent]
1985
+ }]
1986
+ }] });
1987
+
1988
+ class SacWizardItemComponent extends SacWizardItemCommon {
1989
+ }
1990
+ SacWizardItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacWizardItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1991
+ SacWizardItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacWizardItemComponent, selector: "sac-wizarditem", usesInheritance: true, ngImport: i0, template: "" });
1992
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacWizardItemComponent, decorators: [{
1993
+ type: Component,
1994
+ args: [{ selector: 'sac-wizarditem', template: "" }]
1995
+ }] });
1996
+
1997
+ class SacWizardComponent extends SacWizardCommon {
1998
+ wizardItems() {
1999
+ return this._wizardItems;
2000
+ }
2001
+ }
2002
+ SacWizardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacWizardComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
2003
+ SacWizardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacWizardComponent, selector: "sac-wizard", providers: [
2004
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacWizardComponent }
2005
+ ], queries: [{ propertyName: "_wizardItems", predicate: SacWizardItemComponent }], usesInheritance: true, ngImport: i0, template: "<ul [id]=\"name\" class=\"nav nav-wizard\" role=\"tablist\">\r\n <li *ngFor=\"let item of _wizardItems\" class=\"nav-item\" [ngClass]=\"{ 'active': item._active, 'disabled': item._disabled, 'success': item._iscomplete }\"\r\n [ngStyle]=\"{'cursor': item._disabled ? 'not-allowed' : 'pointer'}\">\r\n <a role=\"tab\" (click)=\"selectStep(item)\">\r\n <div class=\"circle\">\r\n <span class=\"step\"></span>\r\n </div>\r\n </a>\r\n <div class=\"info\">\r\n <a (click)=\"selectStep(item)\">{{item.label}}</a>\r\n </div>\r\n </li>\r\n</ul>\r\n", directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
2006
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacWizardComponent, decorators: [{
2007
+ type: Component,
2008
+ args: [{ selector: 'sac-wizard', providers: [
2009
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacWizardComponent }
2010
+ ], template: "<ul [id]=\"name\" class=\"nav nav-wizard\" role=\"tablist\">\r\n <li *ngFor=\"let item of _wizardItems\" class=\"nav-item\" [ngClass]=\"{ 'active': item._active, 'disabled': item._disabled, 'success': item._iscomplete }\"\r\n [ngStyle]=\"{'cursor': item._disabled ? 'not-allowed' : 'pointer'}\">\r\n <a role=\"tab\" (click)=\"selectStep(item)\">\r\n <div class=\"circle\">\r\n <span class=\"step\"></span>\r\n </div>\r\n </a>\r\n <div class=\"info\">\r\n <a (click)=\"selectStep(item)\">{{item.label}}</a>\r\n </div>\r\n </li>\r\n</ul>\r\n" }]
2011
+ }], propDecorators: { _wizardItems: [{
2012
+ type: ContentChildren,
2013
+ args: [SacWizardItemComponent]
2014
+ }] } });
2015
+
2016
+ class SACBootstrap3WizardModule {
1192
2017
  }
1193
- SACBootstrap3ConfirmModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ConfirmModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1194
- SACBootstrap3ConfirmModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ConfirmModule, declarations: [SacConfirmComponent], imports: [CommonModule, SACBootstrap3DialogModule, SACBootstrap3ButtonModule], exports: [SacConfirmComponent] });
1195
- SACBootstrap3ConfirmModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ConfirmModule, imports: [[CommonModule, SACBootstrap3DialogModule, SACBootstrap3ButtonModule]] });
1196
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ConfirmModule, decorators: [{
2018
+ SACBootstrap3WizardModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3WizardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2019
+ SACBootstrap3WizardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3WizardModule, declarations: [SacWizardComponent, SacWizardItemComponent], imports: [CommonModule], exports: [SacWizardComponent, SacWizardItemComponent] });
2020
+ SACBootstrap3WizardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3WizardModule, imports: [[
2021
+ CommonModule
2022
+ ]] });
2023
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3WizardModule, decorators: [{
1197
2024
  type: NgModule,
1198
2025
  args: [{
1199
- declarations: [SacConfirmComponent],
1200
- imports: [CommonModule, SACBootstrap3DialogModule, SACBootstrap3ButtonModule],
1201
- exports: [SacConfirmComponent]
2026
+ declarations: [SacWizardComponent, SacWizardItemComponent],
2027
+ imports: [
2028
+ CommonModule
2029
+ ],
2030
+ exports: [SacWizardComponent, SacWizardItemComponent]
1202
2031
  }]
1203
2032
  }] });
1204
2033
 
@@ -1284,239 +2113,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
1284
2113
  class SACBootstrap3FormModule {
1285
2114
  }
1286
2115
  SACBootstrap3FormModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3FormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1287
- SACBootstrap3FormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3FormModule, declarations: [SacFormDirective, SacInheritFormDirective], imports: [CommonModule,
1288
- FormsModule], exports: [SacFormDirective, SacInheritFormDirective] });
1289
- SACBootstrap3FormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3FormModule, imports: [[
1290
- CommonModule,
1291
- FormsModule
1292
- ]] });
2116
+ SACBootstrap3FormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3FormModule, declarations: [SacFormDirective, SacInheritFormDirective], imports: [CommonModule, FormsModule], exports: [SacFormDirective, SacInheritFormDirective] });
2117
+ SACBootstrap3FormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3FormModule, imports: [[CommonModule, FormsModule]] });
1293
2118
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3FormModule, decorators: [{
1294
2119
  type: NgModule,
1295
2120
  args: [{
1296
2121
  declarations: [SacFormDirective, SacInheritFormDirective],
1297
- imports: [
1298
- CommonModule,
1299
- FormsModule
1300
- ],
1301
- exports: [
1302
- SacFormDirective, SacInheritFormDirective
1303
- ]
1304
- }]
1305
- }] });
1306
-
1307
- class SacPagingComponent extends SacPagingCommon {
1308
- /**
1309
- * Konstruktor
1310
- */
1311
- constructor(injector) { super(injector); }
1312
- }
1313
- SacPagingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacPagingComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
1314
- SacPagingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacPagingComponent, selector: "sac-paging", providers: [
1315
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacPagingComponent },
1316
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacPagingComponent) }
1317
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"pager-nav col-sm-9\" id=\"{{name}}\">\r\n <ul class=\"pagination\" style=\"margin: 10px 0\">\r\n <li\r\n [ngClass]=\"{'aspNetDisabled disabled': activePageIndex === firstPageIndex}\"\r\n >\r\n <a (click)=\"firstPage()\">\u00AB</a>\r\n </li>\r\n <li\r\n *ngFor=\"let page of paginators; let i = index\"\r\n [ngClass]=\"{'active': page === activePageIndex}\"\r\n >\r\n <a (click)=\"changePage(page)\">{{page + 1 }}</a>\r\n </li>\r\n <li\r\n [ngClass]=\"{'aspNetDisabled disabled': activePageIndex === lastPageIndex}\"\r\n >\r\n <a (click)=\"lastPage()\">\u00BB</a>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"col-sm-3 text-right\" style=\"margin: 20px 0\">\r\n Seite {{getCurrentPageNumber()}} von {{getTotalPageNumber()}}\r\n </div>\r\n</div>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
1318
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacPagingComponent, decorators: [{
1319
- type: Component,
1320
- args: [{ selector: 'sac-paging', providers: [
1321
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacPagingComponent },
1322
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacPagingComponent) }
1323
- ], template: "<div class=\"row\">\r\n <div class=\"pager-nav col-sm-9\" id=\"{{name}}\">\r\n <ul class=\"pagination\" style=\"margin: 10px 0\">\r\n <li\r\n [ngClass]=\"{'aspNetDisabled disabled': activePageIndex === firstPageIndex}\"\r\n >\r\n <a (click)=\"firstPage()\">\u00AB</a>\r\n </li>\r\n <li\r\n *ngFor=\"let page of paginators; let i = index\"\r\n [ngClass]=\"{'active': page === activePageIndex}\"\r\n >\r\n <a (click)=\"changePage(page)\">{{page + 1 }}</a>\r\n </li>\r\n <li\r\n [ngClass]=\"{'aspNetDisabled disabled': activePageIndex === lastPageIndex}\"\r\n >\r\n <a (click)=\"lastPage()\">\u00BB</a>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"col-sm-3 text-right\" style=\"margin: 20px 0\">\r\n Seite {{getCurrentPageNumber()}} von {{getTotalPageNumber()}}\r\n </div>\r\n</div>\r\n" }]
1324
- }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
1325
-
1326
- class SacGridComponent extends SacGridCommon {
1327
- constructor() {
1328
- super(...arguments);
1329
- this.ellipsis = false;
1330
- }
1331
- }
1332
- SacGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1333
- SacGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacGridComponent, selector: "sac-grid", providers: [
1334
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacGridComponent },
1335
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacGridComponent) }
1336
- ], queries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<table class=\"table table-striped table-condensed table-hover\" id={{name}}>\r\n <thead>\r\n <tr>\r\n <ng-container *ngTemplateOutlet=\"template; context { row: {}, type: 'header'}\">\r\n </ng-container>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <ng-container *ngFor=\"let item of value; let i=index\">\r\n <tr>\r\n <ng-container *ngTemplateOutlet=\"template; context { row: item, type: 'body'}\">\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n <tr *ngIf=\"value === undefined || value === null || value.length === 0\">\r\n <td [attr.colspan]=\"ColumnCount\">{{emptytext}}</td>\r\n </tr>\r\n <tr>\r\n <td [attr.colspan]=\"ColumnCount\">\r\n <div class=\"container-fluid\">\r\n <sac-paging name=\"{{name}}Paging\" (paging)=\"pageChange($event)\" [pagerdata]=\"pagerdata\" [pagingtext]=\"pagingtext\" [pagesizetext]=\"pagesizetext\"></sac-paging>\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n", components: [{ type: SacPagingComponent, selector: "sac-paging" }], directives: [{ type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1337
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridComponent, decorators: [{
1338
- type: Component,
1339
- args: [{ selector: 'sac-grid', providers: [
1340
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacGridComponent },
1341
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacGridComponent) }
1342
- ], template: "<table class=\"table table-striped table-condensed table-hover\" id={{name}}>\r\n <thead>\r\n <tr>\r\n <ng-container *ngTemplateOutlet=\"template; context { row: {}, type: 'header'}\">\r\n </ng-container>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <ng-container *ngFor=\"let item of value; let i=index\">\r\n <tr>\r\n <ng-container *ngTemplateOutlet=\"template; context { row: item, type: 'body'}\">\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n <tr *ngIf=\"value === undefined || value === null || value.length === 0\">\r\n <td [attr.colspan]=\"ColumnCount\">{{emptytext}}</td>\r\n </tr>\r\n <tr>\r\n <td [attr.colspan]=\"ColumnCount\">\r\n <div class=\"container-fluid\">\r\n <sac-paging name=\"{{name}}Paging\" (paging)=\"pageChange($event)\" [pagerdata]=\"pagerdata\" [pagingtext]=\"pagingtext\" [pagesizetext]=\"pagesizetext\"></sac-paging>\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n" }]
1343
- }], propDecorators: { template: [{
1344
- type: ContentChild,
1345
- args: [TemplateRef, { static: true }]
1346
- }] } });
1347
-
1348
- class SacGridColumnComponent extends SacGridColumnCommon {
1349
- constructor(grid, injector, el) {
1350
- super(grid, injector, el);
1351
- }
1352
- }
1353
- SacGridColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridColumnComponent, deps: [{ token: SacGridComponent }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
1354
- SacGridColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacGridColumnComponent, selector: "sac-gridcolumn", providers: [
1355
- {
1356
- provide: SacGridColumnBaseCommon,
1357
- useExisting: forwardRef(() => SacGridColumnComponent),
1358
- },
1359
- ], usesInheritance: true, ngImport: i0, template: "<th\r\n scope=\"col\"\r\n *ngIf=\"IsHeader()\"\r\n [style.width]=\"width\"\r\n (click)=\"SortByColumn()\"\r\n>\r\n <span>{{header}}</span>\r\n <span\r\n [class]=\"IconSortUp\"\r\n style=\"padding-left: 0.5rem\"\r\n *ngIf=\"IsSortedColumn() && GetSortDirection() ==='asc'\"\r\n ></span>\r\n <span\r\n [class]=\"IconSortDown\"\r\n style=\"padding-left: 0.5rem\"\r\n *ngIf=\"IsSortedColumn() && GetSortDirection() ==='desc'\"\r\n ></span>\r\n</th>\r\n<td\r\n scope=\"col\"\r\n *ngIf=\"IsBody()\"\r\n [style.width]=\"width\"\r\n [class.ellipsis]=\"IsEllipsis()\"\r\n>\r\n <span [attr.title]=\"IsEllipsis() ? value : null\"> {{value}} </span>\r\n</td>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1360
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridColumnComponent, decorators: [{
1361
- type: Component,
1362
- args: [{ selector: 'sac-gridcolumn', providers: [
1363
- {
1364
- provide: SacGridColumnBaseCommon,
1365
- useExisting: forwardRef(() => SacGridColumnComponent),
1366
- },
1367
- ], template: "<th\r\n scope=\"col\"\r\n *ngIf=\"IsHeader()\"\r\n [style.width]=\"width\"\r\n (click)=\"SortByColumn()\"\r\n>\r\n <span>{{header}}</span>\r\n <span\r\n [class]=\"IconSortUp\"\r\n style=\"padding-left: 0.5rem\"\r\n *ngIf=\"IsSortedColumn() && GetSortDirection() ==='asc'\"\r\n ></span>\r\n <span\r\n [class]=\"IconSortDown\"\r\n style=\"padding-left: 0.5rem\"\r\n *ngIf=\"IsSortedColumn() && GetSortDirection() ==='desc'\"\r\n ></span>\r\n</th>\r\n<td\r\n scope=\"col\"\r\n *ngIf=\"IsBody()\"\r\n [style.width]=\"width\"\r\n [class.ellipsis]=\"IsEllipsis()\"\r\n>\r\n <span [attr.title]=\"IsEllipsis() ? value : null\"> {{value}} </span>\r\n</td>\r\n" }]
1368
- }], ctorParameters: function () { return [{ type: SacGridComponent }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
1369
-
1370
- /**
1371
- * Grid Action Button
1372
- *
1373
- * @example Standard Action
1374
- *
1375
- * <ngGridButton icon="edit" (clicked)="action('edit')" [isdisabled]="true"></ngGridButton>
1376
- *
1377
- * @example Custom Action
1378
- *
1379
- * <ngGridButton iconstyle="sprite" icon="icon-sprite-base-main_info" (clicked)="action('info')"></ngGridButton>
1380
- *
1381
- */
1382
- class SacGridButtonComponent extends SacGridButtonCommon {
1383
- /**
1384
- * Gibt das Icon für den Button zurück
1385
- */
1386
- getIconClass() {
1387
- let iconset = this.iconstyle;
1388
- let iconcss = this.icon;
1389
- if (iconset === '') {
1390
- switch (this.icon) {
1391
- case 'edit':
1392
- iconset = 'sprite';
1393
- iconcss = 'icon-sprite-base-main_edit';
1394
- break;
1395
- case 'delete':
1396
- iconset = 'sprite';
1397
- iconcss = 'icon-sprite-base-main_delete';
1398
- break;
1399
- }
1400
- }
1401
- if (this._isdisabledvalue) {
1402
- iconcss += '_disabled';
1403
- }
1404
- const result = iconset + ' ' + iconcss;
1405
- return result.trim();
1406
- }
1407
- }
1408
- SacGridButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1409
- SacGridButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacGridButtonComponent, selector: "sac-gridbutton", usesInheritance: true, ngImport: i0, template: "<a (click)=\"callaction()\" style=\"padding-right: 5px;\" [class.disabled]=\"isdisabled\" [attr.disabled]=\"isdisabled ? 'disabled' : null\"><span class=\"{{getIconClass()}}\"></span></a>\r\n" });
1410
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridButtonComponent, decorators: [{
1411
- type: Component,
1412
- args: [{ selector: 'sac-gridbutton', template: "<a (click)=\"callaction()\" style=\"padding-right: 5px;\" [class.disabled]=\"isdisabled\" [attr.disabled]=\"isdisabled ? 'disabled' : null\"><span class=\"{{getIconClass()}}\"></span></a>\r\n" }]
1413
- }] });
1414
-
1415
- class SacGridColumnActionComponent extends SacGridColumnActionCommon {
1416
- constructor(grid, injector, el) {
1417
- super(grid, injector, el);
1418
- this.width = '52px';
1419
- }
1420
- }
1421
- SacGridColumnActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridColumnActionComponent, deps: [{ token: SacGridComponent }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
1422
- SacGridColumnActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacGridColumnActionComponent, selector: "sac-gridcolumnaction", providers: [
1423
- {
1424
- provide: SacGridColumnBaseCommon,
1425
- useExisting: forwardRef(() => SacGridColumnActionComponent),
1426
- },
1427
- ], usesInheritance: true, ngImport: i0, template: "<th scope=\"col\" *ngIf=\"IsHeader()\" [style.width]=\"width\"><span></span></th>\r\n<td scope=\"col\" *ngIf=\"IsBody()\">\r\n <ng-content></ng-content>\r\n</td>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1428
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridColumnActionComponent, decorators: [{
1429
- type: Component,
1430
- args: [{ selector: 'sac-gridcolumnaction', providers: [
1431
- {
1432
- provide: SacGridColumnBaseCommon,
1433
- useExisting: forwardRef(() => SacGridColumnActionComponent),
1434
- },
1435
- ], template: "<th scope=\"col\" *ngIf=\"IsHeader()\" [style.width]=\"width\"><span></span></th>\r\n<td scope=\"col\" *ngIf=\"IsBody()\">\r\n <ng-content></ng-content>\r\n</td>\r\n" }]
1436
- }], ctorParameters: function () { return [{ type: SacGridComponent }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
1437
-
1438
- class SacGridImageComponent extends SacGridImageCommon {
1439
- getIconClass() {
1440
- switch (this.iconstyle) {
1441
- case 'edit':
1442
- return 'sprite icon-sprite-base-main_edit';
1443
- case 'delete':
1444
- return 'sprite icon-sprite-base-main_delete';
1445
- default:
1446
- return this.iconstyle;
1447
- }
1448
- }
1449
- }
1450
- SacGridImageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridImageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1451
- SacGridImageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacGridImageComponent, selector: "sac-gridimage", usesInheritance: true, ngImport: i0, template: "<span style=\"padding-right: 5px;\"><span class=\"{{getIconClass()}}\"></span></span>\r\n" });
1452
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacGridImageComponent, decorators: [{
1453
- type: Component,
1454
- args: [{ selector: 'sac-gridimage', template: "<span style=\"padding-right: 5px;\"><span class=\"{{getIconClass()}}\"></span></span>\r\n" }]
1455
- }] });
1456
-
1457
- class SACBootstrap3GridModule {
1458
- }
1459
- SACBootstrap3GridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3GridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1460
- SACBootstrap3GridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3GridModule, declarations: [SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent], imports: [CommonModule], exports: [SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent] });
1461
- SACBootstrap3GridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3GridModule, imports: [[
1462
- CommonModule
1463
- ]] });
1464
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3GridModule, decorators: [{
1465
- type: NgModule,
1466
- args: [{
1467
- declarations: [SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent],
1468
- imports: [
1469
- CommonModule
1470
- ],
1471
- exports: [SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent]
1472
- }]
1473
- }] });
1474
-
1475
- class SacTreeViewChildComponent extends SacTreeViewChildCommon {
1476
- }
1477
- SacTreeViewChildComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTreeViewChildComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1478
- SacTreeViewChildComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTreeViewChildComponent, selector: "sac-treeviewchild", usesInheritance: true, ngImport: i0, template: "<ul class=\"jstree-children\" *ngIf=\"nodes && nodes.length\">\r\n <li\r\n *ngFor=\"let node of nodes; let last = last\"\r\n class=\"jstree-node\"\r\n [ngClass]=\"{\r\n 'jstree-open': !node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-closed': node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-leaf': !node[childrenAttr].length,\r\n 'jstree-last': last\r\n }\"\r\n [id]=\"node[idAttr]\"\r\n >\r\n <div\r\n unselectable=\"on\"\r\n role=\"presentation\"\r\n class=\"jstree-wholerow\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n [ngClass]=\"{'jstree-wholerow-clicked': node === selectedNode, 'jstree-wholerow-hovered': node.hover}\"\r\n >\r\n &nbsp;\r\n </div>\r\n\r\n <i\r\n class=\"jstree-icon jstree-ocl\"\r\n role=\"presentation\"\r\n (click)=\"onCollapseClick(node)\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n ></i>\r\n\r\n <a\r\n class=\"jstree-anchor\"\r\n (click)=\"onClick(node)\"\r\n [ngClass]=\"{'jstree-clicked': node === selectedNode, 'jstreehovered': node.hover}\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"treefileicon; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n {{node[textAttr]}}\r\n </a>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"template; context { item: node }\"\r\n ></ng-container>\r\n\r\n <sac-treeviewchild\r\n *ngIf=\"node[childrenAttr] && node[childrenAttr].length\"\r\n [fileicontemplate]=\"fileicontemplate\"\r\n [template]=\"template\"\r\n [collapseall]=\"collapseall\"\r\n [ngClass]=\"(node[collapseAttr]===true)?'collapse':'show'\"\r\n [data]=\"node[childrenAttr]\"\r\n [idAttr]=\"idAttr\"\r\n [parentAttr]=\"parentAttr\"\r\n [textAttr]=\"textAttr\"\r\n [prepareData]=\"false\"\r\n (onselecteditem)=\"sendMsgToParent($event)\"\r\n [(selectedid)]=\"selectedid\"\r\n >\r\n </sac-treeviewchild>\r\n </li>\r\n</ul>\r\n", components: [{ type: SacTreeViewChildComponent, selector: "sac-treeviewchild" }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
1479
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTreeViewChildComponent, decorators: [{
1480
- type: Component,
1481
- args: [{ selector: 'sac-treeviewchild', template: "<ul class=\"jstree-children\" *ngIf=\"nodes && nodes.length\">\r\n <li\r\n *ngFor=\"let node of nodes; let last = last\"\r\n class=\"jstree-node\"\r\n [ngClass]=\"{\r\n 'jstree-open': !node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-closed': node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-leaf': !node[childrenAttr].length,\r\n 'jstree-last': last\r\n }\"\r\n [id]=\"node[idAttr]\"\r\n >\r\n <div\r\n unselectable=\"on\"\r\n role=\"presentation\"\r\n class=\"jstree-wholerow\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n [ngClass]=\"{'jstree-wholerow-clicked': node === selectedNode, 'jstree-wholerow-hovered': node.hover}\"\r\n >\r\n &nbsp;\r\n </div>\r\n\r\n <i\r\n class=\"jstree-icon jstree-ocl\"\r\n role=\"presentation\"\r\n (click)=\"onCollapseClick(node)\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n ></i>\r\n\r\n <a\r\n class=\"jstree-anchor\"\r\n (click)=\"onClick(node)\"\r\n [ngClass]=\"{'jstree-clicked': node === selectedNode, 'jstreehovered': node.hover}\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"treefileicon; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n {{node[textAttr]}}\r\n </a>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"template; context { item: node }\"\r\n ></ng-container>\r\n\r\n <sac-treeviewchild\r\n *ngIf=\"node[childrenAttr] && node[childrenAttr].length\"\r\n [fileicontemplate]=\"fileicontemplate\"\r\n [template]=\"template\"\r\n [collapseall]=\"collapseall\"\r\n [ngClass]=\"(node[collapseAttr]===true)?'collapse':'show'\"\r\n [data]=\"node[childrenAttr]\"\r\n [idAttr]=\"idAttr\"\r\n [parentAttr]=\"parentAttr\"\r\n [textAttr]=\"textAttr\"\r\n [prepareData]=\"false\"\r\n (onselecteditem)=\"sendMsgToParent($event)\"\r\n [(selectedid)]=\"selectedid\"\r\n >\r\n </sac-treeviewchild>\r\n </li>\r\n</ul>\r\n" }]
1482
- }] });
1483
-
1484
- class SacTreeViewComponent extends SacTreeViewCommon {
1485
- }
1486
- SacTreeViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTreeViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1487
- SacTreeViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTreeViewComponent, selector: "sac-treeview", usesInheritance: true, ngImport: i0, template: "<div class=\"structure panel panel-default\" icon=\"Structure\">\r\n <div class=\"panel-heading\">\r\n <p class=\"panel-title\"><span>{{ name }}</span></p>\r\n </div>\r\n <div class=\"panel-body\">\r\n <div class=\"right\">\r\n <div\r\n class=\"form-submit form-inline\"\r\n style=\"text-align: right; height: 24px\"\r\n >\r\n <a class=\"btn-inline\"\r\n ><i class=\"icon icon-base-expand\" (click)=\"collapseAllNode(false)\"></i\r\n ></a>\r\n <a class=\"btn-inline\"\r\n ><i\r\n class=\"icon icon-base-collapse\"\r\n (click)=\"collapseAllNode(true)\"\r\n ></i\r\n ></a>\r\n </div>\r\n </div>\r\n <div\r\n [id]=\"name\"\r\n class=\"structure-tree single-root jstree jstree-1 jstree-default\"\r\n >\r\n <ul\r\n class=\"jstree-container-ul jstree-children jstree-no-dots jstree-striped jstree-wholerow-ul\"\r\n *ngIf=\"nodes && nodes.length\"\r\n >\r\n <li\r\n *ngFor=\"let node of nodes; let last = last\"\r\n class=\"jstree-node\"\r\n [ngClass]=\"{\r\n 'jstree-open': !node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-closed': node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-leaf': !node[childrenAttr].length,\r\n 'jstree-last': last\r\n }\"\r\n [id]=\"node[idAttr]\"\r\n >\r\n <div\r\n unselectable=\"on\"\r\n role=\"presentation\"\r\n class=\"jstree-wholerow\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n [ngClass]=\"{'jstree-wholerow-clicked': node === selectedNode, 'jstree-wholerow-hovered': node.hover}\"\r\n >\r\n &nbsp;\r\n </div>\r\n\r\n <i\r\n class=\"jstree-icon jstree-ocl\"\r\n role=\"presentation\"\r\n (click)=\"onCollapseClick(node)\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n ></i>\r\n\r\n <a\r\n class=\"jstree-anchor\"\r\n (click)=\"onClick(node)\"\r\n [ngClass]=\"{'jstree-clicked': node === selectedNode, 'jstreehovered': node.hover}\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"treefileicon; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n <span>{{node[textAttr]}}</span>\r\n </a>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"template; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n <sac-treeviewchild\r\n *ngIf=\"node[childrenAttr] && node[childrenAttr].length\"\r\n [fileicontemplate]=\"fileicontemplate\"\r\n [template]=\"template\"\r\n [collapseall]=\"collapseall\"\r\n [ngClass]=\"(node[collapseAttr]===true)?'collapse':'show'\"\r\n [data]=\"node[childrenAttr]\"\r\n [idAttr]=\"idAttr\"\r\n [parentAttr]=\"parentAttr\"\r\n [textAttr]=\"textAttr\"\r\n [prepareData]=\"false\"\r\n (onselecteditem)=\"sendMsgToParent($event)\"\r\n [(selectedid)]=\"selectedid\"\r\n >\r\n </sac-treeviewchild>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n", components: [{ type: SacTreeViewChildComponent, selector: "sac-treeviewchild" }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
1488
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTreeViewComponent, decorators: [{
1489
- type: Component,
1490
- args: [{ selector: 'sac-treeview', template: "<div class=\"structure panel panel-default\" icon=\"Structure\">\r\n <div class=\"panel-heading\">\r\n <p class=\"panel-title\"><span>{{ name }}</span></p>\r\n </div>\r\n <div class=\"panel-body\">\r\n <div class=\"right\">\r\n <div\r\n class=\"form-submit form-inline\"\r\n style=\"text-align: right; height: 24px\"\r\n >\r\n <a class=\"btn-inline\"\r\n ><i class=\"icon icon-base-expand\" (click)=\"collapseAllNode(false)\"></i\r\n ></a>\r\n <a class=\"btn-inline\"\r\n ><i\r\n class=\"icon icon-base-collapse\"\r\n (click)=\"collapseAllNode(true)\"\r\n ></i\r\n ></a>\r\n </div>\r\n </div>\r\n <div\r\n [id]=\"name\"\r\n class=\"structure-tree single-root jstree jstree-1 jstree-default\"\r\n >\r\n <ul\r\n class=\"jstree-container-ul jstree-children jstree-no-dots jstree-striped jstree-wholerow-ul\"\r\n *ngIf=\"nodes && nodes.length\"\r\n >\r\n <li\r\n *ngFor=\"let node of nodes; let last = last\"\r\n class=\"jstree-node\"\r\n [ngClass]=\"{\r\n 'jstree-open': !node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-closed': node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-leaf': !node[childrenAttr].length,\r\n 'jstree-last': last\r\n }\"\r\n [id]=\"node[idAttr]\"\r\n >\r\n <div\r\n unselectable=\"on\"\r\n role=\"presentation\"\r\n class=\"jstree-wholerow\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n [ngClass]=\"{'jstree-wholerow-clicked': node === selectedNode, 'jstree-wholerow-hovered': node.hover}\"\r\n >\r\n &nbsp;\r\n </div>\r\n\r\n <i\r\n class=\"jstree-icon jstree-ocl\"\r\n role=\"presentation\"\r\n (click)=\"onCollapseClick(node)\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n ></i>\r\n\r\n <a\r\n class=\"jstree-anchor\"\r\n (click)=\"onClick(node)\"\r\n [ngClass]=\"{'jstree-clicked': node === selectedNode, 'jstreehovered': node.hover}\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"treefileicon; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n <span>{{node[textAttr]}}</span>\r\n </a>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"template; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n <sac-treeviewchild\r\n *ngIf=\"node[childrenAttr] && node[childrenAttr].length\"\r\n [fileicontemplate]=\"fileicontemplate\"\r\n [template]=\"template\"\r\n [collapseall]=\"collapseall\"\r\n [ngClass]=\"(node[collapseAttr]===true)?'collapse':'show'\"\r\n [data]=\"node[childrenAttr]\"\r\n [idAttr]=\"idAttr\"\r\n [parentAttr]=\"parentAttr\"\r\n [textAttr]=\"textAttr\"\r\n [prepareData]=\"false\"\r\n (onselecteditem)=\"sendMsgToParent($event)\"\r\n [(selectedid)]=\"selectedid\"\r\n >\r\n </sac-treeviewchild>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
1491
- }] });
1492
-
1493
- class SacTreeItemActionComponent extends SacTreeItemActionCommon {
1494
- constructor(el) {
1495
- super(el);
1496
- }
1497
- }
1498
- SacTreeItemActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTreeItemActionComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
1499
- SacTreeItemActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacTreeItemActionComponent, selector: "sac-treeitemaction", usesInheritance: true, ngImport: i0, template: "<i class=\"{{transformClass(iconstyle)}}\" (mouseover)=\"item.hover=true\" (mouseout)=\"item.hover=false\" (click)=\"iconaction()\" ></i>" });
1500
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacTreeItemActionComponent, decorators: [{
1501
- type: Component,
1502
- args: [{ selector: 'sac-treeitemaction', template: "<i class=\"{{transformClass(iconstyle)}}\" (mouseover)=\"item.hover=true\" (mouseout)=\"item.hover=false\" (click)=\"iconaction()\" ></i>" }]
1503
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
1504
-
1505
- class SACBootstrap3TtreeviewModule {
1506
- }
1507
- SACBootstrap3TtreeviewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TtreeviewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1508
- SACBootstrap3TtreeviewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TtreeviewModule, declarations: [SacTreeViewComponent, SacTreeViewChildComponent, SacTreeItemActionComponent], imports: [CommonModule], exports: [SacTreeViewComponent, SacTreeViewChildComponent, SacTreeItemActionComponent] });
1509
- SACBootstrap3TtreeviewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TtreeviewModule, imports: [[
1510
- CommonModule
1511
- ]] });
1512
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3TtreeviewModule, decorators: [{
1513
- type: NgModule,
1514
- args: [{
1515
- declarations: [SacTreeViewComponent, SacTreeViewChildComponent, SacTreeItemActionComponent],
1516
- imports: [
1517
- CommonModule
1518
- ],
1519
- exports: [SacTreeViewComponent, SacTreeViewChildComponent, SacTreeItemActionComponent]
2122
+ imports: [CommonModule, FormsModule],
2123
+ exports: [SacFormDirective, SacInheritFormDirective],
1520
2124
  }]
1521
2125
  }] });
1522
2126
 
@@ -1528,5 +2132,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
1528
2132
  * Generated bundle index. Do not edit.
1529
2133
  */
1530
2134
 
1531
- export { NGFORM_FACTORY, SACBootstrap3ButtonModule, SACBootstrap3CheckboxModule, SACBootstrap3ConfirmModule, SACBootstrap3DateTimeModule, SACBootstrap3DialogModule, SACBootstrap3FormModule, SACBootstrap3GridModule, SACBootstrap3InputModule, SACBootstrap3ListModule, SACBootstrap3StaticLabelModule, SACBootstrap3TabsModule, SACBootstrap3TinyMceModule, SACBootstrap3TooltipModule, SACBootstrap3TtreeviewModule, SACBootstrap3UploadModule, SACBootstrap3ValidationSummaryModule, SACBootstrap3WizardModule, SACFORM_FACTORY, SacButtonComponent, SacCheckboxComponent, SacConfirmComponent, SacDateComponent, SacDateSelectorComponent, SacDateTimeComponent, SacDialogComponent, SacDropdownComponent, SacDropdownOptionDirective, SacFormDirective, SacGridButtonComponent, SacGridColumnActionComponent, SacGridColumnComponent, SacGridComponent, SacGridImageComponent, SacInheritFormDirective, SacInputAreaComponent, SacInputComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent, SacListboxComponent, SacPagingComponent, SacRadiobuttonComponent, SacRadiobuttonsComponent, SacStaticFormContainerComponent, SacStaticLabelComponent, SacTabComponent, SacTabItemComponent, SacTimeComponent, SacTinyMceComponent, SacTooltipComponent, SacTreeItemActionComponent, SacTreeViewChildComponent, SacTreeViewComponent, SacUploadComponent, SacUploadMultipleComponent, SacValidationSummaryComponent, SacWizardComponent, SacWizardItemComponent, ServiceConfirm };
2135
+ export { NGFORM_FACTORY, SACBootstrap3ButtonModule, SACBootstrap3CheckboxModule, SACBootstrap3ConfirmModule, SACBootstrap3DateTimeModule, SACBootstrap3DialogModule, SACBootstrap3FormModule, SACBootstrap3GridModule, SACBootstrap3InputModule, SACBootstrap3LayoutModule, SACBootstrap3ListModule, SACBootstrap3StaticLabelModule, SACBootstrap3TabsModule, SACBootstrap3TinyMceModule, SACBootstrap3TooltipModule, SACBootstrap3TtreeviewModule, SACBootstrap3UploadModule, SACBootstrap3ValidationSummaryModule, SACBootstrap3WizardModule, SACFORM_FACTORY, SacButtonComponent, SacCheckboxComponent, SacConfirmComponent, SacDateComponent, SacDateSelectorComponent, SacDateTimeComponent, SacDialogComponent, SacDropdownComponent, SacDropdownOptionDirective, SacFormDirective, SacFormLayoutDirective, SacGridButtonComponent, SacGridColumnActionComponent, SacGridColumnComponent, SacGridComponent, SacGridImageComponent, SacInheritFormDirective, SacInputAreaComponent, SacInputComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent, SacListboxComponent, SacPagingComponent, SacRadiobuttonComponent, SacRadiobuttonsComponent, SacStaticFormContainerComponent, SacStaticLabelComponent, SacTabComponent, SacTabItemComponent, SacTimeComponent, SacTinyMceComponent, SacToControlWidthCssPipe, SacToLabelWidthCssPipe, SacTooltipComponent, SacTreeItemActionComponent, SacTreeViewChildComponent, SacTreeViewComponent, SacUploadComponent, SacUploadMultipleComponent, SacValidationSummaryComponent, SacWizardComponent, SacWizardItemComponent, ServiceConfirm };
1532
2136
  //# sourceMappingURL=simpleangularcontrols-sac-bootstrap3.mjs.map