@simpleangularcontrols/sac-bootstrap3 16.0.0-rc.2 → 16.0.0-rc.3

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 (97) 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/radiobutton.d.ts.map +1 -1
  4. package/controls/checkbox/radiobuttons.d.ts +7 -2
  5. package/controls/checkbox/radiobuttons.d.ts.map +1 -1
  6. package/controls/datetime/date.d.ts +8 -2
  7. package/controls/datetime/date.d.ts.map +1 -1
  8. package/controls/datetime/dateselector.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/time.d.ts +8 -2
  12. package/controls/datetime/time.d.ts.map +1 -1
  13. package/controls/form/form.d.ts +4 -12
  14. package/controls/form/form.d.ts.map +1 -1
  15. package/controls/form/inheritform.directive.d.ts +11 -11
  16. package/controls/form/inheritform.directive.d.ts.map +1 -1
  17. package/controls/input/input.d.ts +7 -2
  18. package/controls/input/input.d.ts.map +1 -1
  19. package/controls/input/inputarea.d.ts +7 -2
  20. package/controls/input/inputarea.d.ts.map +1 -1
  21. package/controls/input/inputcurrency.d.ts +7 -2
  22. package/controls/input/inputcurrency.d.ts.map +1 -1
  23. package/controls/input/inputdecimal.d.ts +7 -2
  24. package/controls/input/inputdecimal.d.ts.map +1 -1
  25. package/controls/input/inputemail.d.ts +7 -2
  26. package/controls/input/inputemail.d.ts.map +1 -1
  27. package/controls/input/inputinteger.d.ts +7 -2
  28. package/controls/input/inputinteger.d.ts.map +1 -1
  29. package/controls/input/inputpassword.d.ts +7 -2
  30. package/controls/input/inputpassword.d.ts.map +1 -1
  31. package/controls/input/inputsearch.d.ts +7 -2
  32. package/controls/input/inputsearch.d.ts.map +1 -1
  33. package/controls/layout/formlayout.directive.d.ts +7 -0
  34. package/controls/layout/formlayout.directive.d.ts.map +1 -0
  35. package/controls/layout/layout.module.d.ts +11 -0
  36. package/controls/layout/layout.module.d.ts.map +1 -0
  37. package/controls/layout/tocontrolwidthcss.pipe.d.ts +20 -0
  38. package/controls/layout/tocontrolwidthcss.pipe.d.ts.map +1 -0
  39. package/controls/layout/tolabelwidthcss.pipe.d.ts +14 -0
  40. package/controls/layout/tolabelwidthcss.pipe.d.ts.map +1 -0
  41. package/controls/list/dropdown.d.ts +16 -3
  42. package/controls/list/dropdown.d.ts.map +1 -1
  43. package/controls/list/listbox.d.ts +7 -2
  44. package/controls/list/listbox.d.ts.map +1 -1
  45. package/controls/static/formcontainer.d.ts +5 -5
  46. package/controls/static/formcontainer.d.ts.map +1 -1
  47. package/controls/static/staticlabel.d.ts +7 -2
  48. package/controls/static/staticlabel.d.ts.map +1 -1
  49. package/controls/tinymce/tinymce.d.ts +6 -6
  50. package/controls/tinymce/tinymce.d.ts.map +1 -1
  51. package/controls/treeview/ngtreeitemaction.d.ts.map +1 -1
  52. package/controls/treeview/treeview.d.ts.map +1 -1
  53. package/controls/upload/upload.d.ts +10 -4
  54. package/controls/upload/upload.d.ts.map +1 -1
  55. package/controls/upload/uploadmultiple.d.ts +9 -2
  56. package/controls/upload/uploadmultiple.d.ts.map +1 -1
  57. package/controls/validation/validationsummary.d.ts +6 -1
  58. package/controls/validation/validationsummary.d.ts.map +1 -1
  59. package/esm2022/controls/checkbox/checkbox.mjs +39 -15
  60. package/esm2022/controls/checkbox/radiobutton.mjs +3 -2
  61. package/esm2022/controls/checkbox/radiobuttons.mjs +39 -15
  62. package/esm2022/controls/datetime/date.mjs +51 -18
  63. package/esm2022/controls/datetime/dateselector.mjs +3 -8
  64. package/esm2022/controls/datetime/datetime.mjs +49 -16
  65. package/esm2022/controls/datetime/time.mjs +49 -16
  66. package/esm2022/controls/form/form.mjs +7 -19
  67. package/esm2022/controls/form/inheritform.directive.mjs +31 -28
  68. package/esm2022/controls/input/input.mjs +35 -13
  69. package/esm2022/controls/input/inputarea.mjs +45 -15
  70. package/esm2022/controls/input/inputcurrency.mjs +45 -15
  71. package/esm2022/controls/input/inputdecimal.mjs +45 -15
  72. package/esm2022/controls/input/inputemail.mjs +45 -15
  73. package/esm2022/controls/input/inputinteger.mjs +45 -15
  74. package/esm2022/controls/input/inputpassword.mjs +45 -15
  75. package/esm2022/controls/input/inputsearch.mjs +39 -15
  76. package/esm2022/controls/layout/formlayout.directive.mjs +16 -0
  77. package/esm2022/controls/layout/layout.module.mjs +34 -0
  78. package/esm2022/controls/layout/tocontrolwidthcss.pipe.mjs +53 -0
  79. package/esm2022/controls/layout/tolabelwidthcss.pipe.mjs +37 -0
  80. package/esm2022/controls/list/dropdown.mjs +31 -14
  81. package/esm2022/controls/list/listbox.mjs +19 -8
  82. package/esm2022/controls/static/formcontainer.mjs +43 -18
  83. package/esm2022/controls/static/staticlabel.mjs +39 -15
  84. package/esm2022/controls/tinymce/tinymce.mjs +19 -12
  85. package/esm2022/controls/treeview/ngtreeitemaction.mjs +2 -1
  86. package/esm2022/controls/treeview/treeview.mjs +3 -9
  87. package/esm2022/controls/upload/upload.mjs +47 -15
  88. package/esm2022/controls/upload/uploadmultiple.mjs +21 -9
  89. package/esm2022/controls/validation/validationsummary.mjs +15 -11
  90. package/esm2022/public_api.mjs +34 -30
  91. package/fesm2022/simpleangularcontrols-sac-bootstrap3.mjs +1656 -1082
  92. package/fesm2022/simpleangularcontrols-sac-bootstrap3.mjs.map +1 -1
  93. package/package.json +2 -2
  94. package/public_api.d.ts +33 -29
  95. package/public_api.d.ts.map +1 -1
  96. package/simpleangularcontrols-sac-bootstrap3-16.0.0-rc.3.tgz +0 -0
  97. package/simpleangularcontrols-sac-bootstrap3-16.0.0-rc.2.tgz +0 -0
@@ -1,11 +1,11 @@
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, 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';
4
- import { NgIf, NgClass, CommonModule, NgStyle, NgTemplateOutlet, NgFor, AsyncPipe } from '@angular/common';
2
+ import { Component, NgModule, Pipe, Directive, 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, SacStaticLabelCommon, SacStaticFormContainerCommon, SacTabItemCommon, SacTabCommon, SacTinyMceCommon, SacTreeViewChildCommon, SacTreeViewCommon, SacTreeItemActionCommon, SacUploadSingleCommon, SacUploadMultipleCommon, SacFormCommon, SacValidationSummaryCommon, SacWizardItemCommon, SacWizardCommon } from '@simpleangularcontrols/sac-common';
4
+ import { NgIf, NgClass, CommonModule, NgTemplateOutlet, NgStyle, NgFor, AsyncPipe } from '@angular/common';
5
5
  import * as i2 from '@angular/forms';
6
6
  import { NG_VALUE_ACCESSOR, NG_VALIDATORS, FormsModule, ControlContainer, NgForm } from '@angular/forms';
7
- import * as moment_ from 'moment';
8
7
  import { IMaskDirective, IMaskModule } from 'angular-imask';
8
+ import * as moment_ from 'moment';
9
9
  import { EditorComponent } from '@tinymce/tinymce-angular';
10
10
 
11
11
  class SacButtonComponent extends SacButtonCommon {
@@ -34,165 +34,192 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
34
34
  }]
35
35
  }] });
36
36
 
37
- class SacDialogComponent extends SacDialogCommon {
38
- constructor(el, cdRef) {
39
- super(cdRef);
40
- //#region Bootstrap 3 Spezifische Properites
41
- this.zindex = 20002;
42
- this._lastDialogMarginTop = 0;
43
- this.element = el.nativeElement;
44
- }
45
- // Margin Top für Center Position des Dialogs berechnen
46
- get dialogMarginTop() {
47
- let result = 0;
48
- // ContentPlaceholder kann NULL/UNDEFINED sein wenn Dialog nicht angezeigt wird
49
- if (this.dialogElement !== null && this.dialogElement !== undefined) {
50
- result = (this.dialogElement.nativeElement.clientHeight / 2) * -1;
37
+ class SacToControlWidthCssPipe {
38
+ // #region Public Methods
39
+ /**
40
+ * Get CSS classes from label width configuration to set control size
41
+ * @param value Configuration with grid columns for different viewports
42
+ * @returns string with css classe for bootstrap3
43
+ */
44
+ transform(value) {
45
+ const classes = [];
46
+ if (value.labelSizeXs) {
47
+ classes.push('col-xs-' + this.calcControlSize(value.labelSizeXs));
51
48
  }
52
- // Change Detection ausführen, falls Wert nach Rendering noch geändert hat. Kann durch HTML Content / Zeilenumbrüche usw. ausgelöst werden.
53
- if (this._lastDialogMarginTop !== result) {
54
- this._lastDialogMarginTop = result;
55
- this.ChangeDetector.detectChanges();
49
+ if (value.labelSizeSm) {
50
+ classes.push('col-sm-' + this.calcControlSize(value.labelSizeSm));
56
51
  }
57
- return result;
58
- }
59
- //#endregion
60
- ngOnInit() {
61
- // Element an Body für korrektes Styling unter Bootstrap 3 verschieben
62
- document.body.appendChild(this.element);
52
+ if (value.labelSizeMd) {
53
+ classes.push('col-md-' + this.calcControlSize(value.labelSizeMd));
54
+ }
55
+ if (value.labelSizeLg) {
56
+ classes.push('col-lg-' + this.calcControlSize(value.labelSizeLg));
57
+ }
58
+ return classes.join(' ');
63
59
  }
64
- ngOnDestroy() {
65
- this.hide();
66
- if (document.body.contains(this.element)) {
67
- document.body.removeChild(this.element);
60
+ // #endregion Public Methods
61
+ // #region Private Methods
62
+ /**
63
+ * calculate the control size
64
+ * @param labelsize grid size of label
65
+ * @returns grid size for control. should be between 1 and 12
66
+ */
67
+ calcControlSize(labelsize) {
68
+ if (labelsize === 12) {
69
+ return 12;
68
70
  }
69
- super.ngOnDestroy();
71
+ if (!labelsize) {
72
+ return 12;
73
+ }
74
+ return 12 - labelsize;
70
75
  }
71
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDialogComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
72
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacDialogComponent, isStandalone: true, 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
73
- }
74
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDialogComponent, decorators: [{
75
- type: Component,
76
- args: [{ selector: 'sac-dialog', standalone: true, imports: [NgIf, NgStyle], 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" }]
77
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { zindex: [{
78
- type: Input
79
- }] } });
80
-
81
- class SACBootstrap3DialogModule {
82
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
83
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DialogModule, imports: [CommonModule,
84
- SacDialogComponent], exports: [SacDialogComponent] }); }
85
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DialogModule, imports: [CommonModule] }); }
76
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacToControlWidthCssPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
77
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SacToControlWidthCssPipe, isStandalone: true, name: "toControlWidthCss" }); }
86
78
  }
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DialogModule, decorators: [{
88
- type: NgModule,
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacToControlWidthCssPipe, decorators: [{
80
+ type: Pipe,
89
81
  args: [{
90
- imports: [
91
- CommonModule,
92
- SacDialogComponent
93
- ],
94
- exports: [SacDialogComponent]
82
+ name: 'toControlWidthCss',
83
+ standalone: true,
95
84
  }]
96
85
  }] });
97
86
 
98
- /**
99
- * Erweiterung / Hooking für automatismen in Formular. Wird als Container für alle Controls benötigt.
100
- *
101
- * @example Beispiel über Div Container
102
- *
103
- * <div ngForm></div>
104
- *
105
- * @example Beispiel über Form Tag
106
- *
107
- * <form></form>
108
- */
109
- /* eslint @angular-eslint/directive-selector: 0 */
110
- class SacFormDirective extends SacFormCommon {
87
+ class SacToLabelWidthCssPipe {
88
+ // #region Public Methods
111
89
  /**
112
- * Konstruktor
113
- * @param form Instanz von NgForm für eigene automatische Formular Logik
90
+ * Get CSS classes from label width configuration to set label size
91
+ * @param value Configuration with grid columns for different viewports
92
+ * @returns string with css classe for bootstrap3
114
93
  */
115
- constructor(form) {
116
- super(form);
117
- /**
118
- * Setzt die Standard CSS Klasse für auf dem Form Container
119
- */
120
- this.cssClassForm = true;
94
+ transform(value) {
95
+ const classes = [];
96
+ if (value.labelSizeXs) {
97
+ classes.push('col-xs-' + value.labelSizeXs);
98
+ }
99
+ if (value.labelSizeSm) {
100
+ classes.push('col-sm-' + value.labelSizeSm);
101
+ }
102
+ if (value.labelSizeMd) {
103
+ classes.push('col-md-' + value.labelSizeMd);
104
+ }
105
+ if (value.labelSizeLg) {
106
+ classes.push('col-lg-' + value.labelSizeLg);
107
+ }
108
+ return classes.join(' ');
121
109
  }
122
- /**
123
- * Setzt die CSS Klasse 'form-horizontal' wenn die Orientation auf Horizontal eingestellt ist
124
- */
125
- get orientientationHorizontal() { return this.getOrientation() === 'horizontal'; }
126
- /**
127
- * Setzt die CSS Klasse 'form-vertical' wenn die Orientation auf Vertical eingestellt ist
128
- */
129
- get orientientationVertical() { return this.getOrientation() === 'vertical'; }
130
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacFormDirective, deps: [{ token: i2.NgForm }], target: i0.ɵɵFactoryTarget.Directive }); }
131
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SacFormDirective, isStandalone: true, 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 }); }
110
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacToLabelWidthCssPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
111
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SacToLabelWidthCssPipe, isStandalone: true, name: "toLabelWidthCss" }); }
132
112
  }
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacFormDirective, decorators: [{
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacToLabelWidthCssPipe, decorators: [{
114
+ type: Pipe,
115
+ args: [{
116
+ name: 'toLabelWidthCss',
117
+ standalone: true,
118
+ }]
119
+ }] });
120
+
121
+ class SacFormLayoutDirective extends SacFormLayoutCommon {
122
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacFormLayoutDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
123
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SacFormLayoutDirective, isStandalone: true, selector: "[sacFormLayout]", usesInheritance: true, ngImport: i0 }); }
124
+ }
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacFormLayoutDirective, decorators: [{
134
126
  type: Directive,
135
127
  args: [{
136
- selector: 'form:not([ngNoForm]):not([formGroup]),[ngForm]',
137
- exportAs: 'sacform',
138
- standalone: true
128
+ selector: '[sacFormLayout]',
129
+ standalone: true,
139
130
  }]
140
- }], ctorParameters: function () { return [{ type: i2.NgForm }]; }, propDecorators: { cssClassForm: [{
141
- type: HostBinding,
142
- args: ['class.form']
143
- }], orientientationHorizontal: [{
144
- type: HostBinding,
145
- args: ['class.form-horizontal']
146
- }], orientientationVertical: [{
147
- type: HostBinding,
148
- args: ['class.form-vertical']
149
- }] } });
131
+ }] });
150
132
 
151
133
  class SacCheckboxComponent extends SacCheckboxCommon {
152
- constructor(parent, injector) {
153
- super(parent, injector);
134
+ // #region Constructors
135
+ /**
136
+ * Constructor
137
+ * @param formLayout SacFormLayout to define scoped layout settings
138
+ * @param injector Injector for injecting services
139
+ */
140
+ constructor(formLayout, injector) {
141
+ super(formLayout, injector);
154
142
  }
155
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacCheckboxComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
143
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacCheckboxComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
156
144
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacCheckboxComponent, isStandalone: true, selector: "sac-checkbox", providers: [
157
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacCheckboxComponent },
158
- { provide: NG_VALIDATORS, useExisting: forwardRef(() => SacCheckboxComponent), multi: true }
159
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
145
+ {
146
+ provide: NG_VALUE_ACCESSOR,
147
+ multi: true,
148
+ useExisting: SacCheckboxComponent,
149
+ },
150
+ {
151
+ provide: NG_VALIDATORS,
152
+ useExisting: forwardRef(() => SacCheckboxComponent),
153
+ multi: true,
154
+ },
155
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
160
156
  }
161
157
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacCheckboxComponent, decorators: [{
162
158
  type: Component,
163
159
  args: [{ selector: 'sac-checkbox', providers: [
164
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacCheckboxComponent },
165
- { provide: NG_VALIDATORS, useExisting: forwardRef(() => SacCheckboxComponent), multi: true }
166
- ], standalone: true, imports: [NgClass, NgIf], 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" }]
167
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
160
+ {
161
+ provide: NG_VALUE_ACCESSOR,
162
+ multi: true,
163
+ useExisting: SacCheckboxComponent,
164
+ },
165
+ {
166
+ provide: NG_VALIDATORS,
167
+ useExisting: forwardRef(() => SacCheckboxComponent),
168
+ multi: true,
169
+ },
170
+ ], standalone: true, imports: [NgClass, NgIf, SacToLabelWidthCssPipe, SacToControlWidthCssPipe], 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
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
168
172
  type: Host
169
173
  }, {
170
174
  type: Optional
171
175
  }] }, { type: i0.Injector }]; } });
172
176
 
173
177
  class SacRadiobuttonsComponent extends SacRadiobuttonsCommon {
174
- constructor(parent, injector) {
175
- super(parent, injector);
178
+ // #region Constructors
179
+ /**
180
+ * Constructor
181
+ * @param formLayout SacFormLayout to define scoped layout settings
182
+ * @param injector Injector for injecting services
183
+ */
184
+ constructor(formLayout, injector) {
185
+ super(formLayout, injector);
176
186
  }
177
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacRadiobuttonsComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
187
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacRadiobuttonsComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
178
188
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacRadiobuttonsComponent, isStandalone: true, selector: "sac-radiobuttons", providers: [
179
- { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => SacRadiobuttonsComponent), multi: true },
180
- { provide: NG_VALIDATORS, useExisting: forwardRef(() => SacRadiobuttonsComponent), multi: true }
181
- ], 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
189
+ {
190
+ provide: NG_VALUE_ACCESSOR,
191
+ useExisting: forwardRef(() => SacRadiobuttonsComponent),
192
+ multi: true,
193
+ },
194
+ {
195
+ provide: NG_VALIDATORS,
196
+ useExisting: forwardRef(() => SacRadiobuttonsComponent),
197
+ multi: true,
198
+ },
199
+ ], 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
182
200
  }
183
201
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacRadiobuttonsComponent, decorators: [{
184
202
  type: Component,
185
203
  args: [{ selector: 'sac-radiobuttons', providers: [
186
- { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => SacRadiobuttonsComponent), multi: true },
187
- { provide: NG_VALIDATORS, useExisting: forwardRef(() => SacRadiobuttonsComponent), multi: true }
188
- ], standalone: true, imports: [NgIf, NgClass], 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" }]
189
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
204
+ {
205
+ provide: NG_VALUE_ACCESSOR,
206
+ useExisting: forwardRef(() => SacRadiobuttonsComponent),
207
+ multi: true,
208
+ },
209
+ {
210
+ provide: NG_VALIDATORS,
211
+ useExisting: forwardRef(() => SacRadiobuttonsComponent),
212
+ multi: true,
213
+ },
214
+ ], standalone: true, imports: [NgIf, NgClass, SacToLabelWidthCssPipe, SacToControlWidthCssPipe], 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" }]
215
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
190
216
  type: Host
191
217
  }, {
192
218
  type: Optional
193
219
  }] }, { type: i0.Injector }]; } });
194
220
 
195
221
  class SacRadiobuttonComponent extends SacRadiobuttonCommon {
222
+ // #region Constructors
196
223
  constructor(sacRadioButtons) {
197
224
  super(sacRadioButtons);
198
225
  }
@@ -223,89 +250,1137 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
223
250
  }]
224
251
  }] });
225
252
 
226
- class SacDropdownComponent extends SacDropdownCommon {
227
- constructor(parent, injector, _renderer, _elementRef) {
228
- super(parent, injector, _renderer, _elementRef);
253
+ class SacDialogComponent extends SacDialogCommon {
254
+ constructor(el, cdRef) {
255
+ super(cdRef);
256
+ //#region Bootstrap 3 Spezifische Properites
257
+ this.zindex = 20002;
258
+ this._lastDialogMarginTop = 0;
259
+ this.element = el.nativeElement;
229
260
  }
230
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
231
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacDropdownComponent, isStandalone: true, selector: "sac-dropdown", providers: [
232
- {
233
- provide: NG_VALUE_ACCESSOR,
234
- multi: true,
235
- useExisting: SacDropdownComponent,
236
- },
237
- {
238
- provide: NG_VALIDATORS,
239
- multi: true,
240
- useExisting: forwardRef(() => SacDropdownComponent),
241
- },
242
- ], 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", dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(function () { return FormsModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgSelectOption; }), selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.ɵNgSelectMultipleOption; }), selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i0.forwardRef(function () { return SacDropdownOptionDirective; }), selector: "option,[sacOption]" }, { kind: "directive", type: i0.forwardRef(function () { return NgFor; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i0.forwardRef(function () { return AsyncPipe; }), name: "async" }] }); }
243
- }
244
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownComponent, decorators: [{
245
- type: Component,
246
- args: [{ selector: 'sac-dropdown', providers: [
247
- {
248
- provide: NG_VALUE_ACCESSOR,
249
- multi: true,
250
- useExisting: SacDropdownComponent,
251
- },
252
- {
253
- provide: NG_VALIDATORS,
254
- multi: true,
255
- useExisting: forwardRef(() => SacDropdownComponent),
256
- },
257
- ], standalone: true, imports: [
258
- NgClass,
259
- NgIf,
260
- FormsModule,
261
- forwardRef(() => SacDropdownOptionDirective),
262
- NgFor,
263
- NgTemplateOutlet,
264
- AsyncPipe,
265
- ], 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" }]
266
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
267
- type: Host
268
- }, {
269
- type: Optional
270
- }] }, { type: i0.Injector }, { type: i0.Renderer2 }, { type: i0.ElementRef }]; } });
271
- class SacDropdownOptionDirective extends SacDropdownOptionCommon {
272
- constructor(_elementRef, _renderer, dropdownList) {
273
- super(_elementRef, _renderer, dropdownList);
261
+ // Margin Top für Center Position des Dialogs berechnen
262
+ get dialogMarginTop() {
263
+ let result = 0;
264
+ // ContentPlaceholder kann NULL/UNDEFINED sein wenn Dialog nicht angezeigt wird
265
+ if (this.dialogElement !== null && this.dialogElement !== undefined) {
266
+ result = (this.dialogElement.nativeElement.clientHeight / 2) * -1;
267
+ }
268
+ // Change Detection ausführen, falls Wert nach Rendering noch geändert hat. Kann durch HTML Content / Zeilenumbrüche usw. ausgelöst werden.
269
+ if (this._lastDialogMarginTop !== result) {
270
+ this._lastDialogMarginTop = result;
271
+ this.ChangeDetector.detectChanges();
272
+ }
273
+ return result;
274
274
  }
275
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownOptionDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: SacDropdownComponent, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
276
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SacDropdownOptionDirective, isStandalone: true, selector: "option,[sacOption]", usesInheritance: true, ngImport: i0 }); }
275
+ //#endregion
276
+ ngOnInit() {
277
+ // Element an Body für korrektes Styling unter Bootstrap 3 verschieben
278
+ document.body.appendChild(this.element);
279
+ }
280
+ ngOnDestroy() {
281
+ this.hide();
282
+ if (document.body.contains(this.element)) {
283
+ document.body.removeChild(this.element);
284
+ }
285
+ super.ngOnDestroy();
286
+ }
287
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDialogComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
288
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacDialogComponent, isStandalone: true, 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
277
289
  }
278
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownOptionDirective, decorators: [{
279
- type: Directive,
280
- args: [{
281
- selector: 'option,[sacOption]',
282
- standalone: true,
283
- }]
284
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: SacDropdownComponent, decorators: [{
285
- type: Optional
286
- }, {
287
- type: Host
288
- }] }]; } });
290
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDialogComponent, decorators: [{
291
+ type: Component,
292
+ args: [{ selector: 'sac-dialog', standalone: true, imports: [NgIf, NgStyle], 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" }]
293
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { zindex: [{
294
+ type: Input
295
+ }] } });
289
296
 
290
- class SacListboxComponent extends SacListboxCommon {
291
- constructor(parent, injector) {
292
- super(parent, injector);
293
- }
294
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacListboxComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
295
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacListboxComponent, isStandalone: true, selector: "sac-listbox", providers: [
296
- {
297
- provide: NG_VALUE_ACCESSOR,
298
- multi: true,
299
- useExisting: SacListboxComponent,
300
- },
301
- {
302
- provide: NG_VALIDATORS,
303
- multi: true,
304
- useExisting: forwardRef(() => SacListboxComponent),
305
- },
306
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: SacDropdownOptionDirective, selector: "option,[sacOption]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
297
+ class SacConfirmComponent extends SacConfirmCommon {
298
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacConfirmComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
299
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacConfirmComponent, isStandalone: true, 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", dependencies: [{ kind: "component", type: SacDialogComponent, selector: "sac-dialog", inputs: ["zindex"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: SacButtonComponent, selector: "sac-button" }] }); }
307
300
  }
308
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacListboxComponent, decorators: [{
301
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacConfirmComponent, decorators: [{
302
+ type: Component,
303
+ args: [{ selector: 'sac-confirm', standalone: true, imports: [SacDialogComponent, NgIf, NgFor, SacButtonComponent], 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" }]
304
+ }] });
305
+
306
+ /**
307
+ * Service für Confirm Messages in TypeScript Code
308
+ *
309
+ * @example
310
+ * // Beispiel für ConfirmMessage mit Standard Buttons (Ja / Nein).
311
+ * confirmService.ConfirmMessage('titel', 'frage').subscribe(action => { // Action Code });
312
+ *
313
+ * @example
314
+ * // Beispiel für ConfirmMessage mit eigenen Buttons
315
+ * let buttons: SacConfirmButton[] = [];
316
+ * buttons.push(new SacConfirmButton('ActionKey','Text Primary'));
317
+ * buttons.push(new SacConfirmButton('ActionKey2','Text Button 2'));
318
+ * confirmService.ConfirmMessage('titel', 'frage', buttons).subscribe(action => { // Action Code });
319
+ */
320
+ class ServiceConfirm extends ServiceConfirmCommon {
321
+ /**
322
+ * Konstruktor
323
+ * @param componentFactoryResolver Component Factory Resolver Instanz
324
+ * @param appRef Application Referenz. Wird benötigt um den Dialog am Body anzuhängen
325
+ * @param injector Injector. Wird benötigt um den Dialog dynamisch zu erzeugen
326
+ */
327
+ constructor(componentFactoryResolver, appRef, injector) {
328
+ super(appRef, injector);
329
+ this.componentFactoryResolver = componentFactoryResolver;
330
+ /**
331
+ * Titel der im Dialog angezeigt werden soll.
332
+ */
333
+ this.title = '';
334
+ /**
335
+ * Message die in Dialog angezeigt werden soll.
336
+ */
337
+ this.message = '';
338
+ /**
339
+ * Collection von Buttons die angezeigt werden müssen.
340
+ */
341
+ this.buttons = [];
342
+ }
343
+ /**
344
+ * Erzeugen einer Component Factory für einen Dialog
345
+ */
346
+ GetComponentFactory() {
347
+ return this.componentFactoryResolver.resolveComponentFactory(SacConfirmComponent);
348
+ }
349
+ /**
350
+ * Konfiguration des Dialogs
351
+ * @param instance Instanz eines SacConfirm Dialogs
352
+ */
353
+ ConfigureDialog(instance) {
354
+ // Text in Dialog setzen
355
+ instance.title = this.title;
356
+ instance.message = this.message;
357
+ instance.buttons = this.buttons;
358
+ instance.image = this.iconService.ConfirmDefaultImage;
359
+ }
360
+ /**
361
+ * Confirm Dialog anzeigen
362
+ * @param message Nachricht die angezeigt werden soll.
363
+ * @returns EventEmitter mit Key des Buttons, welcher geklickt wurde.
364
+ */
365
+ ConfirmMessage(title, message, buttons = null) {
366
+ this.title = title;
367
+ this.message = message;
368
+ // Default Buttons setzen, wenn keine Buttons angegeben sind
369
+ if (!isDefined(buttons)) {
370
+ // TODO: Text von Localisation Service beziehen
371
+ this.buttons = [];
372
+ this.buttons.push(new SacConfirmButton('yes', 'Ja'));
373
+ this.buttons.push(new SacConfirmButton('no', 'Nein'));
374
+ }
375
+ else {
376
+ this.buttons = buttons;
377
+ }
378
+ return super.Confirm();
379
+ }
380
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ServiceConfirm, deps: [{ token: ComponentFactoryResolver }, { token: i0.ApplicationRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
381
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ServiceConfirm }); }
382
+ }
383
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ServiceConfirm, decorators: [{
384
+ type: Injectable
385
+ }], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver, decorators: [{
386
+ type: Inject,
387
+ args: [ComponentFactoryResolver]
388
+ }] }, { type: i0.ApplicationRef }, { type: i0.Injector }]; } });
389
+
390
+ /**
391
+ * Module für Confirm Messages
392
+ *
393
+ * In NgModule der Applikation folgenden Eintrag bei Imports einfügen: ExanicBootstrap3ConfirmModule.forRoot()
394
+ *
395
+ */
396
+ class SACBootstrap3ConfirmModule {
397
+ static forRoot() {
398
+ return {
399
+ ngModule: SACBootstrap3ConfirmModule,
400
+ providers: [ServiceConfirm],
401
+ };
402
+ }
403
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ConfirmModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
404
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ConfirmModule, imports: [SacConfirmComponent], exports: [SacConfirmComponent] }); }
405
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ConfirmModule }); }
406
+ }
407
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ConfirmModule, decorators: [{
408
+ type: NgModule,
409
+ args: [{
410
+ imports: [SacConfirmComponent],
411
+ exports: [SacConfirmComponent],
412
+ }]
413
+ }] });
414
+
415
+ class SacDateSelectorComponent extends SacDateSelectorCommon {
416
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDateSelectorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
417
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacDateSelectorComponent, isStandalone: true, 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
418
+ }
419
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDateSelectorComponent, decorators: [{
420
+ type: Component,
421
+ args: [{ selector: 'sac-dateselector', standalone: true, imports: [NgIf, NgFor, NgStyle, NgClass], 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" }]
422
+ }] });
423
+
424
+ const moment = moment_['default'];
425
+ class SacDateComponent extends SacDateCommon {
426
+ // #region Constructors
427
+ /**
428
+ * Constructor
429
+ * @param formLayout SacFormLayout to define scoped layout settings
430
+ * @param injector Injector for injecting services
431
+ * @param elementRef Reference to html dom element
432
+ */
433
+ constructor(formLayout, injector, elementRef) {
434
+ super(formLayout, injector, elementRef);
435
+ }
436
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDateComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
437
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacDateComponent, isStandalone: true, selector: "sac-date", providers: [
438
+ {
439
+ provide: NG_VALUE_ACCESSOR,
440
+ multi: true,
441
+ useExisting: forwardRef(() => SacDateComponent),
442
+ },
443
+ {
444
+ provide: NG_VALIDATORS,
445
+ multi: true,
446
+ useExisting: forwardRef(() => SacDateComponent),
447
+ },
448
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: IMaskDirective, selector: "[imask]", inputs: ["imask", "unmask", "imaskElement"], outputs: ["accept", "complete"], exportAs: ["imask"] }, { kind: "component", type: SacDateSelectorComponent, selector: "sac-dateselector" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
449
+ }
450
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDateComponent, decorators: [{
451
+ type: Component,
452
+ args: [{ selector: 'sac-date', providers: [
453
+ {
454
+ provide: NG_VALUE_ACCESSOR,
455
+ multi: true,
456
+ useExisting: forwardRef(() => SacDateComponent),
457
+ },
458
+ {
459
+ provide: NG_VALIDATORS,
460
+ multi: true,
461
+ useExisting: forwardRef(() => SacDateComponent),
462
+ },
463
+ ], standalone: true, imports: [
464
+ NgClass,
465
+ NgIf,
466
+ IMaskDirective,
467
+ SacDateSelectorComponent,
468
+ AsyncPipe,
469
+ SacToLabelWidthCssPipe,
470
+ SacToControlWidthCssPipe,
471
+ ], 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" }]
472
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
473
+ type: Host
474
+ }, {
475
+ type: Optional
476
+ }] }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
477
+
478
+ class SacDateTimeComponent extends SacDateTimeCommon {
479
+ // #region Constructors
480
+ /**
481
+ * Constructor
482
+ * @param formLayout SacFormLayout to define scoped layout settings
483
+ * @param injector Injector for injecting services
484
+ * @param elementRef Reference to html dom element
485
+ */
486
+ constructor(formLayout, injector, elementRef) {
487
+ super(formLayout, injector, elementRef);
488
+ }
489
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDateTimeComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
490
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacDateTimeComponent, isStandalone: true, selector: "sac-datetime", providers: [
491
+ {
492
+ provide: NG_VALUE_ACCESSOR,
493
+ multi: true,
494
+ useExisting: forwardRef(() => SacDateTimeComponent),
495
+ },
496
+ {
497
+ provide: NG_VALIDATORS,
498
+ multi: true,
499
+ useExisting: forwardRef(() => SacDateTimeComponent),
500
+ },
501
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: IMaskDirective, selector: "[imask]", inputs: ["imask", "unmask", "imaskElement"], outputs: ["accept", "complete"], exportAs: ["imask"] }, { kind: "component", type: SacDateSelectorComponent, selector: "sac-dateselector" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
502
+ }
503
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDateTimeComponent, decorators: [{
504
+ type: Component,
505
+ args: [{ selector: 'sac-datetime', providers: [
506
+ {
507
+ provide: NG_VALUE_ACCESSOR,
508
+ multi: true,
509
+ useExisting: forwardRef(() => SacDateTimeComponent),
510
+ },
511
+ {
512
+ provide: NG_VALIDATORS,
513
+ multi: true,
514
+ useExisting: forwardRef(() => SacDateTimeComponent),
515
+ },
516
+ ], standalone: true, imports: [
517
+ NgClass,
518
+ NgIf,
519
+ IMaskDirective,
520
+ SacDateSelectorComponent,
521
+ AsyncPipe,
522
+ SacToLabelWidthCssPipe,
523
+ SacToControlWidthCssPipe,
524
+ ], 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" }]
525
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
526
+ type: Host
527
+ }, {
528
+ type: Optional
529
+ }] }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
530
+
531
+ class SacTimeComponent extends SacTimeCommon {
532
+ // #region Constructors
533
+ /**
534
+ * Constructor
535
+ * @param formLayout SacFormLayout to define scoped layout settings
536
+ * @param injector Injector for injecting services
537
+ * @param elementRef Reference to html dom element
538
+ */
539
+ constructor(formLayout, injector, elementRef) {
540
+ super(formLayout, injector, elementRef);
541
+ }
542
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTimeComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
543
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTimeComponent, isStandalone: true, selector: "sac-time", providers: [
544
+ {
545
+ provide: NG_VALUE_ACCESSOR,
546
+ multi: true,
547
+ useExisting: forwardRef(() => SacTimeComponent),
548
+ },
549
+ {
550
+ provide: NG_VALIDATORS,
551
+ multi: true,
552
+ useExisting: forwardRef(() => SacTimeComponent),
553
+ },
554
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: IMaskDirective, selector: "[imask]", inputs: ["imask", "unmask", "imaskElement"], outputs: ["accept", "complete"], exportAs: ["imask"] }, { kind: "component", type: SacDateSelectorComponent, selector: "sac-dateselector" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
555
+ }
556
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTimeComponent, decorators: [{
557
+ type: Component,
558
+ args: [{ selector: 'sac-time', providers: [
559
+ {
560
+ provide: NG_VALUE_ACCESSOR,
561
+ multi: true,
562
+ useExisting: forwardRef(() => SacTimeComponent),
563
+ },
564
+ {
565
+ provide: NG_VALIDATORS,
566
+ multi: true,
567
+ useExisting: forwardRef(() => SacTimeComponent),
568
+ },
569
+ ], standalone: true, imports: [
570
+ NgClass,
571
+ NgIf,
572
+ IMaskDirective,
573
+ SacDateSelectorComponent,
574
+ AsyncPipe,
575
+ SacToLabelWidthCssPipe,
576
+ SacToControlWidthCssPipe,
577
+ ], 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" }]
578
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
579
+ type: Host
580
+ }, {
581
+ type: Optional
582
+ }] }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
583
+
584
+ class SACBootstrap3DateTimeModule {
585
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DateTimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
586
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DateTimeModule, imports: [CommonModule, IMaskModule,
587
+ SacDateComponent, SacDateTimeComponent, SacTimeComponent, SacDateSelectorComponent], exports: [SacDateComponent, SacDateTimeComponent, SacTimeComponent, SacDateSelectorComponent] }); }
588
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DateTimeModule, imports: [CommonModule, IMaskModule] }); }
589
+ }
590
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DateTimeModule, decorators: [{
591
+ type: NgModule,
592
+ args: [{
593
+ imports: [
594
+ CommonModule, IMaskModule,
595
+ SacDateComponent, SacDateTimeComponent, SacTimeComponent, SacDateSelectorComponent
596
+ ],
597
+ exports: [SacDateComponent, SacDateTimeComponent, SacTimeComponent, SacDateSelectorComponent]
598
+ }]
599
+ }] });
600
+
601
+ class SACBootstrap3DialogModule {
602
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
603
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DialogModule, imports: [CommonModule,
604
+ SacDialogComponent], exports: [SacDialogComponent] }); }
605
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DialogModule, imports: [CommonModule] }); }
606
+ }
607
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DialogModule, decorators: [{
608
+ type: NgModule,
609
+ args: [{
610
+ imports: [
611
+ CommonModule,
612
+ SacDialogComponent
613
+ ],
614
+ exports: [SacDialogComponent]
615
+ }]
616
+ }] });
617
+
618
+ class SacPagingComponent extends SacPagingCommon {
619
+ /**
620
+ * Konstruktor
621
+ */
622
+ constructor(injector) { super(injector); }
623
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacPagingComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
624
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacPagingComponent, isStandalone: true, selector: "sac-paging", providers: [
625
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacPagingComponent },
626
+ { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacPagingComponent) }
627
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
628
+ }
629
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacPagingComponent, decorators: [{
630
+ type: Component,
631
+ args: [{ selector: 'sac-paging', providers: [
632
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacPagingComponent },
633
+ { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacPagingComponent) }
634
+ ], standalone: true, imports: [NgClass, NgFor], 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" }]
635
+ }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
636
+
637
+ class SacGridComponent extends SacGridCommon {
638
+ constructor() {
639
+ super(...arguments);
640
+ this.ellipsis = false;
641
+ }
642
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
643
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacGridComponent, isStandalone: true, selector: "sac-grid", providers: [
644
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacGridComponent },
645
+ { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacGridComponent) }
646
+ ], 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", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SacPagingComponent, selector: "sac-paging" }] }); }
647
+ }
648
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridComponent, decorators: [{
649
+ type: Component,
650
+ args: [{ selector: 'sac-grid', providers: [
651
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacGridComponent },
652
+ { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacGridComponent) }
653
+ ], standalone: true, imports: [NgTemplateOutlet, NgFor, NgIf, SacPagingComponent], 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" }]
654
+ }], propDecorators: { template: [{
655
+ type: ContentChild,
656
+ args: [TemplateRef, { static: true }]
657
+ }] } });
658
+
659
+ class SacGridColumnComponent extends SacGridColumnCommon {
660
+ constructor(grid, injector, el) {
661
+ super(grid, injector, el);
662
+ }
663
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridColumnComponent, deps: [{ token: SacGridComponent }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
664
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacGridColumnComponent, isStandalone: true, selector: "sac-gridcolumn", providers: [
665
+ {
666
+ provide: SacGridColumnBaseCommon,
667
+ useExisting: forwardRef(() => SacGridColumnComponent),
668
+ },
669
+ ], 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
670
+ }
671
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridColumnComponent, decorators: [{
672
+ type: Component,
673
+ args: [{ selector: 'sac-gridcolumn', providers: [
674
+ {
675
+ provide: SacGridColumnBaseCommon,
676
+ useExisting: forwardRef(() => SacGridColumnComponent),
677
+ },
678
+ ], standalone: true, imports: [NgIf], 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" }]
679
+ }], ctorParameters: function () { return [{ type: SacGridComponent }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
680
+
681
+ /**
682
+ * Grid Action Button
683
+ *
684
+ * @example Standard Action
685
+ *
686
+ * <ngGridButton icon="edit" (clicked)="action('edit')" [isdisabled]="true"></ngGridButton>
687
+ *
688
+ * @example Custom Action
689
+ *
690
+ * <ngGridButton iconstyle="sprite" icon="icon-sprite-base-main_info" (clicked)="action('info')"></ngGridButton>
691
+ *
692
+ */
693
+ class SacGridButtonComponent extends SacGridButtonCommon {
694
+ /**
695
+ * Gibt das Icon für den Button zurück
696
+ */
697
+ getIconClass() {
698
+ let iconset = this.iconstyle;
699
+ let iconcss = this.icon;
700
+ if (iconset === '') {
701
+ switch (this.icon) {
702
+ case 'edit':
703
+ iconset = 'sprite';
704
+ iconcss = 'icon-sprite-base-main_edit';
705
+ break;
706
+ case 'delete':
707
+ iconset = 'sprite';
708
+ iconcss = 'icon-sprite-base-main_delete';
709
+ break;
710
+ }
711
+ }
712
+ if (this._isdisabledvalue) {
713
+ iconcss += '_disabled';
714
+ }
715
+ const result = iconset + ' ' + iconcss;
716
+ return result.trim();
717
+ }
718
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
719
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacGridButtonComponent, isStandalone: true, 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" }); }
720
+ }
721
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridButtonComponent, decorators: [{
722
+ type: Component,
723
+ args: [{ selector: 'sac-gridbutton', standalone: true, template: "<a (click)=\"callaction()\" style=\"padding-right: 5px;\" [class.disabled]=\"isdisabled\" [attr.disabled]=\"isdisabled ? 'disabled' : null\"><span class=\"{{getIconClass()}}\"></span></a>\r\n" }]
724
+ }] });
725
+
726
+ class SacGridColumnActionComponent extends SacGridColumnActionCommon {
727
+ constructor(grid, injector, el) {
728
+ super(grid, injector, el);
729
+ this.width = '52px';
730
+ }
731
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridColumnActionComponent, deps: [{ token: SacGridComponent }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
732
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacGridColumnActionComponent, isStandalone: true, selector: "sac-gridcolumnaction", providers: [
733
+ {
734
+ provide: SacGridColumnBaseCommon,
735
+ useExisting: forwardRef(() => SacGridColumnActionComponent),
736
+ },
737
+ ], 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
738
+ }
739
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridColumnActionComponent, decorators: [{
740
+ type: Component,
741
+ args: [{ selector: 'sac-gridcolumnaction', providers: [
742
+ {
743
+ provide: SacGridColumnBaseCommon,
744
+ useExisting: forwardRef(() => SacGridColumnActionComponent),
745
+ },
746
+ ], standalone: true, imports: [NgIf], 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" }]
747
+ }], ctorParameters: function () { return [{ type: SacGridComponent }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
748
+
749
+ class SacGridImageComponent extends SacGridImageCommon {
750
+ getIconClass() {
751
+ switch (this.iconstyle) {
752
+ case 'edit':
753
+ return 'sprite icon-sprite-base-main_edit';
754
+ case 'delete':
755
+ return 'sprite icon-sprite-base-main_delete';
756
+ default:
757
+ return this.iconstyle;
758
+ }
759
+ }
760
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridImageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
761
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacGridImageComponent, isStandalone: true, selector: "sac-gridimage", usesInheritance: true, ngImport: i0, template: "<span style=\"padding-right: 5px;\"><span class=\"{{getIconClass()}}\"></span></span>\r\n" }); }
762
+ }
763
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridImageComponent, decorators: [{
764
+ type: Component,
765
+ args: [{ selector: 'sac-gridimage', standalone: true, template: "<span style=\"padding-right: 5px;\"><span class=\"{{getIconClass()}}\"></span></span>\r\n" }]
766
+ }] });
767
+
768
+ class SACBootstrap3GridModule {
769
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3GridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
770
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3GridModule, imports: [CommonModule,
771
+ SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent], exports: [SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent] }); }
772
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3GridModule, imports: [CommonModule] }); }
773
+ }
774
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3GridModule, decorators: [{
775
+ type: NgModule,
776
+ args: [{
777
+ imports: [
778
+ CommonModule,
779
+ SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent
780
+ ],
781
+ exports: [SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent]
782
+ }]
783
+ }] });
784
+
785
+ /**
786
+ * Tooltip Komponente
787
+ *
788
+ * @example ToolTip Control
789
+ *
790
+ * <ngTooltip tooltiptext="Mein Tooltip" [inlinemode]="true">
791
+ * <i class="tooltip"></i>
792
+ * </ngTooltip>
793
+ *
794
+ * @example ToolTip Control im Inline Mode. Style auf Icon kann auch in Klasse ausgelagert werden.
795
+ *
796
+ * <div class="form-inline">
797
+ * <ngInputSearch iconname="Suchen"></ngInputSearch>
798
+ * <ngTooltip tooltiptext="Mein Tooltip" [inlinemode]="true">
799
+ * <i class="tooltip" style="position: relative; left: 0; top: 3px; display: inline-block; margin-right: 10px;"></i>
800
+ * </ngTooltip>
801
+ * </div>
802
+ *
803
+ */
804
+ class SacTooltipComponent extends SacTooltipCommon {
805
+ /**
806
+ * Konstrukor
807
+ * @param parent SacFormular Instanz
808
+ * @param injector Component Injector
809
+ */
810
+ constructor(cdRef, ref) {
811
+ super(cdRef, ref);
812
+ }
813
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTooltipComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
814
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTooltipComponent, isStandalone: true, 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
815
+ }
816
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTooltipComponent, decorators: [{
817
+ type: Component,
818
+ args: [{ selector: 'sac-tooltip', standalone: true, imports: [NgIf], 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" }]
819
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; } });
820
+
821
+ class SACBootstrap3TooltipModule {
822
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
823
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TooltipModule, imports: [CommonModule, CommonModule,
824
+ SacTooltipComponent], exports: [SacTooltipComponent] }); }
825
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TooltipModule, imports: [CommonModule, CommonModule] }); }
826
+ }
827
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TooltipModule, decorators: [{
828
+ type: NgModule,
829
+ args: [{
830
+ imports: [
831
+ CommonModule, CommonModule,
832
+ SacTooltipComponent
833
+ ],
834
+ exports: [SacTooltipComponent]
835
+ }]
836
+ }] });
837
+
838
+ class SacInputComponent extends SacInputCommon {
839
+ // #region Constructors
840
+ /**
841
+ * Constructor
842
+ * @param formLayout SacFormLayout to define scoped layout settings
843
+ * @param injector Injector for injecting services
844
+ */
845
+ constructor(formLayout, injector) {
846
+ super(formLayout, injector);
847
+ }
848
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
849
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputComponent, isStandalone: true, selector: "sac-input", providers: [
850
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputComponent },
851
+ {
852
+ provide: NG_VALIDATORS,
853
+ multi: true,
854
+ useExisting: forwardRef(() => SacInputComponent),
855
+ },
856
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
857
+ }
858
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputComponent, decorators: [{
859
+ type: Component,
860
+ args: [{ selector: 'sac-input', providers: [
861
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputComponent },
862
+ {
863
+ provide: NG_VALIDATORS,
864
+ multi: true,
865
+ useExisting: forwardRef(() => SacInputComponent),
866
+ },
867
+ ], standalone: true, imports: [
868
+ NgClass,
869
+ NgIf,
870
+ AsyncPipe,
871
+ SacToLabelWidthCssPipe,
872
+ SacToControlWidthCssPipe,
873
+ ], 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" }]
874
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
875
+ type: Host
876
+ }, {
877
+ type: Optional
878
+ }] }, { type: i0.Injector }]; } });
879
+
880
+ /**
881
+ * Komponente für TextArea
882
+ *
883
+ * @example
884
+ *
885
+ * <ngInputArea name="ngInputArea" label="My Label" placeholder='i am input area' [isrequired]="true" customCssClass="myClass1 myClass3"></ngInputArea>
886
+ *
887
+ * @example
888
+ *
889
+ * <ngInputArea name="ngInputArea" label="My Label" height="150px" placeholder='i am input area' [islanguagespecific]="true">
890
+ *
891
+ */
892
+ class SacInputAreaComponent extends SacInputAreaCommon {
893
+ // #region Constructors
894
+ /**
895
+ * Constructor
896
+ * @param formLayout SacFormLayout to define scoped layout settings
897
+ * @param injector Injector for injecting services
898
+ */
899
+ constructor(formLayout, injector) {
900
+ super(formLayout, injector);
901
+ }
902
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputAreaComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
903
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputAreaComponent, isStandalone: true, selector: "sac-inputarea", providers: [
904
+ {
905
+ provide: NG_VALUE_ACCESSOR,
906
+ multi: true,
907
+ useExisting: SacInputAreaComponent,
908
+ },
909
+ {
910
+ provide: NG_VALIDATORS,
911
+ multi: true,
912
+ useExisting: forwardRef(() => SacInputAreaComponent),
913
+ },
914
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
915
+ }
916
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputAreaComponent, decorators: [{
917
+ type: Component,
918
+ args: [{ selector: 'sac-inputarea', providers: [
919
+ {
920
+ provide: NG_VALUE_ACCESSOR,
921
+ multi: true,
922
+ useExisting: SacInputAreaComponent,
923
+ },
924
+ {
925
+ provide: NG_VALIDATORS,
926
+ multi: true,
927
+ useExisting: forwardRef(() => SacInputAreaComponent),
928
+ },
929
+ ], standalone: true, imports: [
930
+ NgClass,
931
+ NgIf,
932
+ AsyncPipe,
933
+ SacToLabelWidthCssPipe,
934
+ SacToControlWidthCssPipe,
935
+ ], 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" }]
936
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
937
+ type: Host
938
+ }, {
939
+ type: Optional
940
+ }] }, { type: i0.Injector }]; } });
941
+
942
+ class SacInputCurrencyComponent extends SacInputCurrencyCommon {
943
+ // #region Constructors
944
+ /**
945
+ * Constructor
946
+ * @param formLayout SacFormLayout to define scoped layout settings
947
+ * @param injector Injector for injecting services
948
+ */
949
+ constructor(formLayout, injector) {
950
+ super(formLayout, injector);
951
+ }
952
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputCurrencyComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
953
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputCurrencyComponent, isStandalone: true, selector: "sac-inputcurrency", providers: [
954
+ {
955
+ provide: NG_VALUE_ACCESSOR,
956
+ multi: true,
957
+ useExisting: SacInputCurrencyComponent,
958
+ },
959
+ {
960
+ provide: NG_VALIDATORS,
961
+ multi: true,
962
+ useExisting: forwardRef(() => SacInputCurrencyComponent),
963
+ },
964
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
965
+ }
966
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputCurrencyComponent, decorators: [{
967
+ type: Component,
968
+ args: [{ selector: 'sac-inputcurrency', providers: [
969
+ {
970
+ provide: NG_VALUE_ACCESSOR,
971
+ multi: true,
972
+ useExisting: SacInputCurrencyComponent,
973
+ },
974
+ {
975
+ provide: NG_VALIDATORS,
976
+ multi: true,
977
+ useExisting: forwardRef(() => SacInputCurrencyComponent),
978
+ },
979
+ ], standalone: true, imports: [
980
+ NgClass,
981
+ NgIf,
982
+ AsyncPipe,
983
+ SacToLabelWidthCssPipe,
984
+ SacToControlWidthCssPipe,
985
+ ], 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" }]
986
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
987
+ type: Host
988
+ }, {
989
+ type: Optional
990
+ }] }, { type: i0.Injector }]; } });
991
+
992
+ class SacInputDecimalComponent extends SacInputDecimalCommon {
993
+ // #region Constructors
994
+ /**
995
+ * Constructor
996
+ * @param formLayout SacFormLayout to define scoped layout settings
997
+ * @param injector Injector for injecting services
998
+ */
999
+ constructor(formLayout, injector) {
1000
+ super(formLayout, injector);
1001
+ }
1002
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputDecimalComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1003
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputDecimalComponent, isStandalone: true, selector: "sac-inputdecimal", providers: [
1004
+ {
1005
+ provide: NG_VALUE_ACCESSOR,
1006
+ multi: true,
1007
+ useExisting: SacInputDecimalComponent,
1008
+ },
1009
+ {
1010
+ provide: NG_VALIDATORS,
1011
+ multi: true,
1012
+ useExisting: forwardRef(() => SacInputDecimalComponent),
1013
+ },
1014
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
1015
+ }
1016
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputDecimalComponent, decorators: [{
1017
+ type: Component,
1018
+ args: [{ selector: 'sac-inputdecimal', providers: [
1019
+ {
1020
+ provide: NG_VALUE_ACCESSOR,
1021
+ multi: true,
1022
+ useExisting: SacInputDecimalComponent,
1023
+ },
1024
+ {
1025
+ provide: NG_VALIDATORS,
1026
+ multi: true,
1027
+ useExisting: forwardRef(() => SacInputDecimalComponent),
1028
+ },
1029
+ ], standalone: true, imports: [
1030
+ NgClass,
1031
+ NgIf,
1032
+ AsyncPipe,
1033
+ SacToLabelWidthCssPipe,
1034
+ SacToControlWidthCssPipe,
1035
+ ], 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" }]
1036
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
1037
+ type: Host
1038
+ }, {
1039
+ type: Optional
1040
+ }] }, { type: i0.Injector }]; } });
1041
+
1042
+ class SacInputEmailComponent extends SacInputEmailCommon {
1043
+ // #region Constructors
1044
+ /**
1045
+ * Constructor
1046
+ * @param formLayout SacFormLayout to define scoped layout settings
1047
+ * @param injector Injector for injecting services
1048
+ */
1049
+ constructor(formLayout, injector) {
1050
+ super(formLayout, injector);
1051
+ }
1052
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputEmailComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1053
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputEmailComponent, isStandalone: true, selector: "sac-inputemail", providers: [
1054
+ {
1055
+ provide: NG_VALUE_ACCESSOR,
1056
+ multi: true,
1057
+ useExisting: SacInputEmailComponent,
1058
+ },
1059
+ {
1060
+ provide: NG_VALIDATORS,
1061
+ multi: true,
1062
+ useExisting: forwardRef(() => SacInputEmailComponent),
1063
+ },
1064
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
1065
+ }
1066
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputEmailComponent, decorators: [{
1067
+ type: Component,
1068
+ args: [{ selector: 'sac-inputemail', providers: [
1069
+ {
1070
+ provide: NG_VALUE_ACCESSOR,
1071
+ multi: true,
1072
+ useExisting: SacInputEmailComponent,
1073
+ },
1074
+ {
1075
+ provide: NG_VALIDATORS,
1076
+ multi: true,
1077
+ useExisting: forwardRef(() => SacInputEmailComponent),
1078
+ },
1079
+ ], standalone: true, imports: [
1080
+ NgClass,
1081
+ NgIf,
1082
+ AsyncPipe,
1083
+ SacToLabelWidthCssPipe,
1084
+ SacToControlWidthCssPipe,
1085
+ ], 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" }]
1086
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
1087
+ type: Host
1088
+ }, {
1089
+ type: Optional
1090
+ }] }, { type: i0.Injector }]; } });
1091
+
1092
+ class SacInputIntegerComponent extends SacInputIntegerCommon {
1093
+ // #region Constructors
1094
+ /**
1095
+ * Constructor
1096
+ * @param formLayout SacFormLayout to define scoped layout settings
1097
+ * @param injector Injector for injecting services
1098
+ */
1099
+ constructor(formLayout, injector) {
1100
+ super(formLayout, injector);
1101
+ }
1102
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputIntegerComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1103
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputIntegerComponent, isStandalone: true, selector: "sac-inputinteger", providers: [
1104
+ {
1105
+ provide: NG_VALUE_ACCESSOR,
1106
+ multi: true,
1107
+ useExisting: SacInputIntegerComponent,
1108
+ },
1109
+ {
1110
+ provide: NG_VALIDATORS,
1111
+ multi: true,
1112
+ useExisting: forwardRef(() => SacInputIntegerComponent),
1113
+ },
1114
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
1115
+ }
1116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputIntegerComponent, decorators: [{
1117
+ type: Component,
1118
+ args: [{ selector: 'sac-inputinteger', providers: [
1119
+ {
1120
+ provide: NG_VALUE_ACCESSOR,
1121
+ multi: true,
1122
+ useExisting: SacInputIntegerComponent,
1123
+ },
1124
+ {
1125
+ provide: NG_VALIDATORS,
1126
+ multi: true,
1127
+ useExisting: forwardRef(() => SacInputIntegerComponent),
1128
+ },
1129
+ ], standalone: true, imports: [
1130
+ NgClass,
1131
+ NgIf,
1132
+ AsyncPipe,
1133
+ SacToLabelWidthCssPipe,
1134
+ SacToControlWidthCssPipe,
1135
+ ], 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" }]
1136
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
1137
+ type: Host
1138
+ }, {
1139
+ type: Optional
1140
+ }] }, { type: i0.Injector }]; } });
1141
+
1142
+ class SacInputPasswordComponent extends SacInputPasswordCommon {
1143
+ // #region Constructors
1144
+ /**
1145
+ * Constructor
1146
+ * @param formLayout SacFormLayout to define scoped layout settings
1147
+ * @param injector Injector for injecting services
1148
+ */
1149
+ constructor(formLayout, injector) {
1150
+ super(formLayout, injector);
1151
+ }
1152
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputPasswordComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1153
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputPasswordComponent, isStandalone: true, selector: "sac-inputpassword", providers: [
1154
+ {
1155
+ provide: NG_VALUE_ACCESSOR,
1156
+ multi: true,
1157
+ useExisting: SacInputPasswordComponent,
1158
+ },
1159
+ {
1160
+ provide: NG_VALIDATORS,
1161
+ multi: true,
1162
+ useExisting: forwardRef(() => SacInputPasswordComponent),
1163
+ },
1164
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
1165
+ }
1166
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputPasswordComponent, decorators: [{
1167
+ type: Component,
1168
+ args: [{ selector: 'sac-inputpassword', providers: [
1169
+ {
1170
+ provide: NG_VALUE_ACCESSOR,
1171
+ multi: true,
1172
+ useExisting: SacInputPasswordComponent,
1173
+ },
1174
+ {
1175
+ provide: NG_VALIDATORS,
1176
+ multi: true,
1177
+ useExisting: forwardRef(() => SacInputPasswordComponent),
1178
+ },
1179
+ ], standalone: true, imports: [
1180
+ NgClass,
1181
+ NgIf,
1182
+ AsyncPipe,
1183
+ SacToLabelWidthCssPipe,
1184
+ SacToControlWidthCssPipe,
1185
+ ], 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" }]
1186
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
1187
+ type: Host
1188
+ }, {
1189
+ type: Optional
1190
+ }] }, { type: i0.Injector }]; } });
1191
+
1192
+ class SacInputSearchComponent extends SacInputSearchCommon {
1193
+ // #region Constructors
1194
+ /**
1195
+ * Constructor
1196
+ * @param formLayout SacFormLayout to define scoped layout settings
1197
+ * @param injector Injector for injecting services
1198
+ */
1199
+ constructor(formLayout, injector) {
1200
+ super(formLayout, injector);
1201
+ }
1202
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputSearchComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1203
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputSearchComponent, isStandalone: true, selector: "sac-inputsearch", providers: [
1204
+ {
1205
+ provide: NG_VALUE_ACCESSOR,
1206
+ multi: true,
1207
+ useExisting: SacInputSearchComponent,
1208
+ },
1209
+ {
1210
+ provide: NG_VALIDATORS,
1211
+ multi: true,
1212
+ useExisting: forwardRef(() => SacInputSearchComponent),
1213
+ },
1214
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
1215
+ }
1216
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputSearchComponent, decorators: [{
1217
+ type: Component,
1218
+ args: [{ 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
+ ], standalone: true, imports: [NgClass, NgIf, SacToLabelWidthCssPipe, SacToControlWidthCssPipe], 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" }]
1230
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
1231
+ type: Host
1232
+ }, {
1233
+ type: Optional
1234
+ }] }, { type: i0.Injector }]; } });
1235
+
1236
+ class SACBootstrap3InputModule {
1237
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3InputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1238
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3InputModule, imports: [CommonModule, CommonModule, FormsModule, SACBootstrap3TooltipModule,
1239
+ SacInputComponent, SacInputAreaComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent], exports: [SacInputComponent, SacInputAreaComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent] }); }
1240
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3InputModule, imports: [CommonModule, CommonModule, FormsModule, SACBootstrap3TooltipModule] }); }
1241
+ }
1242
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3InputModule, decorators: [{
1243
+ type: NgModule,
1244
+ args: [{
1245
+ imports: [
1246
+ CommonModule, CommonModule, FormsModule, SACBootstrap3TooltipModule,
1247
+ SacInputComponent, SacInputAreaComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent
1248
+ ],
1249
+ exports: [SacInputComponent, SacInputAreaComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent]
1250
+ }]
1251
+ }] });
1252
+
1253
+ class SACBootstrap3LayoutModule {
1254
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3LayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1255
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3LayoutModule, imports: [CommonModule,
1256
+ SacFormLayoutDirective,
1257
+ SacToControlWidthCssPipe,
1258
+ SacToLabelWidthCssPipe], exports: [SacFormLayoutDirective,
1259
+ SacToControlWidthCssPipe,
1260
+ SacToLabelWidthCssPipe] }); }
1261
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3LayoutModule, imports: [CommonModule] }); }
1262
+ }
1263
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3LayoutModule, decorators: [{
1264
+ type: NgModule,
1265
+ args: [{
1266
+ imports: [
1267
+ CommonModule,
1268
+ SacFormLayoutDirective,
1269
+ SacToControlWidthCssPipe,
1270
+ SacToLabelWidthCssPipe,
1271
+ ],
1272
+ exports: [
1273
+ SacFormLayoutDirective,
1274
+ SacToControlWidthCssPipe,
1275
+ SacToLabelWidthCssPipe,
1276
+ ],
1277
+ }]
1278
+ }] });
1279
+
1280
+ // #region Classes
1281
+ class SacDropdownComponent extends SacDropdownCommon {
1282
+ // #region Constructors
1283
+ /**
1284
+ * Constructor
1285
+ * @param formLayout SacFormLayout to define scoped layout settings
1286
+ * @param injector Injector for injecting services
1287
+ * @param renderer Angular rendering engine
1288
+ * @param elementRef Reference to html dom element
1289
+ */
1290
+ constructor(formLayout, injector, renderer, elementRef) {
1291
+ super(formLayout, injector, renderer, elementRef);
1292
+ }
1293
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
1294
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacDropdownComponent, isStandalone: true, selector: "sac-dropdown", providers: [
1295
+ {
1296
+ provide: NG_VALUE_ACCESSOR,
1297
+ multi: true,
1298
+ useExisting: SacDropdownComponent,
1299
+ },
1300
+ {
1301
+ provide: NG_VALIDATORS,
1302
+ multi: true,
1303
+ useExisting: forwardRef(() => SacDropdownComponent),
1304
+ },
1305
+ ], 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", dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(function () { return FormsModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgSelectOption; }), selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.ɵNgSelectMultipleOption; }), selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i0.forwardRef(function () { return SacDropdownOptionDirective; }), selector: "option,[sacOption]" }, { kind: "directive", type: i0.forwardRef(function () { return NgFor; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i0.forwardRef(function () { return AsyncPipe; }), name: "async" }, { kind: "pipe", type: i0.forwardRef(function () { return SacToLabelWidthCssPipe; }), name: "toLabelWidthCss" }, { kind: "pipe", type: i0.forwardRef(function () { return SacToControlWidthCssPipe; }), name: "toControlWidthCss" }] }); }
1306
+ }
1307
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownComponent, decorators: [{
1308
+ type: Component,
1309
+ args: [{ selector: 'sac-dropdown', providers: [
1310
+ {
1311
+ provide: NG_VALUE_ACCESSOR,
1312
+ multi: true,
1313
+ useExisting: SacDropdownComponent,
1314
+ },
1315
+ {
1316
+ provide: NG_VALIDATORS,
1317
+ multi: true,
1318
+ useExisting: forwardRef(() => SacDropdownComponent),
1319
+ },
1320
+ ], standalone: true, imports: [
1321
+ NgClass,
1322
+ NgIf,
1323
+ FormsModule,
1324
+ forwardRef(() => SacDropdownOptionDirective),
1325
+ NgFor,
1326
+ NgTemplateOutlet,
1327
+ AsyncPipe,
1328
+ SacToLabelWidthCssPipe,
1329
+ SacToControlWidthCssPipe,
1330
+ ], 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" }]
1331
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
1332
+ type: Host
1333
+ }, {
1334
+ type: Optional
1335
+ }] }, { type: i0.Injector }, { type: i0.Renderer2 }, { type: i0.ElementRef }]; } });
1336
+ class SacDropdownOptionDirective extends SacDropdownOptionCommon {
1337
+ // #region Constructors
1338
+ /**
1339
+ * Konstruktor
1340
+ * @param elementRef Referenz auf HTML DOM Element
1341
+ * @param renderer Angular Rendering Engine
1342
+ * @param dropdownList Referenz auf DropDown Komponente
1343
+ */
1344
+ constructor(elementRef, renderer, dropdownList) {
1345
+ super(elementRef, renderer, dropdownList);
1346
+ }
1347
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownOptionDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: SacDropdownComponent, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
1348
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SacDropdownOptionDirective, isStandalone: true, selector: "option,[sacOption]", usesInheritance: true, ngImport: i0 }); }
1349
+ }
1350
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownOptionDirective, decorators: [{
1351
+ type: Directive,
1352
+ args: [{ selector: 'option,[sacOption]', standalone: true }]
1353
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: SacDropdownComponent, decorators: [{
1354
+ type: Optional
1355
+ }, {
1356
+ type: Host
1357
+ }] }]; } });
1358
+
1359
+ class SacListboxComponent extends SacListboxCommon {
1360
+ // #region Constructors
1361
+ /**
1362
+ * Constructor
1363
+ * @param formLayout SacFormLayout to define scoped layout settings
1364
+ * @param injector Injector for injecting services
1365
+ */
1366
+ constructor(formLayout, injector) {
1367
+ super(formLayout, injector);
1368
+ }
1369
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacListboxComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1370
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacListboxComponent, isStandalone: true, selector: "sac-listbox", providers: [
1371
+ {
1372
+ provide: NG_VALUE_ACCESSOR,
1373
+ multi: true,
1374
+ useExisting: SacListboxComponent,
1375
+ },
1376
+ {
1377
+ provide: NG_VALIDATORS,
1378
+ multi: true,
1379
+ useExisting: forwardRef(() => SacListboxComponent),
1380
+ },
1381
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: SacDropdownOptionDirective, selector: "option,[sacOption]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
1382
+ }
1383
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacListboxComponent, decorators: [{
309
1384
  type: Component,
310
1385
  args: [{ selector: 'sac-listbox', providers: [
311
1386
  {
@@ -326,8 +1401,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
326
1401
  SacDropdownOptionDirective,
327
1402
  NgTemplateOutlet,
328
1403
  AsyncPipe,
329
- ], 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" }]
330
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
1404
+ SacToLabelWidthCssPipe,
1405
+ SacToControlWidthCssPipe,
1406
+ ], 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" }]
1407
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
331
1408
  type: Host
332
1409
  }, {
333
1410
  type: Optional
@@ -365,458 +1442,185 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
365
1442
  }]
366
1443
  }] });
367
1444
 
368
- class SacValidationSummaryComponent extends SacValidationSummaryCommon {
369
- constructor(parent, injector) {
370
- super(parent, injector);
1445
+ class SacStaticLabelComponent extends SacStaticLabelCommon {
1446
+ // #region Constructors
1447
+ /**
1448
+ * Constructor
1449
+ * @param formLayout SacFormLayout to define scoped layout settings
1450
+ * @param injector Injector for injecting services
1451
+ */
1452
+ constructor(formLayout, injector) {
1453
+ super(formLayout, injector);
371
1454
  }
372
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacValidationSummaryComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
373
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacValidationSummaryComponent, isStandalone: true, selector: "sac-validationsummary", providers: [
1455
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacStaticLabelComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1456
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacStaticLabelComponent, isStandalone: true, selector: "sac-staticlabel", providers: [
374
1457
  {
375
1458
  provide: NG_VALUE_ACCESSOR,
376
1459
  multi: true,
377
- useExisting: SacValidationSummaryComponent
378
- }
379
- ], 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], viewProviders: [{ provide: ControlContainer, useExisting: SacFormDirective }] }); }
380
- }
381
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacValidationSummaryComponent, decorators: [{
382
- type: Component,
383
- args: [{ selector: 'sac-validationsummary', providers: [
384
- {
385
- provide: NG_VALUE_ACCESSOR,
386
- multi: true,
387
- useExisting: SacValidationSummaryComponent
388
- }
389
- ], viewProviders: [{ provide: ControlContainer, useExisting: SacFormDirective }], standalone: true, imports: [NgIf, NgFor, AsyncPipe], 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" }]
390
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
391
- type: Host
392
- }, {
393
- type: Optional
394
- }] }, { type: i0.Injector }]; } });
395
-
396
- class SACBootstrap3ValidationSummaryModule {
397
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
398
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, imports: [CommonModule,
399
- SacValidationSummaryComponent], exports: [SacValidationSummaryComponent] }); }
400
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, imports: [CommonModule] }); }
401
- }
402
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, decorators: [{
403
- type: NgModule,
404
- args: [{
405
- imports: [
406
- CommonModule,
407
- SacValidationSummaryComponent
408
- ],
409
- exports: [SacValidationSummaryComponent]
410
- }]
411
- }] });
412
-
413
- class SacTabItemComponent extends SacTabItemCommon {
414
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTabItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
415
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTabItemComponent, isStandalone: true, 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
416
- }
417
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTabItemComponent, decorators: [{
418
- type: Component,
419
- args: [{ selector: 'sac-tabitem', standalone: true, imports: [NgIf, NgTemplateOutlet], 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" }]
420
- }] });
421
-
422
- class SacTabComponent extends SacTabCommon {
423
- tabItems() {
424
- return this._tabItems.toArray();
425
- }
426
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTabComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
427
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTabComponent, isStandalone: true, 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", dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
428
- }
429
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTabComponent, decorators: [{
430
- type: Component,
431
- args: [{ selector: 'sac-tab', standalone: true, imports: [NgFor, NgClass, NgStyle, NgTemplateOutlet], 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" }]
432
- }], propDecorators: { _tabItems: [{
433
- type: ContentChildren,
434
- args: [SacTabItemComponent]
435
- }] } });
436
-
437
- class SACBootstrap3TabsModule {
438
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
439
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TabsModule, imports: [CommonModule,
440
- SacTabComponent, SacTabItemComponent], exports: [SacTabComponent, SacTabItemComponent] }); }
441
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TabsModule, imports: [CommonModule] }); }
442
- }
443
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TabsModule, decorators: [{
444
- type: NgModule,
445
- args: [{
446
- imports: [
447
- CommonModule,
448
- SacTabComponent, SacTabItemComponent
449
- ],
450
- exports: [SacTabComponent, SacTabItemComponent]
451
- }]
452
- }] });
453
-
454
- /**
455
- * Tooltip Komponente
456
- *
457
- * @example ToolTip Control
458
- *
459
- * <ngTooltip tooltiptext="Mein Tooltip" [inlinemode]="true">
460
- * <i class="tooltip"></i>
461
- * </ngTooltip>
462
- *
463
- * @example ToolTip Control im Inline Mode. Style auf Icon kann auch in Klasse ausgelagert werden.
464
- *
465
- * <div class="form-inline">
466
- * <ngInputSearch iconname="Suchen"></ngInputSearch>
467
- * <ngTooltip tooltiptext="Mein Tooltip" [inlinemode]="true">
468
- * <i class="tooltip" style="position: relative; left: 0; top: 3px; display: inline-block; margin-right: 10px;"></i>
469
- * </ngTooltip>
470
- * </div>
471
- *
472
- */
473
- class SacTooltipComponent extends SacTooltipCommon {
474
- /**
475
- * Konstrukor
476
- * @param parent SacFormular Instanz
477
- * @param injector Component Injector
478
- */
479
- constructor(cdRef, ref) {
480
- super(cdRef, ref);
481
- }
482
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTooltipComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
483
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTooltipComponent, isStandalone: true, 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
484
- }
485
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTooltipComponent, decorators: [{
486
- type: Component,
487
- args: [{ selector: 'sac-tooltip', standalone: true, imports: [NgIf], 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" }]
488
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; } });
489
-
490
- class SACBootstrap3TooltipModule {
491
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
492
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TooltipModule, imports: [CommonModule, CommonModule,
493
- SacTooltipComponent], exports: [SacTooltipComponent] }); }
494
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TooltipModule, imports: [CommonModule, CommonModule] }); }
495
- }
496
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TooltipModule, decorators: [{
497
- type: NgModule,
498
- args: [{
499
- imports: [
500
- CommonModule, CommonModule,
501
- SacTooltipComponent
502
- ],
503
- exports: [SacTooltipComponent]
504
- }]
505
- }] });
506
-
507
- class SacInputComponent extends SacInputCommon {
508
- constructor(parent, injector) {
509
- super(parent, injector);
510
- }
511
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
512
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputComponent, isStandalone: true, selector: "sac-input", providers: [
513
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputComponent },
514
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputComponent) }
515
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
516
- }
517
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputComponent, decorators: [{
518
- type: Component,
519
- args: [{ selector: 'sac-input', providers: [
520
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputComponent },
521
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputComponent) }
522
- ], standalone: true, imports: [NgClass, NgIf, AsyncPipe], 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" }]
523
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
524
- type: Host
525
- }, {
526
- type: Optional
527
- }] }, { type: i0.Injector }]; } });
528
-
529
- /**
530
- * Komponente für TextArea
531
- *
532
- * @example
533
- *
534
- * <ngInputArea name="ngInputArea" label="My Label" placeholder='i am input area' [isrequired]="true" customCssClass="myClass1 myClass3"></ngInputArea>
535
- *
536
- * @example
537
- *
538
- * <ngInputArea name="ngInputArea" label="My Label" height="150px" placeholder='i am input area' [islanguagespecific]="true">
539
- *
540
- */
541
- class SacInputAreaComponent extends SacInputAreaCommon {
542
- constructor(parent, injector) {
543
- super(parent, injector);
544
- }
545
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputAreaComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
546
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputAreaComponent, isStandalone: true, selector: "sac-inputarea", providers: [
547
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputAreaComponent },
548
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputAreaComponent) }
549
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
550
- }
551
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputAreaComponent, decorators: [{
552
- type: Component,
553
- args: [{ selector: 'sac-inputarea', providers: [
554
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputAreaComponent },
555
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputAreaComponent) }
556
- ], standalone: true, imports: [NgClass, NgIf, AsyncPipe], 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" }]
557
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
558
- type: Host
559
- }, {
560
- type: Optional
561
- }] }, { type: i0.Injector }]; } });
562
-
563
- class SacInputCurrencyComponent extends SacInputCurrencyCommon {
564
- constructor(parent, injector) {
565
- super(parent, injector);
566
- }
567
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputCurrencyComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
568
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputCurrencyComponent, isStandalone: true, selector: "sac-inputcurrency", providers: [
569
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputCurrencyComponent },
570
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputCurrencyComponent) }
571
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
572
- }
573
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputCurrencyComponent, decorators: [{
574
- type: Component,
575
- args: [{ selector: 'sac-inputcurrency', providers: [
576
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputCurrencyComponent },
577
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputCurrencyComponent) }
578
- ], standalone: true, imports: [NgClass, NgIf, AsyncPipe], 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" }]
579
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
580
- type: Host
581
- }, {
582
- type: Optional
583
- }] }, { type: i0.Injector }]; } });
584
-
585
- class SacInputDecimalComponent extends SacInputDecimalCommon {
586
- constructor(parent, injector) {
587
- super(parent, injector);
588
- }
589
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputDecimalComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
590
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputDecimalComponent, isStandalone: true, selector: "sac-inputdecimal", providers: [
591
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputDecimalComponent },
592
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputDecimalComponent) }
593
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
594
- }
595
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputDecimalComponent, decorators: [{
596
- type: Component,
597
- args: [{ selector: 'sac-inputdecimal', providers: [
598
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputDecimalComponent },
599
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputDecimalComponent) }
600
- ], standalone: true, imports: [NgClass, NgIf, AsyncPipe], 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" }]
601
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
602
- type: Host
603
- }, {
604
- type: Optional
605
- }] }, { type: i0.Injector }]; } });
606
-
607
- class SacInputEmailComponent extends SacInputEmailCommon {
608
- constructor(parent, injector) {
609
- super(parent, injector);
610
- }
611
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputEmailComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
612
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputEmailComponent, isStandalone: true, selector: "sac-inputemail", providers: [
613
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputEmailComponent },
614
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputEmailComponent) }
615
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
616
- }
617
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputEmailComponent, decorators: [{
618
- type: Component,
619
- args: [{ selector: 'sac-inputemail', providers: [
620
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputEmailComponent },
621
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputEmailComponent) }
622
- ], standalone: true, imports: [NgClass, NgIf, AsyncPipe], 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" }]
623
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
624
- type: Host
625
- }, {
626
- type: Optional
627
- }] }, { type: i0.Injector }]; } });
628
-
629
- class SacInputIntegerComponent extends SacInputIntegerCommon {
630
- constructor(parent, injector) {
631
- super(parent, injector);
632
- }
633
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputIntegerComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
634
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputIntegerComponent, isStandalone: true, selector: "sac-inputinteger", providers: [
635
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputIntegerComponent },
636
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputIntegerComponent) }
637
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
638
- }
639
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputIntegerComponent, decorators: [{
640
- type: Component,
641
- args: [{ selector: 'sac-inputinteger', providers: [
642
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputIntegerComponent },
643
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputIntegerComponent) }
644
- ], standalone: true, imports: [NgClass, NgIf, AsyncPipe], 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" }]
645
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
646
- type: Host
647
- }, {
648
- type: Optional
649
- }] }, { type: i0.Injector }]; } });
650
-
651
- class SacInputPasswordComponent extends SacInputPasswordCommon {
652
- constructor(parent, injector) {
653
- super(parent, injector);
654
- }
655
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputPasswordComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
656
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputPasswordComponent, isStandalone: true, selector: "sac-inputpassword", providers: [
657
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputPasswordComponent },
658
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputPasswordComponent) }
659
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
1460
+ useExisting: SacStaticLabelComponent,
1461
+ },
1462
+ {
1463
+ provide: NG_VALIDATORS,
1464
+ multi: true,
1465
+ useExisting: forwardRef(() => SacStaticLabelComponent),
1466
+ },
1467
+ ], 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
660
1468
  }
661
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputPasswordComponent, decorators: [{
1469
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacStaticLabelComponent, decorators: [{
662
1470
  type: Component,
663
- args: [{ selector: 'sac-inputpassword', providers: [
664
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputPasswordComponent },
665
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputPasswordComponent) }
666
- ], standalone: true, imports: [NgClass, NgIf, AsyncPipe], 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" }]
667
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
1471
+ args: [{ selector: 'sac-staticlabel', providers: [
1472
+ {
1473
+ provide: NG_VALUE_ACCESSOR,
1474
+ multi: true,
1475
+ useExisting: SacStaticLabelComponent,
1476
+ },
1477
+ {
1478
+ provide: NG_VALIDATORS,
1479
+ multi: true,
1480
+ useExisting: forwardRef(() => SacStaticLabelComponent),
1481
+ },
1482
+ ], standalone: true, imports: [NgIf, NgClass, SacToLabelWidthCssPipe, SacToControlWidthCssPipe], 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" }]
1483
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
668
1484
  type: Host
669
1485
  }, {
670
1486
  type: Optional
671
1487
  }] }, { type: i0.Injector }]; } });
672
1488
 
673
- class SacInputSearchComponent extends SacInputSearchCommon {
674
- constructor(parent, injector) {
675
- super(parent, injector);
1489
+ /**
1490
+ * Component für einbindung eines beliebigen Controls in die Form Struktur
1491
+ *
1492
+ * @example
1493
+ * <ngStaticFormContainer name='myformcontainer' label="My Custom Form Control" [isrequired]='false'>
1494
+ * <input type="range" class="form-control" />
1495
+ * </ngStaticFormContainer>
1496
+ *
1497
+ * @example
1498
+ * <ngStaticFormContainer name='myformcintainer' label="My Custom Form Control" [isrequired]='false' tooltiptext="Dies ist ein Tooltip Text">
1499
+ * <input type="range" class="form-control" />
1500
+ * </ngStaticFormContainer>
1501
+ *
1502
+ **/
1503
+ class SacStaticFormContainerComponent extends SacStaticFormContainerCommon {
1504
+ // #region Constructors
1505
+ /**
1506
+ * Constructor
1507
+ * @param formLayout SacFormLayout to define scoped layout settings
1508
+ * @param injector Injector for injecting services
1509
+ */
1510
+ constructor(formLayout, injector) {
1511
+ super(formLayout, injector);
676
1512
  }
677
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputSearchComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
678
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputSearchComponent, isStandalone: true, selector: "sac-inputsearch", providers: [
679
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputSearchComponent },
680
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputSearchComponent) }
681
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
1513
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacStaticFormContainerComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1514
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacStaticFormContainerComponent, isStandalone: true, selector: "sac-staticformcontainer", providers: [
1515
+ {
1516
+ provide: NG_VALUE_ACCESSOR,
1517
+ multi: true,
1518
+ useExisting: SacStaticFormContainerComponent,
1519
+ },
1520
+ {
1521
+ provide: NG_VALIDATORS,
1522
+ multi: true,
1523
+ useExisting: forwardRef(() => SacStaticFormContainerComponent),
1524
+ },
1525
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
682
1526
  }
683
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputSearchComponent, decorators: [{
1527
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacStaticFormContainerComponent, decorators: [{
684
1528
  type: Component,
685
- args: [{ selector: 'sac-inputsearch', providers: [
686
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputSearchComponent },
687
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputSearchComponent) }
688
- ], standalone: true, imports: [NgClass, NgIf], 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" }]
689
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
1529
+ args: [{ selector: 'sac-staticformcontainer', providers: [
1530
+ {
1531
+ provide: NG_VALUE_ACCESSOR,
1532
+ multi: true,
1533
+ useExisting: SacStaticFormContainerComponent,
1534
+ },
1535
+ {
1536
+ provide: NG_VALIDATORS,
1537
+ multi: true,
1538
+ useExisting: forwardRef(() => SacStaticFormContainerComponent),
1539
+ },
1540
+ ], standalone: true, imports: [
1541
+ NgClass,
1542
+ NgIf,
1543
+ AsyncPipe,
1544
+ SacToLabelWidthCssPipe,
1545
+ SacToControlWidthCssPipe,
1546
+ ], 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" }]
1547
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
690
1548
  type: Host
691
1549
  }, {
692
1550
  type: Optional
693
1551
  }] }, { type: i0.Injector }]; } });
694
1552
 
695
- class SACBootstrap3InputModule {
696
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3InputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
697
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3InputModule, imports: [CommonModule, CommonModule, FormsModule, SACBootstrap3TooltipModule,
698
- SacInputComponent, SacInputAreaComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent], exports: [SacInputComponent, SacInputAreaComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent] }); }
699
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3InputModule, imports: [CommonModule, CommonModule, FormsModule, SACBootstrap3TooltipModule] }); }
1553
+ class SACBootstrap3StaticLabelModule {
1554
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3StaticLabelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1555
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3StaticLabelModule, imports: [CommonModule, SACBootstrap3TooltipModule,
1556
+ SacStaticLabelComponent, SacStaticFormContainerComponent], exports: [SacStaticLabelComponent, SacStaticFormContainerComponent] }); }
1557
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3StaticLabelModule, imports: [CommonModule, SACBootstrap3TooltipModule] }); }
700
1558
  }
701
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3InputModule, decorators: [{
1559
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3StaticLabelModule, decorators: [{
702
1560
  type: NgModule,
703
1561
  args: [{
704
1562
  imports: [
705
- CommonModule, CommonModule, FormsModule, SACBootstrap3TooltipModule,
706
- SacInputComponent, SacInputAreaComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent
1563
+ CommonModule, SACBootstrap3TooltipModule,
1564
+ SacStaticLabelComponent, SacStaticFormContainerComponent
707
1565
  ],
708
- exports: [SacInputComponent, SacInputAreaComponent, SacInputCurrencyComponent, SacInputDecimalComponent, SacInputEmailComponent, SacInputIntegerComponent, SacInputPasswordComponent, SacInputSearchComponent]
1566
+ exports: [SacStaticLabelComponent, SacStaticFormContainerComponent]
709
1567
  }]
710
1568
  }] });
711
1569
 
712
- class SacDateSelectorComponent extends SacDateSelectorCommon {
713
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDateSelectorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
714
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacDateSelectorComponent, isStandalone: true, 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
1570
+ class SacTabItemComponent extends SacTabItemCommon {
1571
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTabItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1572
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTabItemComponent, isStandalone: true, 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
715
1573
  }
716
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDateSelectorComponent, decorators: [{
1574
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTabItemComponent, decorators: [{
717
1575
  type: Component,
718
- args: [{ selector: 'sac-dateselector', standalone: true, imports: [
719
- NgIf,
720
- NgFor,
721
- NgStyle,
722
- NgClass,
723
- ], 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" }]
1576
+ args: [{ selector: 'sac-tabitem', standalone: true, imports: [NgIf, NgTemplateOutlet], 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" }]
724
1577
  }] });
725
1578
 
726
- const moment = moment_["default"];
727
- class SacDateComponent extends SacDateCommon {
728
- constructor(parent, injector, _elementRef) {
729
- super(parent, injector, _elementRef);
730
- }
731
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDateComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
732
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacDateComponent, isStandalone: true, selector: "sac-date", providers: [
733
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => SacDateComponent) },
734
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacDateComponent) }
735
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: IMaskDirective, selector: "[imask]", inputs: ["imask", "unmask", "imaskElement"], outputs: ["accept", "complete"], exportAs: ["imask"] }, { kind: "component", type: SacDateSelectorComponent, selector: "sac-dateselector" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
736
- }
737
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDateComponent, decorators: [{
738
- type: Component,
739
- args: [{ selector: 'sac-date', providers: [
740
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => SacDateComponent) },
741
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacDateComponent) }
742
- ], standalone: true, imports: [NgClass, NgIf, IMaskDirective, SacDateSelectorComponent, AsyncPipe], 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" }]
743
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
744
- type: Host
745
- }, {
746
- type: Optional
747
- }] }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
748
-
749
- class SacDateTimeComponent extends SacDateTimeCommon {
750
- constructor(parent, injector, _elementRef) {
751
- super(parent, injector, _elementRef);
752
- }
753
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDateTimeComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
754
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacDateTimeComponent, isStandalone: true, selector: "sac-datetime", providers: [
755
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => SacDateTimeComponent) },
756
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacDateTimeComponent) }
757
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: IMaskDirective, selector: "[imask]", inputs: ["imask", "unmask", "imaskElement"], outputs: ["accept", "complete"], exportAs: ["imask"] }, { kind: "component", type: SacDateSelectorComponent, selector: "sac-dateselector" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
758
- }
759
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDateTimeComponent, decorators: [{
760
- type: Component,
761
- args: [{ selector: 'sac-datetime', providers: [
762
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => SacDateTimeComponent) },
763
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacDateTimeComponent) }
764
- ], standalone: true, imports: [NgClass, NgIf, IMaskDirective, SacDateSelectorComponent, AsyncPipe], 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" }]
765
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
766
- type: Host
767
- }, {
768
- type: Optional
769
- }] }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
770
-
771
- class SacTimeComponent extends SacTimeCommon {
772
- constructor(parent, injector, _elementRef) {
773
- super(parent, injector, _elementRef);
1579
+ class SacTabComponent extends SacTabCommon {
1580
+ tabItems() {
1581
+ return this._tabItems.toArray();
774
1582
  }
775
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTimeComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
776
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTimeComponent, isStandalone: true, selector: "sac-time", providers: [
777
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => SacTimeComponent) },
778
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacTimeComponent) }
779
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: IMaskDirective, selector: "[imask]", inputs: ["imask", "unmask", "imaskElement"], outputs: ["accept", "complete"], exportAs: ["imask"] }, { kind: "component", type: SacDateSelectorComponent, selector: "sac-dateselector" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
1583
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTabComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1584
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTabComponent, isStandalone: true, 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", dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
780
1585
  }
781
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTimeComponent, decorators: [{
1586
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTabComponent, decorators: [{
782
1587
  type: Component,
783
- args: [{ selector: 'sac-time', providers: [
784
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => SacTimeComponent) },
785
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacTimeComponent) }
786
- ], standalone: true, imports: [NgClass, NgIf, IMaskDirective, SacDateSelectorComponent, AsyncPipe], 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" }]
787
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
788
- type: Host
789
- }, {
790
- type: Optional
791
- }] }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
1588
+ args: [{ selector: 'sac-tab', standalone: true, imports: [NgFor, NgClass, NgStyle, NgTemplateOutlet], 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" }]
1589
+ }], propDecorators: { _tabItems: [{
1590
+ type: ContentChildren,
1591
+ args: [SacTabItemComponent]
1592
+ }] } });
792
1593
 
793
- class SACBootstrap3DateTimeModule {
794
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DateTimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
795
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DateTimeModule, imports: [CommonModule, IMaskModule,
796
- SacDateComponent, SacDateTimeComponent, SacTimeComponent, SacDateSelectorComponent], exports: [SacDateComponent, SacDateTimeComponent, SacTimeComponent, SacDateSelectorComponent] }); }
797
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DateTimeModule, imports: [CommonModule, IMaskModule] }); }
1594
+ class SACBootstrap3TabsModule {
1595
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1596
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TabsModule, imports: [CommonModule,
1597
+ SacTabComponent, SacTabItemComponent], exports: [SacTabComponent, SacTabItemComponent] }); }
1598
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TabsModule, imports: [CommonModule] }); }
798
1599
  }
799
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3DateTimeModule, decorators: [{
1600
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TabsModule, decorators: [{
800
1601
  type: NgModule,
801
1602
  args: [{
802
1603
  imports: [
803
- CommonModule, IMaskModule,
804
- SacDateComponent, SacDateTimeComponent, SacTimeComponent, SacDateSelectorComponent
1604
+ CommonModule,
1605
+ SacTabComponent, SacTabItemComponent
805
1606
  ],
806
- exports: [SacDateComponent, SacDateTimeComponent, SacTimeComponent, SacDateSelectorComponent]
1607
+ exports: [SacTabComponent, SacTabItemComponent]
807
1608
  }]
808
1609
  }] });
809
1610
 
810
1611
  class SacTinyMceComponent extends SacTinyMceCommon {
1612
+ // #region Constructors
811
1613
  /**
812
- * Konstruktor
813
- * @param parent Formular
814
- * @param injector Angular Dependency Injection Service
815
- * @param ngZone ngZone
1614
+ * Constructor
1615
+ * @param formLayout SacFormLayout to define scoped layout settings
1616
+ * @param injector Injector for injecting services
1617
+ * @param ngZone ngZone to manage external javascripts
816
1618
  */
817
- constructor(parent, injector, ngZone) {
818
- super(parent, injector, ngZone);
1619
+ constructor(formLayout, injector, ngZone) {
1620
+ super(formLayout, injector, ngZone);
819
1621
  }
1622
+ // #endregion Constructors
1623
+ // #region Public Methods
820
1624
  /**
821
1625
  * overwrite tinymce defaults
822
1626
  * @returns boostrap3 does not support file browser
@@ -824,7 +1628,7 @@ class SacTinyMceComponent extends SacTinyMceCommon {
824
1628
  overwriteDefaultSettings() {
825
1629
  return { file_picker_types: undefined, file_picker_callback: undefined };
826
1630
  }
827
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTinyMceComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
1631
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTinyMceComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
828
1632
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTinyMceComponent, isStandalone: true, selector: "sac-tinymce", providers: [
829
1633
  {
830
1634
  provide: NG_VALUE_ACCESSOR,
@@ -836,7 +1640,7 @@ class SacTinyMceComponent extends SacTinyMceCommon {
836
1640
  useExisting: forwardRef(() => SacTinyMceComponent),
837
1641
  multi: true,
838
1642
  },
839
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: EditorComponent, selector: "editor", inputs: ["cloudChannel", "apiKey", "init", "id", "initialValue", "outputFormat", "inline", "tagName", "plugins", "toolbar", "modelEvents", "allowedEvents", "ignoreEvents", "disabled"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SacDialogComponent, selector: "sac-dialog", inputs: ["zindex"] }, { kind: "component", type: SacButtonComponent, selector: "sac-button" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
1643
+ ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: EditorComponent, selector: "editor", inputs: ["cloudChannel", "apiKey", "init", "id", "initialValue", "outputFormat", "inline", "tagName", "plugins", "toolbar", "modelEvents", "allowedEvents", "ignoreEvents", "disabled"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SacDialogComponent, selector: "sac-dialog", inputs: ["zindex"] }, { kind: "component", type: SacButtonComponent, selector: "sac-button" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
840
1644
  }
841
1645
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTinyMceComponent, decorators: [{
842
1646
  type: Component,
@@ -859,8 +1663,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
859
1663
  SacDialogComponent,
860
1664
  SacButtonComponent,
861
1665
  AsyncPipe,
862
- ], 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" }]
863
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
1666
+ SacToLabelWidthCssPipe,
1667
+ SacToControlWidthCssPipe,
1668
+ ], 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" }]
1669
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
864
1670
  type: Host
865
1671
  }, {
866
1672
  type: Optional
@@ -879,153 +1685,112 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
879
1685
  }]
880
1686
  }] });
881
1687
 
882
- class SacStaticLabelComponent extends SacStaticLabelCommon {
883
- constructor(parent, injector) {
884
- super(parent, injector);
885
- }
886
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacStaticLabelComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
887
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacStaticLabelComponent, isStandalone: true, selector: "sac-staticlabel", providers: [
888
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacStaticLabelComponent },
889
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacStaticLabelComponent) }
890
- ], 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
891
- }
892
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacStaticLabelComponent, decorators: [{
893
- type: Component,
894
- args: [{ selector: 'sac-staticlabel', providers: [
895
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacStaticLabelComponent },
896
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacStaticLabelComponent) }
897
- ], standalone: true, imports: [NgIf, NgClass], 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" }]
898
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
899
- type: Host
900
- }, {
901
- type: Optional
902
- }] }, { type: i0.Injector }]; } });
903
-
904
- /**
905
- * Component für einbindung eines beliebigen Controls in die Form Struktur
906
- *
907
- * @example
908
- * <ngStaticFormContainer name='myformcontainer' label="My Custom Form Control" [isrequired]='false'>
909
- * <input type="range" class="form-control" />
910
- * </ngStaticFormContainer>
911
- *
912
- * @example
913
- * <ngStaticFormContainer name='myformcintainer' label="My Custom Form Control" [isrequired]='false' tooltiptext="Dies ist ein Tooltip Text">
914
- * <input type="range" class="form-control" />
915
- * </ngStaticFormContainer>
916
- *
917
- **/
918
- class SacStaticFormContainerComponent extends SacStaticFormContainerCommon {
919
- /**
920
- * Konsturktor
921
- * @param parent Parent SacFormular Instanz
922
- * @param injector Injector Instanz
923
- */
924
- constructor(parent, injector) {
925
- super(parent, injector);
926
- }
927
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacStaticFormContainerComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
928
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacStaticFormContainerComponent, isStandalone: true, selector: "sac-staticformcontainer", providers: [
929
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacStaticFormContainerComponent },
930
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacStaticFormContainerComponent) }
931
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
1688
+ class SacTreeViewChildComponent extends SacTreeViewChildCommon {
1689
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeViewChildComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1690
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTreeViewChildComponent, isStandalone: true, 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", dependencies: [{ kind: "component", type: SacTreeViewChildComponent, selector: "sac-treeviewchild" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
932
1691
  }
933
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacStaticFormContainerComponent, decorators: [{
1692
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeViewChildComponent, decorators: [{
934
1693
  type: Component,
935
- args: [{ selector: 'sac-staticformcontainer', providers: [
936
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacStaticFormContainerComponent },
937
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacStaticFormContainerComponent) }
938
- ], standalone: true, imports: [NgClass, NgIf, AsyncPipe], 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" }]
939
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
940
- type: Host
941
- }, {
942
- type: Optional
943
- }] }, { type: i0.Injector }]; } });
944
-
945
- class SACBootstrap3StaticLabelModule {
946
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3StaticLabelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
947
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3StaticLabelModule, imports: [CommonModule, SACBootstrap3TooltipModule,
948
- SacStaticLabelComponent, SacStaticFormContainerComponent], exports: [SacStaticLabelComponent, SacStaticFormContainerComponent] }); }
949
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3StaticLabelModule, imports: [CommonModule, SACBootstrap3TooltipModule] }); }
950
- }
951
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3StaticLabelModule, decorators: [{
952
- type: NgModule,
953
- args: [{
954
- imports: [
955
- CommonModule, SACBootstrap3TooltipModule,
956
- SacStaticLabelComponent, SacStaticFormContainerComponent
957
- ],
958
- exports: [SacStaticLabelComponent, SacStaticFormContainerComponent]
959
- }]
1694
+ args: [{ selector: 'sac-treeviewchild', standalone: true, imports: [NgIf, NgFor, NgClass, NgTemplateOutlet, SacTreeViewChildComponent], 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" }]
960
1695
  }] });
961
1696
 
962
- class SacWizardItemComponent extends SacWizardItemCommon {
963
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacWizardItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
964
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacWizardItemComponent, isStandalone: true, selector: "sac-wizarditem", usesInheritance: true, ngImport: i0, template: "" }); }
1697
+ class SacTreeViewComponent extends SacTreeViewCommon {
1698
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1699
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTreeViewComponent, isStandalone: true, 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SacTreeViewChildComponent, selector: "sac-treeviewchild" }] }); }
965
1700
  }
966
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacWizardItemComponent, decorators: [{
1701
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeViewComponent, decorators: [{
967
1702
  type: Component,
968
- args: [{ selector: 'sac-wizarditem', standalone: true, template: "" }]
1703
+ args: [{ selector: 'sac-treeview', standalone: true, imports: [NgIf, NgFor, NgClass, NgTemplateOutlet, SacTreeViewChildComponent], 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" }]
969
1704
  }] });
970
1705
 
971
- class SacWizardComponent extends SacWizardCommon {
972
- wizardItems() {
973
- return this._wizardItems;
1706
+ class SacTreeItemActionComponent extends SacTreeItemActionCommon {
1707
+ // #region Constructors
1708
+ constructor(el) {
1709
+ super(el);
974
1710
  }
975
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacWizardComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
976
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacWizardComponent, isStandalone: true, selector: "sac-wizard", providers: [
977
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacWizardComponent }
978
- ], 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", dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
1711
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeItemActionComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
1712
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTreeItemActionComponent, isStandalone: true, selector: "sac-treeitemaction", usesInheritance: true, ngImport: i0, template: "<i class=\"{{transformClass(iconstyle)}}\" (mouseover)=\"item.hover=true\" (mouseout)=\"item.hover=false\" (click)=\"iconaction()\" ></i>" }); }
979
1713
  }
980
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacWizardComponent, decorators: [{
1714
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeItemActionComponent, decorators: [{
981
1715
  type: Component,
982
- args: [{ selector: 'sac-wizard', providers: [
983
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacWizardComponent }
984
- ], standalone: true, imports: [
985
- NgFor,
986
- NgClass,
987
- NgStyle,
988
- ], 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" }]
989
- }], propDecorators: { _wizardItems: [{
990
- type: ContentChildren,
991
- args: [SacWizardItemComponent]
992
- }] } });
1716
+ args: [{ selector: 'sac-treeitemaction', standalone: true, template: "<i class=\"{{transformClass(iconstyle)}}\" (mouseover)=\"item.hover=true\" (mouseout)=\"item.hover=false\" (click)=\"iconaction()\" ></i>" }]
1717
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
993
1718
 
994
- class SACBootstrap3WizardModule {
995
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3WizardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
996
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3WizardModule, imports: [CommonModule,
997
- SacWizardComponent, SacWizardItemComponent], exports: [SacWizardComponent, SacWizardItemComponent] }); }
998
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3WizardModule, imports: [CommonModule] }); }
1719
+ class SACBootstrap3TtreeviewModule {
1720
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TtreeviewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1721
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TtreeviewModule, imports: [CommonModule,
1722
+ SacTreeViewComponent,
1723
+ SacTreeViewChildComponent,
1724
+ SacTreeItemActionComponent], exports: [SacTreeViewComponent,
1725
+ SacTreeViewChildComponent,
1726
+ SacTreeItemActionComponent] }); }
1727
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TtreeviewModule, imports: [CommonModule] }); }
999
1728
  }
1000
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3WizardModule, decorators: [{
1729
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TtreeviewModule, decorators: [{
1001
1730
  type: NgModule,
1002
1731
  args: [{
1003
1732
  imports: [
1004
1733
  CommonModule,
1005
- SacWizardComponent, SacWizardItemComponent
1734
+ SacTreeViewComponent,
1735
+ SacTreeViewChildComponent,
1736
+ SacTreeItemActionComponent,
1737
+ ],
1738
+ exports: [
1739
+ SacTreeViewComponent,
1740
+ SacTreeViewChildComponent,
1741
+ SacTreeItemActionComponent,
1006
1742
  ],
1007
- exports: [SacWizardComponent, SacWizardItemComponent]
1008
1743
  }]
1009
1744
  }] });
1010
1745
 
1011
1746
  // https://github.com/kukhariev/ngx-uploadx/
1012
1747
  class SacUploadComponent extends SacUploadSingleCommon {
1013
- constructor(parent, injector, renderer, ngZone) {
1014
- super(parent, injector, renderer, ngZone);
1748
+ // #region Constructors
1749
+ /**
1750
+ * Constructor
1751
+ * @param formLayout SacFormLayout to define scoped layout settings
1752
+ * @param injector Injector for injecting services
1753
+ * @param renderer Angular rendering engine
1754
+ * @param ngZone ngZone to manage external javascripts
1755
+ */
1756
+ constructor(formLayout, injector, renderer, ngZone) {
1757
+ super(formLayout, injector, renderer, ngZone);
1015
1758
  }
1016
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacUploadComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
1759
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacUploadComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
1017
1760
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacUploadComponent, isStandalone: true, selector: "sac-upload", providers: [
1018
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacUploadComponent },
1019
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacUploadComponent) }
1020
- ], 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"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
1761
+ {
1762
+ provide: NG_VALUE_ACCESSOR,
1763
+ multi: true,
1764
+ useExisting: SacUploadComponent,
1765
+ },
1766
+ {
1767
+ provide: NG_VALIDATORS,
1768
+ multi: true,
1769
+ useExisting: forwardRef(() => SacUploadComponent),
1770
+ },
1771
+ ], 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"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
1021
1772
  }
1022
1773
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacUploadComponent, decorators: [{
1023
1774
  type: Component,
1024
1775
  args: [{ selector: 'sac-upload', providers: [
1025
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacUploadComponent },
1026
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacUploadComponent) }
1027
- ], standalone: true, imports: [NgClass, NgIf, AsyncPipe], 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"] }]
1028
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
1776
+ {
1777
+ provide: NG_VALUE_ACCESSOR,
1778
+ multi: true,
1779
+ useExisting: SacUploadComponent,
1780
+ },
1781
+ {
1782
+ provide: NG_VALIDATORS,
1783
+ multi: true,
1784
+ useExisting: forwardRef(() => SacUploadComponent),
1785
+ },
1786
+ ], standalone: true, imports: [
1787
+ NgClass,
1788
+ NgIf,
1789
+ AsyncPipe,
1790
+ SacToLabelWidthCssPipe,
1791
+ SacToControlWidthCssPipe,
1792
+ ], 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"] }]
1793
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
1029
1794
  type: Host
1030
1795
  }, {
1031
1796
  type: Optional
@@ -1033,10 +1798,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1033
1798
 
1034
1799
  // https://github.com/kukhariev/ngx-uploadx/
1035
1800
  class SacUploadMultipleComponent extends SacUploadMultipleCommon {
1036
- constructor(parent, injector, renderer, ngZone) {
1037
- super(parent, injector, renderer, ngZone);
1801
+ // #region Constructors
1802
+ /**
1803
+ * Constructor
1804
+ * @param formLayout SacFormLayout to define scoped layout settings
1805
+ * @param injector Injector for injecting services
1806
+ * @param renderer Angular rendering engine
1807
+ * @param ngZone ngZone to manage external javascripts
1808
+ */
1809
+ constructor(formLayout, injector, renderer, ngZone) {
1810
+ super(formLayout, injector, renderer, ngZone);
1038
1811
  }
1039
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacUploadMultipleComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
1812
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacUploadMultipleComponent, deps: [{ token: SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
1040
1813
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacUploadMultipleComponent, isStandalone: true, selector: "sac-uploadmultiple", providers: [
1041
1814
  {
1042
1815
  provide: NG_VALUE_ACCESSOR,
@@ -1048,7 +1821,7 @@ class SacUploadMultipleComponent extends SacUploadMultipleCommon {
1048
1821
  multi: true,
1049
1822
  useExisting: forwardRef(() => SacUploadMultipleComponent),
1050
1823
  },
1051
- ], 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"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
1824
+ ], 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"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
1052
1825
  }
1053
1826
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacUploadMultipleComponent, decorators: [{
1054
1827
  type: Component,
@@ -1068,8 +1841,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1068
1841
  NgIf,
1069
1842
  NgFor,
1070
1843
  AsyncPipe,
1071
- ], 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"] }]
1072
- }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
1844
+ SacToLabelWidthCssPipe,
1845
+ SacToControlWidthCssPipe,
1846
+ ], 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"] }]
1847
+ }], ctorParameters: function () { return [{ type: SacFormLayoutDirective, decorators: [{
1073
1848
  type: Host
1074
1849
  }, {
1075
1850
  type: Optional
@@ -1092,138 +1867,149 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1092
1867
  }]
1093
1868
  }] });
1094
1869
 
1095
- class SacConfirmComponent extends SacConfirmCommon {
1096
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacConfirmComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1097
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacConfirmComponent, isStandalone: true, 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", dependencies: [{ kind: "component", type: SacDialogComponent, selector: "sac-dialog", inputs: ["zindex"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: SacButtonComponent, selector: "sac-button" }] }); }
1098
- }
1099
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacConfirmComponent, decorators: [{
1100
- type: Component,
1101
- args: [{ selector: 'sac-confirm', standalone: true, imports: [SacDialogComponent, NgIf, NgFor, SacButtonComponent], 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" }]
1102
- }] });
1103
-
1104
1870
  /**
1105
- * Service für Confirm Messages in TypeScript Code
1871
+ * Erweiterung / Hooking für automatismen in Formular. Wird als Container für alle Controls benötigt.
1106
1872
  *
1107
- * @example
1108
- * // Beispiel für ConfirmMessage mit Standard Buttons (Ja / Nein).
1109
- * confirmService.ConfirmMessage('titel', 'frage').subscribe(action => { // Action Code });
1873
+ * @example Beispiel über Div Container
1110
1874
  *
1111
- * @example
1112
- * // Beispiel für ConfirmMessage mit eigenen Buttons
1113
- * let buttons: SacConfirmButton[] = [];
1114
- * buttons.push(new SacConfirmButton('ActionKey','Text Primary'));
1115
- * buttons.push(new SacConfirmButton('ActionKey2','Text Button 2'));
1116
- * confirmService.ConfirmMessage('titel', 'frage', buttons).subscribe(action => { // Action Code });
1875
+ * <div ngForm></div>
1876
+ *
1877
+ * @example Beispiel über Form Tag
1878
+ *
1879
+ * <form></form>
1117
1880
  */
1118
- class ServiceConfirm extends ServiceConfirmCommon {
1881
+ /* eslint @angular-eslint/directive-selector: 0 */
1882
+ class SacFormDirective extends SacFormCommon {
1883
+ // #endregion Properties
1884
+ // #region Constructors
1119
1885
  /**
1120
1886
  * Konstruktor
1121
- * @param componentFactoryResolver Component Factory Resolver Instanz
1122
- * @param appRef Application Referenz. Wird benötigt um den Dialog am Body anzuhängen
1123
- * @param injector Injector. Wird benötigt um den Dialog dynamisch zu erzeugen
1887
+ * @param form Instanz von NgForm für eigene automatische Formular Logik
1124
1888
  */
1125
- constructor(componentFactoryResolver, appRef, injector) {
1126
- super(appRef, injector);
1127
- this.componentFactoryResolver = componentFactoryResolver;
1128
- /**
1129
- * Titel der im Dialog angezeigt werden soll.
1130
- */
1131
- this.title = '';
1132
- /**
1133
- * Message die in Dialog angezeigt werden soll.
1134
- */
1135
- this.message = '';
1889
+ constructor(form) {
1890
+ super(form);
1891
+ // #region Properties
1136
1892
  /**
1137
- * Collection von Buttons die angezeigt werden müssen.
1893
+ * Setzt die Standard CSS Klasse für auf dem Form Container
1138
1894
  */
1139
- this.buttons = [];
1140
- }
1141
- /**
1142
- * Erzeugen einer Component Factory für einen Dialog
1143
- */
1144
- GetComponentFactory() {
1145
- return this.componentFactoryResolver.resolveComponentFactory(SacConfirmComponent);
1146
- }
1147
- /**
1148
- * Konfiguration des Dialogs
1149
- * @param instance Instanz eines SacConfirm Dialogs
1150
- */
1151
- ConfigureDialog(instance) {
1152
- // Text in Dialog setzen
1153
- instance.title = this.title;
1154
- instance.message = this.message;
1155
- instance.buttons = this.buttons;
1156
- instance.image = this.iconService.ConfirmDefaultImage;
1895
+ this.cssClassForm = true;
1157
1896
  }
1897
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacFormDirective, deps: [{ token: i2.NgForm }], target: i0.ɵɵFactoryTarget.Directive }); }
1898
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SacFormDirective, isStandalone: true, selector: "form:not([ngNoForm]):not([formGroup]),[ngForm]", host: { properties: { "class.form": "this.cssClassForm" } }, exportAs: ["sacform"], usesInheritance: true, ngImport: i0 }); }
1899
+ }
1900
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacFormDirective, decorators: [{
1901
+ type: Directive,
1902
+ args: [{
1903
+ selector: 'form:not([ngNoForm]):not([formGroup]),[ngForm]',
1904
+ exportAs: 'sacform',
1905
+ standalone: true,
1906
+ }]
1907
+ }], ctorParameters: function () { return [{ type: i2.NgForm }]; }, propDecorators: { cssClassForm: [{
1908
+ type: HostBinding,
1909
+ args: ['class.form']
1910
+ }] } });
1911
+
1912
+ class SacValidationSummaryComponent extends SacValidationSummaryCommon {
1913
+ // #region Constructors
1158
1914
  /**
1159
- * Confirm Dialog anzeigen
1160
- * @param message Nachricht die angezeigt werden soll.
1161
- * @returns EventEmitter mit Key des Buttons, welcher geklickt wurde.
1915
+ * Constructor
1916
+ * @param formControl Instance of Form Component to receive invalid form controls
1917
+ * @param injector Injector for injecting services
1162
1918
  */
1163
- ConfirmMessage(title, message, buttons = null) {
1164
- this.title = title;
1165
- this.message = message;
1166
- // Default Buttons setzen, wenn keine Buttons angegeben sind
1167
- if (!isDefined(buttons)) {
1168
- // TODO: Text von Localisation Service beziehen
1169
- this.buttons = [];
1170
- this.buttons.push(new SacConfirmButton('yes', 'Ja'));
1171
- this.buttons.push(new SacConfirmButton('no', 'Nein'));
1172
- }
1173
- else {
1174
- this.buttons = buttons;
1175
- }
1176
- return super.Confirm();
1919
+ constructor(formControl, injector) {
1920
+ super(formControl, injector);
1177
1921
  }
1178
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ServiceConfirm, deps: [{ token: ComponentFactoryResolver }, { token: i0.ApplicationRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
1179
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ServiceConfirm }); }
1922
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacValidationSummaryComponent, deps: [{ token: SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1923
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacValidationSummaryComponent, isStandalone: true, selector: "sac-validationsummary", providers: [
1924
+ {
1925
+ provide: NG_VALUE_ACCESSOR,
1926
+ multi: true,
1927
+ useExisting: SacValidationSummaryComponent,
1928
+ },
1929
+ ], 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], viewProviders: [{ provide: ControlContainer, useExisting: SacFormDirective }] }); }
1180
1930
  }
1181
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ServiceConfirm, decorators: [{
1182
- type: Injectable
1183
- }], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver, decorators: [{
1184
- type: Inject,
1185
- args: [ComponentFactoryResolver]
1186
- }] }, { type: i0.ApplicationRef }, { type: i0.Injector }]; } });
1931
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacValidationSummaryComponent, decorators: [{
1932
+ type: Component,
1933
+ args: [{ selector: 'sac-validationsummary', providers: [
1934
+ {
1935
+ provide: NG_VALUE_ACCESSOR,
1936
+ multi: true,
1937
+ useExisting: SacValidationSummaryComponent,
1938
+ },
1939
+ ], viewProviders: [{ provide: ControlContainer, useExisting: SacFormDirective }], standalone: true, imports: [NgIf, NgFor, AsyncPipe], 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" }]
1940
+ }], ctorParameters: function () { return [{ type: SacFormDirective, decorators: [{
1941
+ type: Host
1942
+ }, {
1943
+ type: Optional
1944
+ }] }, { type: i0.Injector }]; } });
1187
1945
 
1188
- /**
1189
- * Module für Confirm Messages
1190
- *
1191
- * In NgModule der Applikation folgenden Eintrag bei Imports einfügen: ExanicBootstrap3ConfirmModule.forRoot()
1192
- *
1193
- */
1194
- class SACBootstrap3ConfirmModule {
1195
- static forRoot() {
1196
- return {
1197
- ngModule: SACBootstrap3ConfirmModule,
1198
- providers: [ServiceConfirm],
1199
- };
1200
- }
1201
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ConfirmModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1202
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ConfirmModule, imports: [SacConfirmComponent], exports: [SacConfirmComponent] }); }
1203
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ConfirmModule }); }
1946
+ class SACBootstrap3ValidationSummaryModule {
1947
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1948
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, imports: [CommonModule,
1949
+ SacValidationSummaryComponent], exports: [SacValidationSummaryComponent] }); }
1950
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, imports: [CommonModule] }); }
1204
1951
  }
1205
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ConfirmModule, decorators: [{
1952
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, decorators: [{
1206
1953
  type: NgModule,
1207
1954
  args: [{
1208
- imports: [SacConfirmComponent],
1209
- exports: [SacConfirmComponent],
1955
+ imports: [
1956
+ CommonModule,
1957
+ SacValidationSummaryComponent
1958
+ ],
1959
+ exports: [SacValidationSummaryComponent]
1210
1960
  }]
1211
1961
  }] });
1212
1962
 
1213
- /**
1214
- * Factory Methode für SacForm
1215
- * @param form NgFormular
1216
- */
1217
- function SACFORM_FACTORY(form) {
1218
- return form;
1963
+ class SacWizardItemComponent extends SacWizardItemCommon {
1964
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacWizardItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1965
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacWizardItemComponent, isStandalone: true, selector: "sac-wizarditem", usesInheritance: true, ngImport: i0, template: "" }); }
1219
1966
  }
1220
- /**
1221
- * Factory Methode für NgForm
1222
- * @param form NgForm
1223
- */
1224
- function NGFORM_FACTORY(form) {
1225
- return form;
1967
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacWizardItemComponent, decorators: [{
1968
+ type: Component,
1969
+ args: [{ selector: 'sac-wizarditem', standalone: true, template: "" }]
1970
+ }] });
1971
+
1972
+ class SacWizardComponent extends SacWizardCommon {
1973
+ wizardItems() {
1974
+ return this._wizardItems;
1975
+ }
1976
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacWizardComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1977
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacWizardComponent, isStandalone: true, selector: "sac-wizard", providers: [
1978
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacWizardComponent }
1979
+ ], 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", dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
1980
+ }
1981
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacWizardComponent, decorators: [{
1982
+ type: Component,
1983
+ args: [{ selector: 'sac-wizard', providers: [
1984
+ { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacWizardComponent }
1985
+ ], standalone: true, imports: [
1986
+ NgFor,
1987
+ NgClass,
1988
+ NgStyle,
1989
+ ], 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" }]
1990
+ }], propDecorators: { _wizardItems: [{
1991
+ type: ContentChildren,
1992
+ args: [SacWizardItemComponent]
1993
+ }] } });
1994
+
1995
+ class SACBootstrap3WizardModule {
1996
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3WizardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1997
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3WizardModule, imports: [CommonModule,
1998
+ SacWizardComponent, SacWizardItemComponent], exports: [SacWizardComponent, SacWizardItemComponent] }); }
1999
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3WizardModule, imports: [CommonModule] }); }
1226
2000
  }
2001
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3WizardModule, decorators: [{
2002
+ type: NgModule,
2003
+ args: [{
2004
+ imports: [
2005
+ CommonModule,
2006
+ SacWizardComponent, SacWizardItemComponent
2007
+ ],
2008
+ exports: [SacWizardComponent, SacWizardItemComponent]
2009
+ }]
2010
+ }] });
2011
+
2012
+ // #region Classes
1227
2013
  /**
1228
2014
  * Directive zum erben eines NgForm/NgFormular einer übergeordneten Komponente
1229
2015
  *
@@ -1263,12 +2049,13 @@ class SacInheritFormDirective {
1263
2049
  {
1264
2050
  provide: SacFormDirective,
1265
2051
  useFactory: SACFORM_FACTORY,
1266
- deps: [[new SkipSelf(), SacFormDirective]]
1267
- }, {
2052
+ deps: [[new SkipSelf(), SacFormDirective]],
2053
+ },
2054
+ {
1268
2055
  provide: ControlContainer,
1269
2056
  useFactory: NGFORM_FACTORY,
1270
- deps: [NgForm]
1271
- }
2057
+ deps: [NgForm],
2058
+ },
1272
2059
  ], ngImport: i0 }); }
1273
2060
  }
1274
2061
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInheritFormDirective, decorators: [{
@@ -1279,16 +2066,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1279
2066
  {
1280
2067
  provide: SacFormDirective,
1281
2068
  useFactory: SACFORM_FACTORY,
1282
- deps: [[new SkipSelf(), SacFormDirective]]
1283
- }, {
2069
+ deps: [[new SkipSelf(), SacFormDirective]],
2070
+ },
2071
+ {
1284
2072
  provide: ControlContainer,
1285
2073
  useFactory: NGFORM_FACTORY,
1286
- deps: [NgForm]
1287
- }
2074
+ deps: [NgForm],
2075
+ },
1288
2076
  ],
1289
- standalone: true
2077
+ standalone: true,
1290
2078
  }]
1291
2079
  }] });
2080
+ // #endregion Classes
2081
+ // #region Functions
2082
+ /**
2083
+ * Factory Methode für NgForm
2084
+ * @param form NgForm
2085
+ */
2086
+ function NGFORM_FACTORY(form) {
2087
+ return form;
2088
+ }
2089
+ /**
2090
+ * Factory Methode für SacForm
2091
+ * @param form NgFormular
2092
+ */
2093
+ function SACFORM_FACTORY(form) {
2094
+ return form;
2095
+ }
1292
2096
 
1293
2097
  class SACBootstrap3FormModule {
1294
2098
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3FormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
@@ -1312,236 +2116,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1312
2116
  }]
1313
2117
  }] });
1314
2118
 
1315
- class SacPagingComponent extends SacPagingCommon {
1316
- /**
1317
- * Konstruktor
1318
- */
1319
- constructor(injector) { super(injector); }
1320
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacPagingComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1321
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacPagingComponent, isStandalone: true, selector: "sac-paging", providers: [
1322
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacPagingComponent },
1323
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacPagingComponent) }
1324
- ], 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", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
1325
- }
1326
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacPagingComponent, decorators: [{
1327
- type: Component,
1328
- args: [{ selector: 'sac-paging', providers: [
1329
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacPagingComponent },
1330
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacPagingComponent) }
1331
- ], standalone: true, imports: [NgClass, NgFor], 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" }]
1332
- }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
1333
-
1334
- class SacGridComponent extends SacGridCommon {
1335
- constructor() {
1336
- super(...arguments);
1337
- this.ellipsis = false;
1338
- }
1339
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1340
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacGridComponent, isStandalone: true, selector: "sac-grid", providers: [
1341
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacGridComponent },
1342
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacGridComponent) }
1343
- ], 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", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SacPagingComponent, selector: "sac-paging" }] }); }
1344
- }
1345
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridComponent, decorators: [{
1346
- type: Component,
1347
- args: [{ selector: 'sac-grid', providers: [
1348
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacGridComponent },
1349
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacGridComponent) }
1350
- ], standalone: true, imports: [NgTemplateOutlet, NgFor, NgIf, SacPagingComponent], 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" }]
1351
- }], propDecorators: { template: [{
1352
- type: ContentChild,
1353
- args: [TemplateRef, { static: true }]
1354
- }] } });
1355
-
1356
- class SacGridColumnComponent extends SacGridColumnCommon {
1357
- constructor(grid, injector, el) {
1358
- super(grid, injector, el);
1359
- }
1360
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridColumnComponent, deps: [{ token: SacGridComponent }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
1361
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacGridColumnComponent, isStandalone: true, selector: "sac-gridcolumn", providers: [
1362
- {
1363
- provide: SacGridColumnBaseCommon,
1364
- useExisting: forwardRef(() => SacGridColumnComponent),
1365
- },
1366
- ], 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
1367
- }
1368
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridColumnComponent, decorators: [{
1369
- type: Component,
1370
- args: [{ selector: 'sac-gridcolumn', providers: [
1371
- {
1372
- provide: SacGridColumnBaseCommon,
1373
- useExisting: forwardRef(() => SacGridColumnComponent),
1374
- },
1375
- ], standalone: true, imports: [NgIf], 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" }]
1376
- }], ctorParameters: function () { return [{ type: SacGridComponent }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
1377
-
1378
- /**
1379
- * Grid Action Button
1380
- *
1381
- * @example Standard Action
1382
- *
1383
- * <ngGridButton icon="edit" (clicked)="action('edit')" [isdisabled]="true"></ngGridButton>
1384
- *
1385
- * @example Custom Action
1386
- *
1387
- * <ngGridButton iconstyle="sprite" icon="icon-sprite-base-main_info" (clicked)="action('info')"></ngGridButton>
1388
- *
1389
- */
1390
- class SacGridButtonComponent extends SacGridButtonCommon {
1391
- /**
1392
- * Gibt das Icon für den Button zurück
1393
- */
1394
- getIconClass() {
1395
- let iconset = this.iconstyle;
1396
- let iconcss = this.icon;
1397
- if (iconset === '') {
1398
- switch (this.icon) {
1399
- case 'edit':
1400
- iconset = 'sprite';
1401
- iconcss = 'icon-sprite-base-main_edit';
1402
- break;
1403
- case 'delete':
1404
- iconset = 'sprite';
1405
- iconcss = 'icon-sprite-base-main_delete';
1406
- break;
1407
- }
1408
- }
1409
- if (this._isdisabledvalue) {
1410
- iconcss += '_disabled';
1411
- }
1412
- const result = iconset + ' ' + iconcss;
1413
- return result.trim();
1414
- }
1415
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1416
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacGridButtonComponent, isStandalone: true, 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" }); }
1417
- }
1418
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridButtonComponent, decorators: [{
1419
- type: Component,
1420
- args: [{ selector: 'sac-gridbutton', standalone: true, template: "<a (click)=\"callaction()\" style=\"padding-right: 5px;\" [class.disabled]=\"isdisabled\" [attr.disabled]=\"isdisabled ? 'disabled' : null\"><span class=\"{{getIconClass()}}\"></span></a>\r\n" }]
1421
- }] });
1422
-
1423
- class SacGridColumnActionComponent extends SacGridColumnActionCommon {
1424
- constructor(grid, injector, el) {
1425
- super(grid, injector, el);
1426
- this.width = '52px';
1427
- }
1428
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridColumnActionComponent, deps: [{ token: SacGridComponent }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
1429
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacGridColumnActionComponent, isStandalone: true, selector: "sac-gridcolumnaction", providers: [
1430
- {
1431
- provide: SacGridColumnBaseCommon,
1432
- useExisting: forwardRef(() => SacGridColumnActionComponent),
1433
- },
1434
- ], 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
1435
- }
1436
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridColumnActionComponent, decorators: [{
1437
- type: Component,
1438
- args: [{ selector: 'sac-gridcolumnaction', providers: [
1439
- {
1440
- provide: SacGridColumnBaseCommon,
1441
- useExisting: forwardRef(() => SacGridColumnActionComponent),
1442
- },
1443
- ], standalone: true, imports: [NgIf], 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" }]
1444
- }], ctorParameters: function () { return [{ type: SacGridComponent }, { type: i0.Injector }, { type: i0.ElementRef }]; } });
1445
-
1446
- class SacGridImageComponent extends SacGridImageCommon {
1447
- getIconClass() {
1448
- switch (this.iconstyle) {
1449
- case 'edit':
1450
- return 'sprite icon-sprite-base-main_edit';
1451
- case 'delete':
1452
- return 'sprite icon-sprite-base-main_delete';
1453
- default:
1454
- return this.iconstyle;
1455
- }
1456
- }
1457
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridImageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1458
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacGridImageComponent, isStandalone: true, selector: "sac-gridimage", usesInheritance: true, ngImport: i0, template: "<span style=\"padding-right: 5px;\"><span class=\"{{getIconClass()}}\"></span></span>\r\n" }); }
1459
- }
1460
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacGridImageComponent, decorators: [{
1461
- type: Component,
1462
- args: [{ selector: 'sac-gridimage', standalone: true, template: "<span style=\"padding-right: 5px;\"><span class=\"{{getIconClass()}}\"></span></span>\r\n" }]
1463
- }] });
1464
-
1465
- class SACBootstrap3GridModule {
1466
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3GridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1467
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3GridModule, imports: [CommonModule,
1468
- SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent], exports: [SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent] }); }
1469
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3GridModule, imports: [CommonModule] }); }
1470
- }
1471
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3GridModule, decorators: [{
1472
- type: NgModule,
1473
- args: [{
1474
- imports: [
1475
- CommonModule,
1476
- SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent
1477
- ],
1478
- exports: [SacGridComponent, SacGridColumnComponent, SacGridColumnActionComponent, SacPagingComponent, SacGridButtonComponent, SacGridImageComponent]
1479
- }]
1480
- }] });
1481
-
1482
- class SacTreeViewChildComponent extends SacTreeViewChildCommon {
1483
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeViewChildComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1484
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTreeViewChildComponent, isStandalone: true, 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", dependencies: [{ kind: "component", type: SacTreeViewChildComponent, selector: "sac-treeviewchild" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
1485
- }
1486
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeViewChildComponent, decorators: [{
1487
- type: Component,
1488
- args: [{ selector: 'sac-treeviewchild', standalone: true, imports: [NgIf, NgFor, NgClass, NgTemplateOutlet, SacTreeViewChildComponent], 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" }]
1489
- }] });
1490
-
1491
- class SacTreeViewComponent extends SacTreeViewCommon {
1492
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1493
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTreeViewComponent, isStandalone: true, 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", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SacTreeViewChildComponent, selector: "sac-treeviewchild" }] }); }
1494
- }
1495
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeViewComponent, decorators: [{
1496
- type: Component,
1497
- args: [{ selector: 'sac-treeview', standalone: true, imports: [
1498
- NgIf,
1499
- NgFor,
1500
- NgClass,
1501
- NgTemplateOutlet,
1502
- SacTreeViewChildComponent,
1503
- ], 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" }]
1504
- }] });
1505
-
1506
- class SacTreeItemActionComponent extends SacTreeItemActionCommon {
1507
- constructor(el) {
1508
- super(el);
1509
- }
1510
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeItemActionComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
1511
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTreeItemActionComponent, isStandalone: true, selector: "sac-treeitemaction", usesInheritance: true, ngImport: i0, template: "<i class=\"{{transformClass(iconstyle)}}\" (mouseover)=\"item.hover=true\" (mouseout)=\"item.hover=false\" (click)=\"iconaction()\" ></i>" }); }
1512
- }
1513
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeItemActionComponent, decorators: [{
1514
- type: Component,
1515
- args: [{ selector: 'sac-treeitemaction', standalone: true, template: "<i class=\"{{transformClass(iconstyle)}}\" (mouseover)=\"item.hover=true\" (mouseout)=\"item.hover=false\" (click)=\"iconaction()\" ></i>" }]
1516
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
1517
-
1518
- class SACBootstrap3TtreeviewModule {
1519
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TtreeviewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1520
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TtreeviewModule, imports: [CommonModule,
1521
- SacTreeViewComponent,
1522
- SacTreeViewChildComponent,
1523
- SacTreeItemActionComponent], exports: [SacTreeViewComponent,
1524
- SacTreeViewChildComponent,
1525
- SacTreeItemActionComponent] }); }
1526
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TtreeviewModule, imports: [CommonModule] }); }
1527
- }
1528
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3TtreeviewModule, decorators: [{
1529
- type: NgModule,
1530
- args: [{
1531
- imports: [
1532
- CommonModule,
1533
- SacTreeViewComponent,
1534
- SacTreeViewChildComponent,
1535
- SacTreeItemActionComponent,
1536
- ],
1537
- exports: [
1538
- SacTreeViewComponent,
1539
- SacTreeViewChildComponent,
1540
- SacTreeItemActionComponent,
1541
- ],
1542
- }]
1543
- }] });
1544
-
1545
2119
  /*
1546
2120
  * Public API Surface of sac-bootstrap3
1547
2121
  */
@@ -1550,5 +2124,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1550
2124
  * Generated bundle index. Do not edit.
1551
2125
  */
1552
2126
 
1553
- 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 };
2127
+ 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 };
1554
2128
  //# sourceMappingURL=simpleangularcontrols-sac-bootstrap3.mjs.map