@alfalab/core-components-date-range-input 1.1.0

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.
@@ -0,0 +1,98 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var dateFnsIsValid = require('date-fns/isValid');
6
+ var parse = require('date-fns/parse');
7
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
+
10
+ var dateFnsIsValid__default = /*#__PURE__*/_interopDefaultLegacy(dateFnsIsValid);
11
+ var parse__default = /*#__PURE__*/_interopDefaultLegacy(parse);
12
+
13
+ /* eslint-disable no-useless-escape */
14
+ var DATE_FORMAT = 'dd.MM.yyyy';
15
+ var DATE_MASK = [
16
+ /\d/,
17
+ /\d/,
18
+ '.',
19
+ /\d/,
20
+ /\d/,
21
+ '.',
22
+ /\d/,
23
+ /\d/,
24
+ /\d/,
25
+ /\d/,
26
+ ' ',
27
+ '-',
28
+ ' ',
29
+ /\d/,
30
+ /\d/,
31
+ '.',
32
+ /\d/,
33
+ /\d/,
34
+ '.',
35
+ /\d/,
36
+ /\d/,
37
+ /\d/,
38
+ /\d/,
39
+ ];
40
+ var isCompleteDateInput = function (input) { return input.length === DATE_MASK.length; };
41
+ var parseDateString = function (value, dateFormat) {
42
+ if (dateFormat === void 0) { dateFormat = DATE_FORMAT; }
43
+ return parse__default['default'](value, dateFormat, new Date());
44
+ };
45
+ var isValid = function (inputValue, dateFrom, dateTo) {
46
+ return !inputValue ||
47
+ (isCompleteDateInput(inputValue) &&
48
+ dateFnsIsValid__default['default'](parseDateString(dateFrom)) &&
49
+ dateFnsIsValid__default['default'](parseDateString(dateTo)));
50
+ };
51
+ var format = function (value) {
52
+ return value
53
+ .replace(/^(\d\d)(\d)$/, '$1.$2') // 121 => 12.1
54
+ .replace(/^(\d\d)\.(\d\d)(\d)$/, '$1.$2.$3') // 12.122 => 12.12.2
55
+ .replace(/^(\d\d)\d\.(.*)/, '$1.$2') // 123.12.2005 => 12.12.2005
56
+ .replace(/^(\d\d\.\d\d)\d\.(.*)/, '$1.$2') // 12.123.2005 => 12.12.2005
57
+ .replace(/\.$/, '') // 12. => 12
58
+ .replace(/\ $/, '') // 1 2 => 12
59
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d)(\d) - (\d.*)/, '$1 - $3') // 12.12.20051 - 12.12.200 => 12.12.2005 - 12.12.200
60
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d) (\d)- (\d.*)/, '$1 - $3') // 12.12.2005 1- 12.12.200 => 12.12.2005 - 12.12.200
61
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d) -(\d) (\d.*)/, '$1 - $3') // 12.12.2005 -1 12.12.200 => 12.12.2005 - 12.12.200
62
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d) - (\d)(\d\d.\d\d.\d\d\d)/, '$1 - $3') // 12.12.2005 - 112.12.200 => 12.12.2005 - 12.12.200
63
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d) - (\d)(\d\d.\d.\d\d\d\d)/, '$1 - $3') // 12.12.2005 - 112.1.2001 => 12.12.2005 - 12.1.2001
64
+ .replace(/^(\d\d\.\d\d)(\d\d\d\d)/, '$1.$2') // 12.122005 => 12.12.2005
65
+ .replace(/^(\d\d)(\d\d\.\d\d\d\d)/, '$1.$2') // 1212.2005 => 12.12.2005
66
+ .replace(/^(\d\d)(\d.*)/, '$1.$2') // 1212 => 12.12
67
+ .replace(/^(\d\d.\d\d)(\d.*)/, '$1.$2') // 12.122 => 12.12.2
68
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d)(\d)/, '$1 - $2') // 12.12.20056 => 12.12.2005 - 6
69
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d) - (\d\d)(\d)/, '$1 - $2.$3') // 12.12.2005 - 123 => 12.12.2005 - 12.3
70
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d) - (\d\d).(\d\d)(\d)/, '$1 - $2.$3.$4') // 12.12.2005 - 12.123 => 12.12.2005 - 12.12.3
71
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d)- (\d.*)/, '$1 - $2') // 12.12.2005- 12.12.2005 => 12.12.2005 - 12.12.2005
72
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d) -(\d.*)/, '$1 - $2') // 12.12.2005 -12.12.2005 => 12.12.2005 - 12.12.2005
73
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d) -/, '$1') // 12.12.2005 - => 12.12.2005
74
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d) (\d.*)/, '$1 - $2') // 12.12.2005 12.12.2005 => 12.12.2005 - 12.12.2005
75
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d) {2}(\d.*)/, '$1 - $2') // 12.12.2005 12.12.2005 => 12.12.2005 - 12.12.2005
76
+ .replace(/^(\d\d\.\d\d\.\d\d\d\d)-/, '$1');
77
+ }; // 12.12.2005- => 12.12.2005
78
+ var parseTimestampToDate = function (timestamp) {
79
+ var date = new Date(timestamp);
80
+ var year = date.getFullYear();
81
+ var month = date.getMonth() + 1;
82
+ var day = date.getDate();
83
+ if (month < 10) {
84
+ month = "0" + month;
85
+ }
86
+ if (day < 10) {
87
+ day = "0" + day;
88
+ }
89
+ return day + "." + month + "." + year;
90
+ };
91
+
92
+ exports.DATE_FORMAT = DATE_FORMAT;
93
+ exports.DATE_MASK = DATE_MASK;
94
+ exports.format = format;
95
+ exports.isCompleteDateInput = isCompleteDateInput;
96
+ exports.isValid = isValid;
97
+ exports.parseDateString = parseDateString;
98
+ exports.parseTimestampToDate = parseTimestampToDate;
@@ -0,0 +1 @@
1
+ export * from "./format";
package/utils/index.js ADDED
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('date-fns/isValid');
6
+ require('date-fns/parse');
7
+ var utils_format = require('./format.js');
8
+
9
+
10
+
11
+ exports.DATE_FORMAT = utils_format.DATE_FORMAT;
12
+ exports.DATE_MASK = utils_format.DATE_MASK;
13
+ exports.format = utils_format.format;
14
+ exports.isCompleteDateInput = utils_format.isCompleteDateInput;
15
+ exports.isValid = utils_format.isValid;
16
+ exports.parseDateString = utils_format.parseDateString;
17
+ exports.parseTimestampToDate = utils_format.parseTimestampToDate;