@anglr/datetime 5.0.0-beta.20221019112435 → 5.0.0-beta.20221020045240

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 (75) hide show
  1. package/changelog.md +16 -13
  2. package/es2015/src/misc/types.js.map +1 -1
  3. package/es2015/src/misc/utils.js.map +1 -1
  4. package/es2015/src/misc/validators.js.map +1 -1
  5. package/es2015/src/modules/dateTime/directives/dateTime/dateTime.directive.js +233 -0
  6. package/es2015/src/modules/dateTime/directives/dateTime/dateTime.directive.js.map +1 -0
  7. package/es2015/src/modules/dateTime/directives/dateTimeBase.js +25 -41
  8. package/es2015/src/modules/dateTime/directives/dateTimeBase.js.map +1 -1
  9. package/es2015/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js +16 -17
  10. package/es2015/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js.map +1 -1
  11. package/es2015/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js +10 -13
  12. package/es2015/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js.map +1 -1
  13. package/es2015/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js +9 -11
  14. package/es2015/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js.map +1 -1
  15. package/es2015/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js +6 -8
  16. package/es2015/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js.map +1 -1
  17. package/es2015/src/modules/dateTime/directives/index.js +1 -1
  18. package/es2015/src/modules/dateTime/directives/index.js.map +1 -1
  19. package/es2015/src/modules/dateTime/modules/dateTime.module.js +7 -3
  20. package/es2015/src/modules/dateTime/modules/dateTime.module.js.map +1 -1
  21. package/es2015/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js +5 -22
  22. package/es2015/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js.map +1 -1
  23. package/es2020/src/misc/types.js.map +1 -1
  24. package/es2020/src/misc/utils.js.map +1 -1
  25. package/es2020/src/misc/validators.js.map +1 -1
  26. package/es2020/src/modules/dateTime/directives/dateTime/dateTime.directive.js +230 -0
  27. package/es2020/src/modules/dateTime/directives/dateTime/dateTime.directive.js.map +1 -0
  28. package/es2020/src/modules/dateTime/directives/dateTimeBase.js +25 -41
  29. package/es2020/src/modules/dateTime/directives/dateTimeBase.js.map +1 -1
  30. package/es2020/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js +16 -17
  31. package/es2020/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js.map +1 -1
  32. package/es2020/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js +10 -13
  33. package/es2020/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js.map +1 -1
  34. package/es2020/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js +9 -11
  35. package/es2020/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js.map +1 -1
  36. package/es2020/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js +6 -8
  37. package/es2020/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js.map +1 -1
  38. package/es2020/src/modules/dateTime/directives/index.js +1 -1
  39. package/es2020/src/modules/dateTime/directives/index.js.map +1 -1
  40. package/es2020/src/modules/dateTime/modules/dateTime.module.js +7 -3
  41. package/es2020/src/modules/dateTime/modules/dateTime.module.js.map +1 -1
  42. package/es2020/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js +5 -22
  43. package/es2020/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js.map +1 -1
  44. package/package.json +1 -1
  45. package/src/misc/types.d.ts +2 -2
  46. package/src/misc/types.d.ts.map +1 -1
  47. package/src/misc/utils.d.ts +2 -2
  48. package/src/misc/utils.d.ts.map +1 -1
  49. package/src/misc/validators.d.ts +5 -5
  50. package/src/misc/validators.d.ts.map +1 -1
  51. package/src/modules/dateTime/directives/dateTime/dateTime.directive.d.ts +128 -0
  52. package/src/modules/dateTime/directives/dateTime/dateTime.directive.d.ts.map +1 -0
  53. package/src/modules/dateTime/directives/dateTimeBase.d.ts +19 -27
  54. package/src/modules/dateTime/directives/dateTimeBase.d.ts.map +1 -1
  55. package/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.d.ts +3 -2
  56. package/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.d.ts.map +1 -1
  57. package/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.d.ts +4 -4
  58. package/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.d.ts.map +1 -1
  59. package/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.d.ts +4 -4
  60. package/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.d.ts.map +1 -1
  61. package/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.d.ts +2 -2
  62. package/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.d.ts.map +1 -1
  63. package/src/modules/dateTime/directives/index.d.ts +1 -1
  64. package/src/modules/dateTime/directives/index.d.ts.map +1 -1
  65. package/src/modules/dateTime/modules/dateTime.module.d.ts +7 -6
  66. package/src/modules/dateTime/modules/dateTime.module.d.ts.map +1 -1
  67. package/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.d.ts +6 -8
  68. package/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.d.ts.map +1 -1
  69. package/version.bak +1 -1
  70. package/es2015/src/modules/dateTime/directives/dateTimeRestrictedBase.js +0 -152
  71. package/es2015/src/modules/dateTime/directives/dateTimeRestrictedBase.js.map +0 -1
  72. package/es2020/src/modules/dateTime/directives/dateTimeRestrictedBase.js +0 -149
  73. package/es2020/src/modules/dateTime/directives/dateTimeRestrictedBase.js.map +0 -1
  74. package/src/modules/dateTime/directives/dateTimeRestrictedBase.d.ts +0 -74
  75. package/src/modules/dateTime/directives/dateTimeRestrictedBase.d.ts.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"dateTimeRestrictedBase.js","sourceRoot":"","sources":["../../../../../src/modules/dateTime/directives/dateTimeRestrictedBase.ts"],"names":[],"mappings":"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","sourcesContent":["import {Directive, Input, OnDestroy} from '@angular/core';\nimport {Action1, BindThis, isBlank} from '@jscrpt/common';\nimport {Subscription} from 'rxjs';\n\nimport {DateTimeInputOutputValue} from '../../../misc/types';\nimport {getSingleDateTimeValue} from '../../../misc/utils';\nimport {DateTimeBase} from './dateTimeBase';\n\n/**\n * Base class for date time directives with value restrictions\n */\n@Directive()\nexport class DateTimeRestrictedBase<TDate = unknown> extends DateTimeBase<TDate> implements OnDestroy\n{\n //######################### private fields #########################\n\n /**\n * Subscription for max date instance value changes\n */\n private _maxDateInstanceChange: Subscription|undefined|null;\n\n /**\n * Subscription for min date instance value changes\n */\n private _minDateInstanceChange: Subscription|undefined|null;\n\n //######################### protected properties #########################\n\n /**\n * Max allowed value of date time\n */\n protected ɵMaxDateTime: TDate|undefined|null;\n\n /**\n * Min allowed value of date time\n */\n protected ɵMinDateTime: TDate|undefined|null;\n\n //######################### public properties - inputs #########################\n\n /**\n * Gets or sets max allowed date for date time\n */\n @Input()\n public get maxDateTime(): TDate|undefined|null\n {\n return this.ɵMaxDateTime;\n }\n public set maxDateTime(value: TDate|undefined|null)\n {\n this._maxDateInstanceChange?.unsubscribe();\n this._maxDateInstanceChange = null;\n\n if(isBlank(value))\n {\n this.maxDateSet(value);\n\n return;\n }\n\n let val: DateTimeInputOutputValue<TDate> = value;\n\n if(value instanceof DateTimeBase<TDate>)\n {\n this._maxDateInstanceChange = value.valueChange.subscribe(() =>\n {\n const val = getSingleDateTimeValue<TDate>(value.value);\n\n if(isBlank(val))\n {\n this.maxDateSet(null);\n\n return;\n }\n\n this.setMinMaxValue(val, this.maxDateSet);\n });\n\n const v = getSingleDateTimeValue<TDate>(value.value);\n\n if(isBlank(v))\n {\n this.maxDateSet(null);\n\n return;\n }\n\n val = v;\n }\n \n this.setMinMaxValue(val, this.maxDateSet);\n }\n\n /**\n * Gets or sets min allowed date for date time\n */\n @Input()\n public get minDateTime(): TDate|undefined|null\n {\n return this.ɵMinDateTime;\n }\n public set minDateTime(value: TDate|undefined|null)\n {\n this._minDateInstanceChange?.unsubscribe();\n this._minDateInstanceChange = null;\n\n if(isBlank(value))\n {\n this.minDateSet(value);\n\n return;\n }\n\n let val: DateTimeInputOutputValue<TDate> = value;\n\n if(value instanceof DateTimeBase<TDate>)\n {\n this._minDateInstanceChange = value.valueChange.subscribe(() =>\n {\n const val = getSingleDateTimeValue<TDate>(value.value);\n\n if(isBlank(val))\n {\n this.minDateSet(null);\n\n return;\n }\n\n this.setMinMaxValue(val, this.minDateSet);\n });\n\n const v = getSingleDateTimeValue<TDate>(value.value);\n\n if(isBlank(v))\n {\n this.minDateSet(null);\n\n return;\n }\n\n val = v;\n }\n\n this.setMinMaxValue(val, this.minDateSet);\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n \n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this._maxDateInstanceChange?.unsubscribe();\n this._maxDateInstanceChange = null;\n\n this._minDateInstanceChange?.unsubscribe();\n this._minDateInstanceChange = null;\n }\n\n //######################### protected methods #########################\n\n /**\n * Called whenever max date time restriction changes\n */\n protected onMaxDateTimeChange(): void\n {\n }\n\n /**\n * Called whenever min date time restriction changes\n */\n protected onMinDateTimeChange(): void\n {\n }\n\n /**\n * Sets min date time and notifies about changes\n * @param value - Value to be set\n */\n @BindThis\n protected minDateSet(value: TDate|undefined|null): void\n {\n this.ɵMinDateTime = value;\n this.onMinDateTimeChange();\n }\n\n /**\n * Sets max date time and notifies about changes\n * @param value - Value to be set\n */\n @BindThis\n protected maxDateSet(value: TDate|undefined|null): void\n {\n this.ɵMaxDateTime = value;\n this.onMaxDateTimeChange();\n }\n\n /**\n * Sets min or max date time value\n * @param value - Value to be set\n * @param setter - Action used for setting value\n */\n protected setMinMaxValue(value: string|number|TDate|Date, setter: Action1<TDate|undefined|null>): void\n {\n const val = this.dateApi.getValue(value, this.customFormat);\n\n if(val.isValid())\n {\n setter(val.value);\n }\n else\n {\n setter(null);\n }\n }\n\n //######################### ng language server #########################\n \n /**\n * Custom input type for `maxDateTime` input\n */\n public static ngAcceptInputType_maxDateTime: string|number|DateTimeBase|Date;\n\n /**\n * Custom input type for `minDateTime` input\n */\n public static ngAcceptInputType_minDateTime: string|number|DateTimeBase|Date;\n}\n"]}
@@ -1,149 +0,0 @@
1
- import { __decorate, __metadata } from "tslib";
2
- import { Directive, Input } from '@angular/core';
3
- import { BindThis, isBlank } from '@jscrpt/common';
4
- import { getSingleDateTimeValue } from '../../../misc/utils';
5
- import { DateTimeBase } from './dateTimeBase';
6
- import * as i0 from "@angular/core";
7
- /**
8
- * Base class for date time directives with value restrictions
9
- */
10
- export class DateTimeRestrictedBase extends DateTimeBase {
11
- //######################### public properties - inputs #########################
12
- /**
13
- * Gets or sets max allowed date for date time
14
- */
15
- get maxDateTime() {
16
- return this.ɵMaxDateTime;
17
- }
18
- set maxDateTime(value) {
19
- this._maxDateInstanceChange?.unsubscribe();
20
- this._maxDateInstanceChange = null;
21
- if (isBlank(value)) {
22
- this.maxDateSet(value);
23
- return;
24
- }
25
- let val = value;
26
- if (value instanceof (DateTimeBase)) {
27
- this._maxDateInstanceChange = value.valueChange.subscribe(() => {
28
- const val = getSingleDateTimeValue(value.value);
29
- if (isBlank(val)) {
30
- this.maxDateSet(null);
31
- return;
32
- }
33
- this.setMinMaxValue(val, this.maxDateSet);
34
- });
35
- const v = getSingleDateTimeValue(value.value);
36
- if (isBlank(v)) {
37
- this.maxDateSet(null);
38
- return;
39
- }
40
- val = v;
41
- }
42
- this.setMinMaxValue(val, this.maxDateSet);
43
- }
44
- /**
45
- * Gets or sets min allowed date for date time
46
- */
47
- get minDateTime() {
48
- return this.ɵMinDateTime;
49
- }
50
- set minDateTime(value) {
51
- this._minDateInstanceChange?.unsubscribe();
52
- this._minDateInstanceChange = null;
53
- if (isBlank(value)) {
54
- this.minDateSet(value);
55
- return;
56
- }
57
- let val = value;
58
- if (value instanceof (DateTimeBase)) {
59
- this._minDateInstanceChange = value.valueChange.subscribe(() => {
60
- const val = getSingleDateTimeValue(value.value);
61
- if (isBlank(val)) {
62
- this.minDateSet(null);
63
- return;
64
- }
65
- this.setMinMaxValue(val, this.minDateSet);
66
- });
67
- const v = getSingleDateTimeValue(value.value);
68
- if (isBlank(v)) {
69
- this.minDateSet(null);
70
- return;
71
- }
72
- val = v;
73
- }
74
- this.setMinMaxValue(val, this.minDateSet);
75
- }
76
- //######################### public methods - implementation of OnDestroy #########################
77
- /**
78
- * Called when component is destroyed
79
- */
80
- ngOnDestroy() {
81
- this._maxDateInstanceChange?.unsubscribe();
82
- this._maxDateInstanceChange = null;
83
- this._minDateInstanceChange?.unsubscribe();
84
- this._minDateInstanceChange = null;
85
- }
86
- //######################### protected methods #########################
87
- /**
88
- * Called whenever max date time restriction changes
89
- */
90
- onMaxDateTimeChange() {
91
- }
92
- /**
93
- * Called whenever min date time restriction changes
94
- */
95
- onMinDateTimeChange() {
96
- }
97
- /**
98
- * Sets min date time and notifies about changes
99
- * @param value - Value to be set
100
- */
101
- minDateSet(value) {
102
- this.ɵMinDateTime = value;
103
- this.onMinDateTimeChange();
104
- }
105
- /**
106
- * Sets max date time and notifies about changes
107
- * @param value - Value to be set
108
- */
109
- maxDateSet(value) {
110
- this.ɵMaxDateTime = value;
111
- this.onMaxDateTimeChange();
112
- }
113
- /**
114
- * Sets min or max date time value
115
- * @param value - Value to be set
116
- * @param setter - Action used for setting value
117
- */
118
- setMinMaxValue(value, setter) {
119
- const val = this.dateApi.getValue(value, this.customFormat);
120
- if (val.isValid()) {
121
- setter(val.value);
122
- }
123
- else {
124
- setter(null);
125
- }
126
- }
127
- }
128
- DateTimeRestrictedBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.6", ngImport: i0, type: DateTimeRestrictedBase, deps: null, target: i0.ɵɵFactoryTarget.Directive });
129
- DateTimeRestrictedBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.6", type: DateTimeRestrictedBase, inputs: { maxDateTime: "maxDateTime", minDateTime: "minDateTime" }, usesInheritance: true, ngImport: i0 });
130
- __decorate([
131
- BindThis,
132
- __metadata("design:type", Function),
133
- __metadata("design:paramtypes", [Object]),
134
- __metadata("design:returntype", void 0)
135
- ], DateTimeRestrictedBase.prototype, "minDateSet", null);
136
- __decorate([
137
- BindThis,
138
- __metadata("design:type", Function),
139
- __metadata("design:paramtypes", [Object]),
140
- __metadata("design:returntype", void 0)
141
- ], DateTimeRestrictedBase.prototype, "maxDateSet", null);
142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.6", ngImport: i0, type: DateTimeRestrictedBase, decorators: [{
143
- type: Directive
144
- }], propDecorators: { maxDateTime: [{
145
- type: Input
146
- }], minDateTime: [{
147
- type: Input
148
- }], minDateSet: [], maxDateSet: [] } });
149
- //# sourceMappingURL=dateTimeRestrictedBase.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dateTimeRestrictedBase.js","sourceRoot":"","sources":["../../../../../src/modules/dateTime/directives/dateTimeRestrictedBase.ts"],"names":[],"mappings":"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","sourcesContent":["import {Directive, Input, OnDestroy} from '@angular/core';\nimport {Action1, BindThis, isBlank} from '@jscrpt/common';\nimport {Subscription} from 'rxjs';\n\nimport {DateTimeInputOutputValue} from '../../../misc/types';\nimport {getSingleDateTimeValue} from '../../../misc/utils';\nimport {DateTimeBase} from './dateTimeBase';\n\n/**\n * Base class for date time directives with value restrictions\n */\n@Directive()\nexport class DateTimeRestrictedBase<TDate = unknown> extends DateTimeBase<TDate> implements OnDestroy\n{\n //######################### private fields #########################\n\n /**\n * Subscription for max date instance value changes\n */\n private _maxDateInstanceChange: Subscription|undefined|null;\n\n /**\n * Subscription for min date instance value changes\n */\n private _minDateInstanceChange: Subscription|undefined|null;\n\n //######################### protected properties #########################\n\n /**\n * Max allowed value of date time\n */\n protected ɵMaxDateTime: TDate|undefined|null;\n\n /**\n * Min allowed value of date time\n */\n protected ɵMinDateTime: TDate|undefined|null;\n\n //######################### public properties - inputs #########################\n\n /**\n * Gets or sets max allowed date for date time\n */\n @Input()\n public get maxDateTime(): TDate|undefined|null\n {\n return this.ɵMaxDateTime;\n }\n public set maxDateTime(value: TDate|undefined|null)\n {\n this._maxDateInstanceChange?.unsubscribe();\n this._maxDateInstanceChange = null;\n\n if(isBlank(value))\n {\n this.maxDateSet(value);\n\n return;\n }\n\n let val: DateTimeInputOutputValue<TDate> = value;\n\n if(value instanceof DateTimeBase<TDate>)\n {\n this._maxDateInstanceChange = value.valueChange.subscribe(() =>\n {\n const val = getSingleDateTimeValue<TDate>(value.value);\n\n if(isBlank(val))\n {\n this.maxDateSet(null);\n\n return;\n }\n\n this.setMinMaxValue(val, this.maxDateSet);\n });\n\n const v = getSingleDateTimeValue<TDate>(value.value);\n\n if(isBlank(v))\n {\n this.maxDateSet(null);\n\n return;\n }\n\n val = v;\n }\n \n this.setMinMaxValue(val, this.maxDateSet);\n }\n\n /**\n * Gets or sets min allowed date for date time\n */\n @Input()\n public get minDateTime(): TDate|undefined|null\n {\n return this.ɵMinDateTime;\n }\n public set minDateTime(value: TDate|undefined|null)\n {\n this._minDateInstanceChange?.unsubscribe();\n this._minDateInstanceChange = null;\n\n if(isBlank(value))\n {\n this.minDateSet(value);\n\n return;\n }\n\n let val: DateTimeInputOutputValue<TDate> = value;\n\n if(value instanceof DateTimeBase<TDate>)\n {\n this._minDateInstanceChange = value.valueChange.subscribe(() =>\n {\n const val = getSingleDateTimeValue<TDate>(value.value);\n\n if(isBlank(val))\n {\n this.minDateSet(null);\n\n return;\n }\n\n this.setMinMaxValue(val, this.minDateSet);\n });\n\n const v = getSingleDateTimeValue<TDate>(value.value);\n\n if(isBlank(v))\n {\n this.minDateSet(null);\n\n return;\n }\n\n val = v;\n }\n\n this.setMinMaxValue(val, this.minDateSet);\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n \n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this._maxDateInstanceChange?.unsubscribe();\n this._maxDateInstanceChange = null;\n\n this._minDateInstanceChange?.unsubscribe();\n this._minDateInstanceChange = null;\n }\n\n //######################### protected methods #########################\n\n /**\n * Called whenever max date time restriction changes\n */\n protected onMaxDateTimeChange(): void\n {\n }\n\n /**\n * Called whenever min date time restriction changes\n */\n protected onMinDateTimeChange(): void\n {\n }\n\n /**\n * Sets min date time and notifies about changes\n * @param value - Value to be set\n */\n @BindThis\n protected minDateSet(value: TDate|undefined|null): void\n {\n this.ɵMinDateTime = value;\n this.onMinDateTimeChange();\n }\n\n /**\n * Sets max date time and notifies about changes\n * @param value - Value to be set\n */\n @BindThis\n protected maxDateSet(value: TDate|undefined|null): void\n {\n this.ɵMaxDateTime = value;\n this.onMaxDateTimeChange();\n }\n\n /**\n * Sets min or max date time value\n * @param value - Value to be set\n * @param setter - Action used for setting value\n */\n protected setMinMaxValue(value: string|number|TDate|Date, setter: Action1<TDate|undefined|null>): void\n {\n const val = this.dateApi.getValue(value, this.customFormat);\n\n if(val.isValid())\n {\n setter(val.value);\n }\n else\n {\n setter(null);\n }\n }\n\n //######################### ng language server #########################\n \n /**\n * Custom input type for `maxDateTime` input\n */\n public static ngAcceptInputType_maxDateTime: string|number|DateTimeBase|Date;\n\n /**\n * Custom input type for `minDateTime` input\n */\n public static ngAcceptInputType_minDateTime: string|number|DateTimeBase|Date;\n}\n"]}
@@ -1,74 +0,0 @@
1
- import { OnDestroy } from '@angular/core';
2
- import { Action1 } from '@jscrpt/common';
3
- import { DateTimeBase } from './dateTimeBase';
4
- import * as i0 from "@angular/core";
5
- /**
6
- * Base class for date time directives with value restrictions
7
- */
8
- export declare class DateTimeRestrictedBase<TDate = unknown> extends DateTimeBase<TDate> implements OnDestroy {
9
- /**
10
- * Subscription for max date instance value changes
11
- */
12
- private _maxDateInstanceChange;
13
- /**
14
- * Subscription for min date instance value changes
15
- */
16
- private _minDateInstanceChange;
17
- /**
18
- * Max allowed value of date time
19
- */
20
- protected ɵMaxDateTime: TDate | undefined | null;
21
- /**
22
- * Min allowed value of date time
23
- */
24
- protected ɵMinDateTime: TDate | undefined | null;
25
- /**
26
- * Gets or sets max allowed date for date time
27
- */
28
- get maxDateTime(): TDate | undefined | null;
29
- set maxDateTime(value: TDate | undefined | null);
30
- /**
31
- * Gets or sets min allowed date for date time
32
- */
33
- get minDateTime(): TDate | undefined | null;
34
- set minDateTime(value: TDate | undefined | null);
35
- /**
36
- * Called when component is destroyed
37
- */
38
- ngOnDestroy(): void;
39
- /**
40
- * Called whenever max date time restriction changes
41
- */
42
- protected onMaxDateTimeChange(): void;
43
- /**
44
- * Called whenever min date time restriction changes
45
- */
46
- protected onMinDateTimeChange(): void;
47
- /**
48
- * Sets min date time and notifies about changes
49
- * @param value - Value to be set
50
- */
51
- protected minDateSet(value: TDate | undefined | null): void;
52
- /**
53
- * Sets max date time and notifies about changes
54
- * @param value - Value to be set
55
- */
56
- protected maxDateSet(value: TDate | undefined | null): void;
57
- /**
58
- * Sets min or max date time value
59
- * @param value - Value to be set
60
- * @param setter - Action used for setting value
61
- */
62
- protected setMinMaxValue(value: string | number | TDate | Date, setter: Action1<TDate | undefined | null>): void;
63
- /**
64
- * Custom input type for `maxDateTime` input
65
- */
66
- static ngAcceptInputType_maxDateTime: string | number | DateTimeBase | Date;
67
- /**
68
- * Custom input type for `minDateTime` input
69
- */
70
- static ngAcceptInputType_minDateTime: string | number | DateTimeBase | Date;
71
- static ɵfac: i0.ɵɵFactoryDeclaration<DateTimeRestrictedBase<any>, never>;
72
- static ɵdir: i0.ɵɵDirectiveDeclaration<DateTimeRestrictedBase<any>, never, never, { "maxDateTime": "maxDateTime"; "minDateTime": "minDateTime"; }, {}, never, never, false>;
73
- }
74
- //# sourceMappingURL=dateTimeRestrictedBase.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dateTimeRestrictedBase.d.ts","sourceRoot":"","sources":["dateTimeRestrictedBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,SAAS,EAAC,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAC,OAAO,EAAoB,MAAM,gBAAgB,CAAC;AAK1D,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;;AAE5C;;GAEG;AACH,qBACa,sBAAsB,CAAC,KAAK,GAAG,OAAO,CAAE,SAAQ,YAAY,CAAC,KAAK,CAAE,YAAW,SAAS;IAIjG;;OAEG;IACH,OAAO,CAAC,sBAAsB,CAA8B;IAE5D;;OAEG;IACH,OAAO,CAAC,sBAAsB,CAA8B;IAI5D;;OAEG;IACH,SAAS,CAAC,YAAY,EAAE,KAAK,GAAC,SAAS,GAAC,IAAI,CAAC;IAE7C;;OAEG;IACH,SAAS,CAAC,YAAY,EAAE,KAAK,GAAC,SAAS,GAAC,IAAI,CAAC;IAI7C;;OAEG;IACH,IACW,WAAW,IAAI,KAAK,GAAC,SAAS,GAAC,IAAI,CAG7C;IACD,IAAW,WAAW,CAAC,KAAK,EAAE,KAAK,GAAC,SAAS,GAAC,IAAI,EA2CjD;IAED;;OAEG;IACH,IACW,WAAW,IAAI,KAAK,GAAC,SAAS,GAAC,IAAI,CAG7C;IACD,IAAW,WAAW,CAAC,KAAK,EAAE,KAAK,GAAC,SAAS,GAAC,IAAI,EA2CjD;IAID;;OAEG;IACI,WAAW,IAAI,IAAI;IAW1B;;OAEG;IACH,SAAS,CAAC,mBAAmB,IAAI,IAAI;IAIrC;;OAEG;IACH,SAAS,CAAC,mBAAmB,IAAI,IAAI;IAIrC;;;OAGG;IAEH,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,GAAC,SAAS,GAAC,IAAI,GAAG,IAAI;IAMvD;;;OAGG;IAEH,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,GAAC,SAAS,GAAC,IAAI,GAAG,IAAI;IAMvD;;;;OAIG;IACH,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAC,MAAM,GAAC,KAAK,GAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,GAAC,SAAS,GAAC,IAAI,CAAC,GAAG,IAAI;IAgBtG;;OAEG;IACH,OAAc,6BAA6B,EAAE,MAAM,GAAC,MAAM,GAAC,YAAY,GAAC,IAAI,CAAC;IAE7E;;OAEG;IACH,OAAc,6BAA6B,EAAE,MAAM,GAAC,MAAM,GAAC,YAAY,GAAC,IAAI,CAAC;yCAvNpE,sBAAsB;2CAAtB,sBAAsB;CAwNlC"}