@simpleangularcontrols/sac-common 10.0.0-rc.10 → 10.0.0-rc.12

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 (64) hide show
  1. package/bundles/simpleangularcontrols-sac-common.umd.js +1110 -710
  2. package/bundles/simpleangularcontrols-sac-common.umd.js.map +1 -1
  3. package/bundles/simpleangularcontrols-sac-common.umd.min.js +1 -1
  4. package/bundles/simpleangularcontrols-sac-common.umd.min.js.map +1 -1
  5. package/common/basedatetimecontrol.d.ts +99 -13
  6. package/common/basemodelcontrol.d.ts +30 -22
  7. package/controls/checkbox/radiobutton.d.ts +61 -26
  8. package/controls/datetime/date.d.ts +28 -27
  9. package/controls/datetime/datetime.d.ts +27 -27
  10. package/controls/datetime/time.d.ts +26 -26
  11. package/controls/dialog/dialog.d.ts +31 -43
  12. package/controls/grid/gridcolumnbase.d.ts +9 -1
  13. package/controls/layout/formlayout.d.ts +4 -0
  14. package/controls/list/buildvaluestring.d.ts +6 -0
  15. package/controls/list/buildvaluestring.ngfactory.d.ts +1 -0
  16. package/controls/list/dropdown.d.ts +9 -51
  17. package/controls/list/dropdownoptions.d.ts +38 -0
  18. package/controls/list/dropdownoptions.ngfactory.d.ts +1 -0
  19. package/controls/static/formcontainer.d.ts +11 -3
  20. package/controls/tooltip/tooltip.d.ts +33 -51
  21. package/esm2015/common/basedatetimecontrol.js +178 -30
  22. package/esm2015/common/basemodelcontrol.js +57 -46
  23. package/esm2015/controls/checkbox/radiobutton.js +94 -45
  24. package/esm2015/controls/datetime/date.js +43 -41
  25. package/esm2015/controls/datetime/datetime.js +42 -41
  26. package/esm2015/controls/datetime/time.js +42 -41
  27. package/esm2015/controls/dialog/dialog.js +41 -83
  28. package/esm2015/controls/grid/gridcolumnbase.js +14 -3
  29. package/esm2015/controls/layout/formlayout.js +7 -6
  30. package/esm2015/controls/list/buildvaluestring.js +18 -0
  31. package/esm2015/controls/list/buildvaluestring.ngfactory.js +7 -0
  32. package/esm2015/controls/list/dropdown.js +16 -114
  33. package/esm2015/controls/list/dropdownoptions.js +72 -0
  34. package/esm2015/controls/list/dropdownoptions.ngfactory.js +7 -0
  35. package/esm2015/controls/static/formcontainer.js +16 -6
  36. package/esm2015/controls/tooltip/tooltip.js +60 -250
  37. package/esm2015/interfaces/ISacConfigurationService.js +1 -1
  38. package/esm2015/public_api.js +3 -2
  39. package/esm2015/services/sac-configuration.service.js +7 -5
  40. package/esm2015/utilities/enums.js +5 -1
  41. package/esm2015/utilities/popuphelper.js +343 -0
  42. package/esm2015/utilities/popuphelper.ngfactory.js +7 -0
  43. package/esm2015/validation/equals.validator.js +14 -0
  44. package/esm2015/validation/equals.validator.ngfactory.js +7 -0
  45. package/esm2015/validation/notequals.validator.js +14 -0
  46. package/esm2015/validation/notequals.validator.ngfactory.js +7 -0
  47. package/esm2015/validation/validation.class.js +30 -6
  48. package/fesm2015/simpleangularcontrols-sac-common.js +1083 -703
  49. package/fesm2015/simpleangularcontrols-sac-common.js.map +1 -1
  50. package/interfaces/ISacConfigurationService.d.ts +4 -0
  51. package/package.json +1 -1
  52. package/public_api.d.ts +2 -1
  53. package/services/sac-configuration.service.d.ts +8 -0
  54. package/simpleangularcontrols-sac-common-10.0.0-rc.12.tgz +0 -0
  55. package/simpleangularcontrols-sac-common.metadata.json +1 -1
  56. package/utilities/enums.d.ts +3 -1
  57. package/utilities/popuphelper.d.ts +83 -0
  58. package/utilities/popuphelper.ngfactory.d.ts +1 -0
  59. package/validation/equals.validator.d.ts +2 -0
  60. package/validation/equals.validator.ngfactory.d.ts +1 -0
  61. package/validation/notequals.validator.d.ts +2 -0
  62. package/validation/notequals.validator.ngfactory.d.ts +1 -0
  63. package/validation/validation.class.d.ts +19 -0
  64. package/simpleangularcontrols-sac-common-10.0.0-rc.10.tgz +0 -0
@@ -1,25 +1,78 @@
1
- import { AfterViewInit, ElementRef, Injector } from '@angular/core';
2
- import { AbstractControl, ValidationErrors } from '@angular/forms';
3
- import { Moment } from 'moment';
4
1
  import { SacFormLayoutCommon } from '../controls/layout/formlayout';
2
+ import { TooltipPosition } from '../utilities/enums';
5
3
  import { SacBaseModelControl } from './basemodelcontrol';
4
+ import { ChangeDetectorRef, DoCheck, ElementRef, Injector, OnDestroy, OnInit } from '@angular/core';
5
+ import { AbstractControl, ValidationErrors } from '@angular/forms';
6
+ import * as moment_ from 'moment';
6
7
  /**
7
8
  * Base Klasse für Date/Time Controls
8
9
  */
9
- export declare abstract class SacBaseDateTimeControl extends SacBaseModelControl<Date> implements AfterViewInit {
10
+ export declare abstract class SacBaseDateTimeControl extends SacBaseModelControl<Date> implements OnInit, OnDestroy, DoCheck {
10
11
  protected elementRef: ElementRef;
12
+ private readonly cdRef;
13
+ /**
14
+ * Helper class to display tooltip on correct position
15
+ */
16
+ private readonly popupHelper;
11
17
  /**
12
18
  * das property enthielt das Value als string. Default ist ''
13
19
  */
14
20
  protected _valueAsString: string;
21
+ /**
22
+ * Containers for the datetime picker
23
+ */
24
+ protected pickercontainer: ElementRef<HTMLElement>;
25
+ /**
26
+ * Property for enum in Angular HTML template
27
+ */
28
+ TooltipPosition: typeof TooltipPosition;
29
+ /**
30
+ * Definiert ob der Date Selector angezeigt wird
31
+ */
32
+ _showselector: boolean;
15
33
  /**
16
34
  * Definiert das Control als Required
17
35
  */
18
36
  isrequired: boolean;
37
+ /**
38
+ * Moment JS Instance
39
+ */
40
+ moment: any;
41
+ /**
42
+ * Arrow Item of Picker Element. Required to set the position of arrow correctly
43
+ */
44
+ pickerPosition: typeof TooltipPosition;
45
+ pickerarrow: ElementRef<HTMLElement> | null;
46
+ /**
47
+ * Name of the container for content (e.g. icon) on which the tooltip is displayed.
48
+ */
49
+ pickerbutton: ElementRef<HTMLElement>;
19
50
  /**
20
51
  * TextBox Placeholder
21
52
  */
22
53
  placeholder: string;
54
+ /**
55
+ * Position of the picker arrow at the left
56
+ */
57
+ posArrowLeft: number | null;
58
+ /**
59
+ * Position of the picker arrow at the top
60
+ */
61
+ posArrowTop: number | null;
62
+ /**
63
+ * Position of the picker at the left
64
+ */
65
+ posPopupLeft: number;
66
+ /**
67
+ * Position of the picker at the top
68
+ */
69
+ posPopupTop: number;
70
+ /**
71
+ * Position of the datetime picker. Values: left|top|right|bottom|auto
72
+ *
73
+ * Value 'auto' can be combined with another value.
74
+ */
75
+ position: string;
23
76
  /**
24
77
  * Resource Key für Validation Message DateTimeFormat bei Control
25
78
  */
@@ -42,23 +95,50 @@ export declare abstract class SacBaseDateTimeControl extends SacBaseModelControl
42
95
  * @param injector Injector for injecting services
43
96
  * @param elementRef reference to html element
44
97
  */
45
- constructor(formlayout: SacFormLayoutCommon, injector: Injector, elementRef: ElementRef);
98
+ constructor(formlayout: SacFormLayoutCommon, injector: Injector, elementRef: ElementRef, cdRef: ChangeDetectorRef);
46
99
  /**
47
- * Das Input bekommt das value von typ string
100
+ * Setter for the name of the container for the tooltip. Is required as the tooltip can be hidden via ngIf.
48
101
  */
49
- set valuestring(v: string);
102
+ set picker(picker: ElementRef);
103
+ get tooltop(): ElementRef;
50
104
  /**
51
105
  * getter für valuestring
52
106
  */
53
107
  get valuestring(): string;
108
+ /**
109
+ * Das Input bekommt das value von typ string
110
+ */
111
+ set valuestring(v: string);
112
+ /**
113
+ * Die methode returns dateTime in string
114
+ */
115
+ abstract GetDateTimeFormatString(): string;
116
+ /**
117
+ * Returns the position of the tooltip
118
+ */
119
+ GetPickerPosition(): TooltipPosition;
120
+ /**
121
+ * Die methode modifiziert das eingegebene Value von typ Moment
122
+ */
123
+ abstract ModifyParsedDateTimeValue(v: moment_.Moment): moment_.Moment;
54
124
  /**
55
125
  * JSON Date String in ein UTC DateTime Object konvertieren, welches vom Control verwendete werden kann
56
126
  */
57
127
  getDate(timestamp: any): moment.Moment;
128
+ /**
129
+ * Calculates the height of the tooltip
130
+ */
131
+ getPickerHeight(): number;
132
+ /**
133
+ * Calculates the width of the picker
134
+ */
135
+ getPickerWidth(): number;
136
+ ngDoCheck(): void;
137
+ ngOnDestroy(): void;
58
138
  /**
59
139
  * Init Event
60
140
  */
61
- ngAfterViewInit(): void;
141
+ ngOnInit(): void;
62
142
  /**
63
143
  * setzt das value von typ string zu property valuestring
64
144
  */
@@ -71,13 +151,19 @@ export declare abstract class SacBaseDateTimeControl extends SacBaseModelControl
71
151
  * Overwrite WriteValue to Set correct Date Object
72
152
  */
73
153
  writeValue(value: Date | string): void;
154
+ protected getArrowHeight(): number;
155
+ protected getArrowWidth(): number;
74
156
  /**
75
- * Die methode returns dateTime in string
157
+ * Calculates the position of the tooltip from links
76
158
  */
77
- abstract GetDateTimeFormatString(): string;
159
+ protected getPositionLeft(): number;
78
160
  /**
79
- * Die methode modifiziert das eingegebene Value von typ Moment
161
+ * Calculates the position of the tooltip from the top
162
+ */
163
+ protected getPositionTop(): number;
164
+ /**
165
+ * method if content has changed and proportions need to be reset in the UI.
80
166
  */
81
- abstract ModifyParsedDateTimeValue(v: Moment): Moment;
82
- private SetDateTimeFormat;
167
+ private readonly onContentChange;
168
+ private setDateTimeFormat;
83
169
  }
@@ -1,6 +1,6 @@
1
+ import { Observable } from 'rxjs';
1
2
  import { AfterViewInit, Injector, OnInit } from '@angular/core';
2
3
  import { AbstractControl, ControlValueAccessor, FormControl, ValidationErrors, Validator } from '@angular/forms';
3
- import { Observable } from 'rxjs';
4
4
  import { SacFormLayoutCommon } from '../controls/layout/formlayout';
5
5
  import { ControlHeight } from '../enums/ControlHeight';
6
6
  import { ISacConfigurationService } from '../interfaces/ISacConfigurationService';
@@ -17,6 +17,9 @@ export declare abstract class SacBaseModelControl<VALUE> implements ControlValue
17
17
  * Inline Errors für das Control
18
18
  */
19
19
  private _inlineerrorenabled;
20
+ /**
21
+ * Label Text
22
+ */
20
23
  private _label;
21
24
  /**
22
25
  * Service for loading default settings for the controls
@@ -58,6 +61,10 @@ export declare abstract class SacBaseModelControl<VALUE> implements ControlValue
58
61
  * ngControl
59
62
  */
60
63
  protected ngControl: FormControl;
64
+ /**
65
+ * ControlHeight enum for use in HTML markup
66
+ */
67
+ ControlHeight: typeof ControlHeight;
61
68
  /**
62
69
  * Defines the standard height of the components
63
70
  */
@@ -114,10 +121,6 @@ export declare abstract class SacBaseModelControl<VALUE> implements ControlValue
114
121
  * Name des Controls
115
122
  */
116
123
  name: string;
117
- /**
118
- * ControlHeight enum for use in HTML markup
119
- */
120
- ControlHeight: typeof ControlHeight;
121
124
  /**
122
125
  * Leere Implementation von "propagateChange". Muss gemacht werden, damit kein Fehler entsteht
123
126
  */
@@ -126,6 +129,10 @@ export declare abstract class SacBaseModelControl<VALUE> implements ControlValue
126
129
  * Leere Implementation von "propagateTouch". Muss gemacht werden, damit kein Fehler entsteht
127
130
  */
128
131
  propagateTouch: any;
132
+ /**
133
+ * Detach label text and tooltip from each other in Label so that label and tooltip can be aligned differently. This is in Bootstrap 3 not supported!
134
+ */
135
+ splitlabelandhelptext: boolean | null;
129
136
  /**
130
137
  * Service to receive standard validation message keys and texts
131
138
  */
@@ -136,19 +143,6 @@ export declare abstract class SacBaseModelControl<VALUE> implements ControlValue
136
143
  * @param injector Injector for injecting services
137
144
  */
138
145
  constructor(formlayout: SacFormLayoutCommon, injector: Injector);
139
- /**
140
- * Aktiviert oder Deaktiviert die Inline Errors für das Control
141
- */
142
- set inlineerrorenabled(value: boolean | null);
143
- /**
144
- * Definiert den Label Text
145
- */
146
- set label(v: string);
147
- /**
148
- * Set Methode für NgModel Binding in Html Markup
149
- * Input wird benötigt, damit der Wert auch über das Markup gesetzt werden kann.
150
- */
151
- set value(v: VALUE);
152
146
  /**
153
147
  * Get Icon for Helptext Tooltip
154
148
  */
@@ -161,6 +155,10 @@ export declare abstract class SacBaseModelControl<VALUE> implements ControlValue
161
155
  * Show error messages inline
162
156
  */
163
157
  get inlineerrorenabled(): boolean | null;
158
+ /**
159
+ * Aktiviert oder Deaktiviert die Inline Errors für das Control
160
+ */
161
+ set inlineerrorenabled(value: boolean | null);
164
162
  /**
165
163
  * Methode ergibt boolean Wert wenn Form invalid oder nicht invalid ist
166
164
  */
@@ -177,6 +175,10 @@ export declare abstract class SacBaseModelControl<VALUE> implements ControlValue
177
175
  * Definiert den Label Text
178
176
  */
179
177
  get label(): string;
178
+ /**
179
+ * Definiert den Label Text
180
+ */
181
+ set label(v: string);
180
182
  /**
181
183
  * returns an object with all label sizes. These values can then be transferred to corresponding CSS classes using a pipe
182
184
  */
@@ -189,6 +191,11 @@ export declare abstract class SacBaseModelControl<VALUE> implements ControlValue
189
191
  * Get Methode für NgModel Binding in Html Markup
190
192
  */
191
193
  get value(): VALUE;
194
+ /**
195
+ * Set Methode für NgModel Binding in Html Markup
196
+ * Input wird benötigt, damit der Wert auch über das Markup gesetzt werden kann.
197
+ */
198
+ set value(v: VALUE);
192
199
  /**
193
200
  * Methode ergibt Error anhand von gegebenen Kriterien
194
201
  */
@@ -230,14 +237,14 @@ export declare abstract class SacBaseModelControl<VALUE> implements ControlValue
230
237
  * Validator Methode
231
238
  */
232
239
  validate(c: AbstractControl): ValidationErrors | null;
233
- /**
234
- * Methode zum schreiben von Werten aus dem Model in das Control
235
- */
236
- writeValue(value: VALUE): void;
237
240
  /**
238
241
  * Abstrakte Validator Methode
239
242
  */
240
243
  abstract validateData(c: AbstractControl): ValidationErrors | null;
244
+ /**
245
+ * Methode zum schreiben von Werten aus dem Model in das Control
246
+ */
247
+ writeValue(value: VALUE): void;
241
248
  /**
242
249
  * Method can Overwriten in Parent Classes
243
250
  * @param value Wert welcher in den korrekten Typ konvertiert werden soll
@@ -273,4 +280,5 @@ export declare abstract class SacBaseModelControl<VALUE> implements ControlValue
273
280
  * Set label sizes from property or parent layout control
274
281
  */
275
282
  private setLabelSizes;
283
+ private setLabelSplitMode;
276
284
  }
@@ -1,28 +1,39 @@
1
- import { EventEmitter, OnDestroy, TemplateRef } from '@angular/core';
2
1
  import { ControlHeight } from '../../enums/ControlHeight';
2
+ import { ISacConfigurationService } from '../../interfaces/ISacConfigurationService';
3
+ import { ISacIconService } from '../../interfaces/ISacIconService';
4
+ import { SacFormLayoutCommon } from '../layout/formlayout';
3
5
  import { SacRadiobuttonsCommon } from './radiobuttons';
6
+ import { EventEmitter, Injector, OnDestroy, OnInit, TemplateRef } from '@angular/core';
4
7
  /**
5
8
  * Basis Komponente für SacRadiobutton.
6
9
  */
7
- export declare abstract class SacRadiobuttonCommon implements OnDestroy {
10
+ export declare abstract class SacRadiobuttonCommon implements OnInit, OnDestroy {
8
11
  protected sacRadioButtons: SacRadiobuttonsCommon;
12
+ private readonly injector;
9
13
  /**
10
- * Konstruktor
11
- * @param SacRadioButtons
14
+ * Boolean Property zum Ausblenden des Controls; default Wert - false
12
15
  */
13
- constructor(sacRadioButtons: SacRadiobuttonsCommon);
16
+ private _hidden;
14
17
  /**
15
- * ControlHeight enum for use in HTML markup
18
+ * Service for loading default settings for the controls
16
19
  */
17
- ControlHeight: typeof ControlHeight;
20
+ protected readonly configurationService: ISacConfigurationService;
18
21
  /**
19
- * Wert
22
+ * Form layout instance if exists
20
23
  */
21
- value: any;
24
+ protected formlayout: SacFormLayoutCommon;
22
25
  /**
23
- * Label Text
26
+ * icon service
24
27
  */
25
- label: string;
28
+ protected iconService: ISacIconService;
29
+ /**
30
+ * public public public public public public public public public public public public public ControlHeight enum for use in HTML markup
31
+ */
32
+ ControlHeight: typeof ControlHeight;
33
+ /**
34
+ * Unique Index für RadioButton
35
+ */
36
+ _index: number;
26
37
  /**
27
38
  * Boolean Property, ob Radiobutton checked ist
28
39
  */
@@ -31,27 +42,45 @@ export declare abstract class SacRadiobuttonCommon implements OnDestroy {
31
42
  * Boolean Property, ob Radiobutton disabled ist
32
43
  */
33
44
  disabled: boolean;
45
+ /**
46
+ * Text to support the user during input.
47
+ */
48
+ helptext: string;
49
+ /**
50
+ * Mode for display helptext
51
+ */
52
+ helptextmode: 'tooltip' | 'text' | null;
53
+ /**
54
+ * Label Text
55
+ */
56
+ label: string;
57
+ /**
58
+ * Template für Value Element
59
+ */
60
+ labeltemplate: TemplateRef<any>;
34
61
  /**
35
62
  * Output Event
36
63
  */
37
64
  onselectitem: EventEmitter<any>;
38
65
  /**
39
- * Methode ergibt Boolean, ob Control disabled ist
66
+ * Wert
40
67
  */
41
- get isDisabled(): boolean;
68
+ value: any;
42
69
  /**
43
- * Boolean Property zum Ausblenden des Controls; default Wert - false
70
+ * Konstruktor
71
+ * @param SacRadioButtons
72
+ * @param formlayout SacFormLayoutCommon to define scoped layout settings
73
+ * @param injector Injector for injecting services
44
74
  */
45
- private _hidden;
75
+ constructor(sacRadioButtons: SacRadiobuttonsCommon, formlayout: SacFormLayoutCommon, injector: Injector);
46
76
  /**
47
- * Setter für hidden Property
77
+ * Get Icon for Helptext Tooltip
48
78
  */
49
- set hidden(v: boolean | string);
50
- get hidden(): boolean | string;
79
+ get HelptextTooltipIcon(): string;
51
80
  /**
52
- * Unique Index für RadioButton
81
+ * define the control height from parent control
53
82
  */
54
- _index: number;
83
+ get componentHeight(): ControlHeight | null;
55
84
  /**
56
85
  * Getter für Unique Index
57
86
  */
@@ -60,20 +89,26 @@ export declare abstract class SacRadiobuttonCommon implements OnDestroy {
60
89
  * Parent Control Name
61
90
  */
62
91
  get getName(): string;
92
+ get hidden(): boolean | string;
63
93
  /**
64
- * define the control height from parent control
94
+ * Setter für hidden Property
65
95
  */
66
- get componentHeight(): ControlHeight | null;
96
+ set hidden(v: boolean | string);
67
97
  /**
68
- * Template für Value Element
98
+ * Methode ergibt Boolean, ob Control disabled ist
69
99
  */
70
- labeltemplate: TemplateRef<any>;
100
+ get isDisabled(): boolean;
101
+ /**
102
+ * Event bei Änderungen
103
+ */
104
+ ChangeEvent(): void;
71
105
  /**
72
106
  * Event wenn die Komponente zerstört wird
73
107
  */
74
108
  ngOnDestroy(): void;
109
+ ngOnInit(): void;
75
110
  /**
76
- * Event bei Änderungen
111
+ * Set mode for helptext. Can be tooltip or text
77
112
  */
78
- ChangeEvent(): void;
113
+ private setHelpTextMode;
79
114
  }
@@ -1,13 +1,13 @@
1
- import { ElementRef, Injector } from '@angular/core';
2
- import { AbstractControl, ValidationErrors } from '@angular/forms';
3
- import * as IMask from 'imask';
4
- import { Moment } from 'moment';
5
1
  import { SacBaseDateTimeControl } from '../../common/basedatetimecontrol';
6
2
  import { SacFormLayoutCommon } from '../layout/formlayout';
3
+ import { ChangeDetectorRef, ElementRef, Injector } from '@angular/core';
4
+ import { AbstractControl, ValidationErrors } from '@angular/forms';
5
+ import * as IMask from 'imask';
6
+ import * as moment_ from 'moment';
7
7
  /**
8
8
  * Komponente für SacDateCommon. Extends SacBaseDateTimeControl
9
9
  */
10
- export declare class SacDateCommon extends SacBaseDateTimeControl {
10
+ export declare abstract class SacDateCommon extends SacBaseDateTimeControl {
11
11
  protected elementRef: ElementRef;
12
12
  /**
13
13
  * Format des Datums
@@ -42,6 +42,18 @@ export declare class SacDateCommon extends SacBaseDateTimeControl {
42
42
  lazy: boolean;
43
43
  overwrite: boolean;
44
44
  };
45
+ /**
46
+ * Min Date
47
+ */
48
+ _maxdate: Date;
49
+ /**
50
+ * Min Date
51
+ */
52
+ _mindate: Date;
53
+ /**
54
+ * Moment JS module instance
55
+ */
56
+ moment: any;
45
57
  /**
46
58
  * Resource Key für Validation Message MaxDate bei Control
47
59
  */
@@ -58,25 +70,18 @@ export declare class SacDateCommon extends SacBaseDateTimeControl {
58
70
  * Resource Key für Validation Message MinDate in Validation Summary
59
71
  */
60
72
  validationmessagesummarymindate: string;
61
- /**
62
- * Min Date
63
- */
64
- _maxdate: Date;
65
- /**
66
- * Min Date
67
- */
68
- _mindate: Date;
69
- /**
70
- * Definiert ob der Date Selector angezeigt wird
71
- */
72
- _showselector: boolean;
73
73
  /**
74
74
  * Constructor
75
75
  * @param formlayout SacFormLayoutCommon to define scoped layout settings
76
76
  * @param injector Injector for injecting services
77
77
  * @param elementRef reference to html element
78
+ * @param cdRef Change Dectection Servie
79
+ */
80
+ constructor(formlayout: SacFormLayoutCommon, injector: Injector, elementRef: ElementRef, cdRef: ChangeDetectorRef);
81
+ /**
82
+ * icon for date selector button
78
83
  */
79
- constructor(formlayout: SacFormLayoutCommon, injector: Injector, elementRef: ElementRef);
84
+ get IconSelector(): string;
80
85
  /**
81
86
  * Min Date
82
87
  */
@@ -85,14 +90,6 @@ export declare class SacDateCommon extends SacBaseDateTimeControl {
85
90
  * Min Date
86
91
  */
87
92
  set mindate(v: string | Date | null);
88
- /**
89
- * icon for date selector button
90
- */
91
- get IconSelector(): string;
92
- /**
93
- * HostListener
94
- */
95
- onClick(targetElement: any): void;
96
93
  /**
97
94
  * Methode ergibt Datum-Format vom String
98
95
  */
@@ -100,11 +97,15 @@ export declare class SacDateCommon extends SacBaseDateTimeControl {
100
97
  /**
101
98
  * Methode ergibt Datum - Moment
102
99
  */
103
- ModifyParsedDateTimeValue(v: Moment): Moment;
100
+ ModifyParsedDateTimeValue(v: moment_.Moment): moment_.Moment;
104
101
  /**
105
102
  * Date Selector
106
103
  */
107
104
  dateselect(v: any): void;
105
+ /**
106
+ * HostListener
107
+ */
108
+ onClick(targetElement: any): void;
108
109
  /**
109
110
  * Zeigt Date Selector an
110
111
  */
@@ -1,13 +1,13 @@
1
- import { ElementRef, Injector } from '@angular/core';
2
- import { AbstractControl, ValidationErrors } from '@angular/forms';
3
- import * as IMask from 'imask';
4
- import { Moment } from 'moment';
5
1
  import { SacBaseDateTimeControl } from '../../common/basedatetimecontrol';
6
2
  import { SacFormLayoutCommon } from '../layout/formlayout';
3
+ import { ChangeDetectorRef, ElementRef, Injector } from '@angular/core';
4
+ import { AbstractControl, ValidationErrors } from '@angular/forms';
5
+ import * as IMask from 'imask';
6
+ import * as moment_ from 'moment';
7
7
  /**
8
8
  * Komponente für SacDateTimeCommon. Extends SacBaseDateTimeControl
9
9
  */
10
- export declare class SacDateTimeCommon extends SacBaseDateTimeControl {
10
+ export declare abstract class SacDateTimeCommon extends SacBaseDateTimeControl {
11
11
  protected elementRef: ElementRef;
12
12
  /**
13
13
  * Format des Datums
@@ -57,6 +57,18 @@ export declare class SacDateTimeCommon extends SacBaseDateTimeControl {
57
57
  lazy: boolean;
58
58
  overwrite: boolean;
59
59
  };
60
+ /**
61
+ * Maximaler Wert des Datums
62
+ */
63
+ _maxdate: Date;
64
+ /**
65
+ * Minimaler Wert des Datums
66
+ */
67
+ _mindate: Date;
68
+ /**
69
+ * Moment JS module instance
70
+ */
71
+ moment: any;
60
72
  /**
61
73
  * Resource Key für Validation Message MaxDate bei Control
62
74
  */
@@ -73,25 +85,17 @@ export declare class SacDateTimeCommon extends SacBaseDateTimeControl {
73
85
  * Resource Key für Validation Message MinDate in Validation Summary
74
86
  */
75
87
  validationmessagesummarymindate: string;
76
- /**
77
- * Maximaler Wert des Datums
78
- */
79
- _maxdate: Date;
80
- /**
81
- * Minimaler Wert des Datums
82
- */
83
- _mindate: Date;
84
- /**
85
- * Definiert ob der Date Selector angezeigt wird
86
- */
87
- _showselector: boolean;
88
88
  /**
89
89
  * Constructor
90
90
  * @param formlayout SacFormLayoutCommon to define scoped layout settings
91
91
  * @param injector Injector for injecting services
92
92
  * @param elementRef reference to html element
93
93
  */
94
- constructor(formlayout: SacFormLayoutCommon, injector: Injector, elementRef: ElementRef);
94
+ constructor(formlayout: SacFormLayoutCommon, injector: Injector, elementRef: ElementRef, cdRef: ChangeDetectorRef);
95
+ /**
96
+ * icon for date selector button
97
+ */
98
+ get IconSelector(): string;
95
99
  /**
96
100
  * Max Date
97
101
  */
@@ -100,14 +104,6 @@ export declare class SacDateTimeCommon extends SacBaseDateTimeControl {
100
104
  * Min Date
101
105
  */
102
106
  set mindate(v: string | Date | null);
103
- /**
104
- * icon for date selector button
105
- */
106
- get IconSelector(): string;
107
- /**
108
- * HostListener
109
- */
110
- onClick(targetElement: any): void;
111
107
  /**
112
108
  * Methode ergibt Datum-Format vom String
113
109
  */
@@ -115,11 +111,15 @@ export declare class SacDateTimeCommon extends SacBaseDateTimeControl {
115
111
  /**
116
112
  * Methode modifiziert den parsed Wert des Datums
117
113
  */
118
- ModifyParsedDateTimeValue(v: Moment): Moment;
114
+ ModifyParsedDateTimeValue(v: moment_.Moment): moment_.Moment;
119
115
  /**
120
116
  * Methode ergibt das selektierte Datum
121
117
  */
122
118
  dateselect(v: any): void;
119
+ /**
120
+ * HostListener
121
+ */
122
+ onClick(targetElement: any): void;
123
123
  /**
124
124
  * DateSelector wird beim Click-Event angezeigt
125
125
  */