@servicetitan/design-system 12.11.0 → 13.0.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.
Files changed (43) hide show
  1. package/dist/components/Checkbox/Checkbox.js +2 -1
  2. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  3. package/dist/components/DatePicker/DatePicker.css +9 -9
  4. package/dist/components/DatePicker/DatePicker.css.map +1 -1
  5. package/dist/components/DatePicker/DatePicker.d.ts +22 -8
  6. package/dist/components/DatePicker/DatePicker.js +111 -133
  7. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  8. package/dist/components/DatePicker/InputDateMask.d.ts +9 -6
  9. package/dist/components/DatePicker/InputDateMask.js +100 -150
  10. package/dist/components/DatePicker/InputDateMask.js.map +1 -1
  11. package/dist/components/DatePicker/index.css +9 -9
  12. package/dist/components/DatePicker/index.css.map +1 -1
  13. package/dist/{utilities/maskUtils.d.ts → components/DatePicker/utils/expandMaskUtils.d.ts} +1 -0
  14. package/dist/{utilities/maskUtils.js → components/DatePicker/utils/expandMaskUtils.js} +34 -1
  15. package/dist/components/DatePicker/utils/expandMaskUtils.js.map +1 -0
  16. package/dist/{utilities/maskUtils.test.d.ts → components/DatePicker/utils/expandMaskUtils.test.d.ts} +0 -0
  17. package/dist/{utilities/maskUtils.test.js → components/DatePicker/utils/expandMaskUtils.test.js} +2 -2
  18. package/dist/components/DatePicker/utils/expandMaskUtils.test.js.map +1 -0
  19. package/dist/components/DatePicker/utils/maskUtils.d.ts +12 -0
  20. package/dist/components/DatePicker/utils/maskUtils.js +74 -0
  21. package/dist/components/DatePicker/utils/maskUtils.js.map +1 -0
  22. package/dist/components/DatePicker/utils/utils.d.ts +27 -0
  23. package/dist/components/DatePicker/utils/utils.js +98 -0
  24. package/dist/components/DatePicker/utils/utils.js.map +1 -0
  25. package/dist/components/FormField/FormField.js +1 -1
  26. package/dist/components/FormField/FormField.js.map +1 -1
  27. package/dist/components/TimePicker/TimePicker.d.ts +5 -1
  28. package/dist/components/TimePicker/TimePicker.js.map +1 -1
  29. package/dist/components/index.css +9 -9
  30. package/dist/components/index.css.map +1 -1
  31. package/dist/global/index.css +1 -1
  32. package/dist/global/version.css +1 -1
  33. package/dist/system-light.css +1 -1
  34. package/dist/system-light.min.css +1 -1
  35. package/dist/system.css +10 -10
  36. package/dist/system.css.map +1 -1
  37. package/dist/system.min.css +2 -2
  38. package/dist/utilities/KeyboardAccessTests/KeyboardAccess.test.js +0 -1
  39. package/dist/utilities/KeyboardAccessTests/KeyboardAccess.test.js.map +1 -1
  40. package/dist/utilities/TimezoneProvider/TimezoneProvider.test.js +3 -3
  41. package/package.json +7 -7
  42. package/dist/utilities/maskUtils.js.map +0 -1
  43. package/dist/utilities/maskUtils.test.js.map +0 -1
@@ -9,175 +9,125 @@ var __rest = (this && this.__rest) || function (s, e) {
9
9
  }
10
10
  return t;
11
11
  };
12
- import React from 'react';
13
- import { Input } from '../Input';
14
- import moment from 'moment';
15
- import InputMask from 'react-input-mask';
12
+ import React, { useEffect, useState } from 'react';
16
13
  import classnames from 'classnames';
14
+ import InputMask from 'react-input-mask';
15
+ import { Input } from '../Input';
17
16
  import { keys } from '../../utilities/keyCodes';
18
- import { expandValueAtIndex, findMaskFieldBoundariesAtPosition, getValueAtIndex, setValueAtIndex, } from '../../utilities/maskUtils';
19
- const round = (year, to = 100) => year - (year % to);
17
+ import { compareObj, isInvalidDate } from './utils/utils';
18
+ import { formatDate, isFocusInsideDatePicker, parseEntry, } from './utils/maskUtils';
19
+ import { expandMaskValue, findMaskFieldBoundariesAtPosition, } from './utils/expandMaskUtils';
20
+ export const defaultFormat = 'MM/DD/YYYY';
21
+ export const defaultMaskChar = '_';
20
22
  export const InputDateMask = (_a) => {
21
- var { alwaysShowMask, className, dateFormat = 'MM/DD/YYYY', disabled, error, maskChar = '_', maxDate, minDate, onChange, onBlur, placeholder, shortLabel, size, value, tabIndex, inputRef } = _a, props = __rest(_a, ["alwaysShowMask", "className", "dateFormat", "disabled", "error", "maskChar", "maxDate", "minDate", "onChange", "onBlur", "placeholder", "shortLabel", "size", "value", "tabIndex", "inputRef"]);
22
- const formatDate = (date) => {
23
- return date ? moment(date).format(dateFormat) : '';
24
- };
25
- const [maskValue, setMask] = React.useState('');
26
- const [rawValue, setRawValue] = React.useState();
27
- const [expandValueAtCursor, setExpandValueAtCursor] = React.useState(false);
28
- const [cursorPosition, setCursorPosition] = React.useState(null);
29
- let falseEmptyChange = false;
30
- const handleKeyDown = (evt) => {
31
- if (evt.key === keys.delete) {
32
- onChange(undefined);
33
- setMask('');
34
- }
35
- if (evt.key === keys.slash) {
36
- setExpandValueAtCursor(true);
37
- }
38
- };
39
- const expandMaskValue = (mask, cursorPosition) => {
40
- let value = mask;
41
- const parsedValue = parseInt(getValueAtIndex(mask, cursorPosition), 10);
42
- if (!parsedValue)
43
- return value;
44
- const [startIndex, endIndex] = findMaskFieldBoundariesAtPosition(mask, cursorPosition);
45
- const desiredMaskLength = endIndex - startIndex;
46
- if (desiredMaskLength === 4) {
47
- // End early if full year already exists
48
- if (parsedValue.toString().length === 4)
49
- return value;
50
- /**
51
- * auto fills year if value is between the beginning of century
52
- * and 5 years ahead
53
- *
54
- * @todo: Change year calculations to use current year for all non-existant values
55
- * E.g. 7 -> 2027, 20 -> 2020, 181 -> 2181, assuming current year is 2021
56
- */
57
- const currentYear = new Date().getFullYear();
58
- const beginningOfCentury = round(currentYear, 100);
59
- const yearsFromBeginningOfCentury = currentYear - beginningOfCentury + 5;
60
- let year = parsedValue + beginningOfCentury;
61
- if (parsedValue > yearsFromBeginningOfCentury) {
62
- year -= parsedValue >= 100 ? 1000 : 100;
63
- }
64
- value = setValueAtIndex(mask, cursorPosition, year);
65
- }
66
- else {
67
- value = expandValueAtIndex(mask, cursorPosition);
68
- }
69
- return value;
70
- };
71
- const updateMaskValue = (value) => {
72
- setMask(value);
73
- if (isMaskValid(value)) {
74
- onChange(parseDate(value));
75
- }
76
- else {
77
- onChange(undefined);
78
- }
79
- };
80
- const handleBeforeMaskedValueChange = (newState, oldState) => {
81
- var _a, _b, _c;
82
- falseEmptyChange =
83
- !/\d/.test(newState.value) && !/\d/.test(oldState.value);
84
- if (((_a = newState === null || newState === void 0 ? void 0 : newState.selection) === null || _a === void 0 ? void 0 : _a.start) === ((_b = newState === null || newState === void 0 ? void 0 : newState.selection) === null || _b === void 0 ? void 0 : _b.end)) {
85
- setCursorPosition((_c = newState === null || newState === void 0 ? void 0 : newState.selection) === null || _c === void 0 ? void 0 : _c.start);
86
- }
87
- if (expandValueAtCursor) {
88
- setExpandValueAtCursor(false);
89
- const value = expandMaskValue(newState.value, newState.selection.start);
90
- if (value === maskValue) {
91
- return newState;
23
+ var { alwaysShowMask, className, dateFormat = defaultFormat, disabled, error, maskChar = defaultMaskChar, maxDate: max, minDate: min, onChange, onBlur, placeholder, required, shortLabel, size, value, tabIndex, inputRef, calendarRef, input } = _a, rest = __rest(_a, ["alwaysShowMask", "className", "dateFormat", "disabled", "error", "maskChar", "maxDate", "minDate", "onChange", "onBlur", "placeholder", "required", "shortLabel", "size", "value", "tabIndex", "inputRef", "calendarRef", "input"]);
24
+ const [entry, setEntry] = useState(''); // Input's text entry, e.g. mask value
25
+ const [rangeError, setRangeError] = useState(false);
26
+ const [requiredError, setRequiredError] = useState(false);
27
+ const [invalidEntryError, setInvalidEntryError] = useState(false);
28
+ const [expandMaskAtCursor, setExpandMaskAtCursor] = React.useState(false);
29
+ const isChangeFromMask = React.useRef(false);
30
+ const parse = (str = entry) => parseEntry(str, dateFormat, maskChar, min, max, required);
31
+ // Effects
32
+ useEffect(() => {
33
+ if (isInvalidDate(value) || typeof value === 'undefined') {
34
+ if (isChangeFromMask.current) {
35
+ isChangeFromMask.current = false; // In case value came from InputDateMask...
36
+ return; // ...keep user's entry as is
92
37
  }
93
- updateMaskValue(value);
94
- // reposition cursor
95
- const [, endIndex] = findMaskFieldBoundariesAtPosition(newState.value, newState.selection.start);
96
- newState.selection = { start: endIndex, end: endIndex };
97
- newState.value = value;
98
38
  }
99
- return newState;
100
- };
101
- const handleBlur = () => {
102
- var _a;
103
- if (cursorPosition) {
104
- const expandedValue = (_a = expandMaskValue(maskValue, cursorPosition)) !== null && _a !== void 0 ? _a : maskValue;
105
- if (expandedValue !== maskValue) {
106
- updateMaskValue(expandMaskValue(maskValue, cursorPosition));
107
- setCursorPosition(null);
39
+ const nextEntry = formatDate(value, dateFormat);
40
+ setRangeError(parse(nextEntry).isOutRange);
41
+ setRequiredError(false);
42
+ setInvalidEntryError(false);
43
+ setEntry(nextEntry);
44
+ }, [compareObj(value)]); // eslint-disable-line
45
+ useEffect(() => {
46
+ if (!isChangeFromMask.current)
47
+ return; // Prevent double onChange if value changed from outside of InputDateMask
48
+ const { date, isEmpty, isFull, isOutRange, isValid, invalidReason } = parse(); // New entry
49
+ setInvalidEntryError(isFull && !isValid);
50
+ if (!isValid && !isFull && !isEmpty) {
51
+ if ((value && !isInvalidDate(value)) || // `12/12/2023` → `12/12/202_`
52
+ (typeof value === 'undefined' && !isEmpty) // `__/__/____` → `1_/__/____`
53
+ ) {
54
+ isChangeFromMask.current = true;
55
+ onChange(date, { invalidReason });
108
56
  }
57
+ return; // Suppress onChange if entry not full
109
58
  }
110
- if (falseEmptyChange) {
59
+ if (isOutRange || (isFull && !isValid)) {
60
+ isChangeFromMask.current = true;
61
+ setRangeError(true);
62
+ onChange(date, { invalidReason });
111
63
  return;
112
64
  }
113
- if (isMaskValid(maskValue) && rawValue === undefined) {
114
- onBlur === null || onBlur === void 0 ? void 0 : onBlur(parseDate(maskValue));
115
- return;
116
- }
117
- onBlur === null || onBlur === void 0 ? void 0 : onBlur(undefined);
118
- };
119
- const handleChange = (event) => {
120
- const value = event.target.value;
121
- setRawValue(value.length ? value : undefined);
122
- setMask(value);
123
- if (falseEmptyChange) {
124
- return;
65
+ // Suppress firing onChange for same values
66
+ if (compareObj(value) !== compareObj(date)) {
67
+ isChangeFromMask.current = true;
68
+ onChange(date, { invalidReason }); // Finally
125
69
  }
126
- if (isMaskValid(value)) {
127
- onChange(parseDate(value));
70
+ }, [entry]); // eslint-disable-line
71
+ // Handlers
72
+ const handleMaskKeyDown = (e) => {
73
+ if (e.key === keys.delete) {
74
+ e.preventDefault();
75
+ setRequiredError(required && !parse().isEmpty);
76
+ setEntry(''); // Clear user's entry
128
77
  }
129
- else {
130
- onChange(undefined);
78
+ if (e.key === keys.slash) {
79
+ e.preventDefault();
80
+ setExpandMaskAtCursor(true); // Performs `1_/__/____` → `01/__/____`, etc.
131
81
  }
132
82
  };
133
- const getMaskError = () => {
134
- return (value === undefined && doesMaskExist() && isMaskInvalid(maskValue));
83
+ const handleMaskBlur = (e) => {
84
+ if (isFocusInsideDatePicker(inputRef, calendarRef, e))
85
+ return; // Suppress if focus is still inside DatePicker
86
+ const { date, isEmpty, isFull, isOutRange, isValid, invalidReason } = parse();
87
+ setRequiredError(required && !isFull);
88
+ setRangeError(isOutRange);
89
+ setInvalidEntryError(!isEmpty && !isValid);
90
+ onBlur(date, { invalidReason });
91
+ isChangeFromMask.current = false;
135
92
  };
136
- const getValueError = () => {
137
- return value !== undefined && !isDateInRange(value);
138
- };
139
- const parseDate = React.useCallback((date) => moment(date, dateFormat).toDate(), [dateFormat]);
140
- const doesMaskExist = () => {
141
- return maskValue !== '' && maskValue !== undefined;
93
+ const handleMaskChange = (e) => {
94
+ var _a, _b;
95
+ if (e.type !== 'change')
96
+ return; // Other possible types: focus, blur
97
+ isChangeFromMask.current = true;
98
+ const nextEntry = (_a = e === null || e === void 0 ? void 0 : e.target) === null || _a === void 0 ? void 0 : _a.value;
99
+ if (nextEntry === entry)
100
+ return;
101
+ (_b = input === null || input === void 0 ? void 0 : input.onChange) === null || _b === void 0 ? void 0 : _b.call(input, e, nextEntry);
102
+ const { isEmpty, isFull, isOutRange, isValid } = parse(nextEntry);
103
+ setRangeError(isOutRange);
104
+ setRequiredError(required && isEmpty);
105
+ setInvalidEntryError(isFull && !isValid);
106
+ setEntry(nextEntry); // Runs effect on state change later to handle onChange
142
107
  };
143
- const isMaskInvalid = (mask) => {
144
- return !(mask === null || mask === void 0 ? void 0 : mask.includes(maskChar)) && !isDateStringValid(mask);
108
+ const handleBeforeMaskChange = (next) => {
109
+ if (expandMaskAtCursor) {
110
+ setExpandMaskAtCursor(false);
111
+ const expanded = expandMaskValue(next.value, next.selection.start);
112
+ if (expanded === entry || parse(expanded).isEmpty)
113
+ return next;
114
+ setEntry(expanded);
115
+ const nextIndex = findMaskFieldBoundariesAtPosition(next.value, next.selection.start)[1];
116
+ next.selection = { start: nextIndex + 1, end: nextIndex + 1 }; // Reposition cursor to next boundary
117
+ next.value = expanded;
118
+ }
119
+ if (entry === '' && parse(next.value).isEmpty)
120
+ next.selection = { start: 0, end: 0 }; // Send cursor to start on clearing mask
121
+ return next;
145
122
  };
146
- const isDateInRange = React.useCallback((date) => {
147
- if (minDate && maxDate) {
148
- return date >= minDate && date <= maxDate;
149
- }
150
- else if (minDate) {
151
- return date >= minDate;
152
- }
153
- else if (maxDate) {
154
- return date <= maxDate;
155
- }
156
- return true;
157
- }, [minDate, maxDate]);
158
- const isDateStringValid = React.useCallback((date) => moment(date, dateFormat).isValid() &&
159
- isDateInRange(parseDate(date)), [dateFormat, isDateInRange, parseDate]);
160
- const isMaskValid = React.useCallback((mask) => !(mask === null || mask === void 0 ? void 0 : mask.includes(maskChar)) && isDateStringValid(mask), [maskChar, isDateStringValid]);
161
- React.useEffect(() => {
162
- if (value === undefined && isMaskValid(maskValue)) {
163
- setMask('');
164
- }
165
- else {
166
- setMask(formatDate(value));
167
- }
168
- // eslint-disable-next-line react-hooks/exhaustive-deps
169
- }, [value]);
170
123
  /*
171
- * This replaces the date format with a random number (9)
172
- * This gets turned back to `maskChar` a few lines below.
173
- * I don't know why we're doing this.
124
+ * InputMask mask prop format: https://github.com/sanniassin/react-input-mask
174
125
  */
175
126
  const mask = dateFormat.replace(/[MmDdYyo]/g, '9');
176
- const realError = error || getMaskError() || getValueError();
177
127
  const realPlaceholder = placeholder || mask.replace(/9/g, maskChar);
178
- const classes = classnames('InputDateMask', className, {
179
- 'InputDateMask--error': realError,
180
- });
181
- return (React.createElement(InputMask, Object.assign({}, props, { mask: mask, disabled: disabled, maskChar: maskChar, onChange: handleChange, onKeyDown: handleKeyDown, onBlur: handleBlur, beforeMaskedValueChange: handleBeforeMaskedValueChange, alwaysShowMask: alwaysShowMask, value: maskValue }), (props) => (React.createElement(Input, Object.assign({}, props, { inputRef: inputRef, shortLabel: shortLabel, className: classes, size: size, fluid: true, error: realError, disabled: disabled, placeholder: realPlaceholder, tabIndex: tabIndex })))));
128
+ return (React.createElement(InputMask, Object.assign({}, rest, { mask: mask, disabled: disabled, maskChar: maskChar, onChange: handleMaskChange, onKeyDown: handleMaskKeyDown, onBlur: handleMaskBlur, beforeMaskedValueChange: handleBeforeMaskChange, alwaysShowMask: alwaysShowMask, value: entry }), (props) => (React.createElement(Input, Object.assign({}, props, { inputRef: inputRef, shortLabel: shortLabel, className: classnames('InputDateMask', className), size: size, fluid: true, error: error ||
129
+ (required && requiredError) ||
130
+ invalidEntryError ||
131
+ ((min || max) && rangeError), disabled: disabled, placeholder: realPlaceholder, tabIndex: tabIndex })))));
182
132
  };
183
133
  //# sourceMappingURL=InputDateMask.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputDateMask.js","sourceRoot":"","sources":["../../../src/components/DatePicker/InputDateMask.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InputDateMask.js","sourceRoot":"","sources":["../../../src/components/DatePicker/InputDateMask.tsx"],"names":[],"mappings":"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"}
@@ -437,15 +437,6 @@ span.Popover {
437
437
  cursor: pointer;
438
438
  }
439
439
 
440
- .DatePicker--open .InputDateMask:not(:focus) > .Input__InnerWrapper {
441
- background-color: var(--colorsSurfaceDefault, #ffffff);
442
- border-color: var(--colorsBorderPrimary, #2270ee);
443
- }
444
- .DatePicker--open .InputDateMask--error:not(:focus) > .Input__InnerWrapper {
445
- background-color: var(--colorsSurfaceCriticalSubdued, #ffece9);
446
- border-color: var(--colorsBorderCritical, #e13212);
447
- }
448
-
449
440
  .DatePicker--disabled {
450
441
  opacity: 0.6;
451
442
  pointer-events: none;
@@ -454,6 +445,15 @@ span.Popover {
454
445
  opacity: 1;
455
446
  }
456
447
 
448
+ .DatePicker--open .Input:not(:focus) > .Input__InnerWrapper {
449
+ background-color: var(--colorsSurfaceDefault, #ffffff);
450
+ border-color: var(--colorsBorderPrimary, #2270ee);
451
+ }
452
+ .DatePicker--open .Input.Input--error:not(:focus) > .Input__InnerWrapper {
453
+ background-color: var(--colorsSurfaceCriticalSubdued, #ffece9);
454
+ border-color: var(--colorsBorderCritical, #e13212);
455
+ }
456
+
457
457
  /* Kendo calendar styles */
458
458
  .DatePicker__calendar {
459
459
  /* Set color on root of component. It can be overridden after the @include */
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../../src/utilities/_visually-hidden.scss","../../../src/components/Form/Form.scss","../../../src/components/Checkbox/Checkbox.scss","../../../src/utilities/_component-reset.scss","../../../node_modules/@servicetitan/tokens/core/tokens.scss","../../../src/components/Popover/Popover.scss","../../../src/themes/kendo/_kendo-variables.scss","../../../src/components/DatePicker/DatePicker.scss"],"names":[],"mappings":"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","file":"index.css"}
1
+ {"version":3,"sourceRoot":"","sources":["../../../src/utilities/_visually-hidden.scss","../../../src/components/Form/Form.scss","../../../src/components/Checkbox/Checkbox.scss","../../../src/utilities/_component-reset.scss","../../../node_modules/@servicetitan/tokens/core/tokens.scss","../../../src/components/Popover/Popover.scss","../../../src/themes/kendo/_kendo-variables.scss","../../../src/components/DatePicker/DatePicker.scss"],"names":[],"mappings":"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","file":"index.css"}
@@ -18,3 +18,4 @@ export declare const findMaskFieldBoundariesAtPosition: (mask: string, cursorPos
18
18
  export declare const getValueAtIndex: (mask: string, index: number, config?: Partial<IMaskPartConfig>) => string | null;
19
19
  export declare function setValueAtIndex(mask: string, index: number, value: string | number, config?: Partial<IMaskPartConfig>): string;
20
20
  export declare function expandValueAtIndex(mask: string, index: number, config?: Partial<IMaskPartConfig>): string;
21
+ export declare const expandMaskValue: (mask: string, cursorPosition: number) => string;
@@ -2,6 +2,7 @@ const defaultConfig = {
2
2
  maskChar: '_',
3
3
  allowedChars: /^[\d]$/,
4
4
  };
5
+ const round = (year, to = 100) => year - (year % to);
5
6
  /**
6
7
  * Find boundaries of mask field in specified cursor position.
7
8
  *
@@ -60,4 +61,36 @@ export function setValueAtIndex(mask, index, value, config = {}) {
60
61
  export function expandValueAtIndex(mask, index, config = {}) {
61
62
  return setValueAtIndex(mask, index, getValueAtIndex(mask, index, config), config);
62
63
  }
63
- //# sourceMappingURL=maskUtils.js.map
64
+ export const expandMaskValue = (mask, cursorPosition) => {
65
+ let value = mask;
66
+ const parsedValue = parseInt(getValueAtIndex(mask, cursorPosition), 10);
67
+ if (!parsedValue)
68
+ return value;
69
+ const [startIndex, endIndex] = findMaskFieldBoundariesAtPosition(mask, cursorPosition);
70
+ const desiredMaskLength = endIndex - startIndex;
71
+ if (desiredMaskLength === 4) {
72
+ // End early if full year already exists
73
+ if (parsedValue.toString().length === 4)
74
+ return value;
75
+ /**
76
+ * auto fills year if value is between the beginning of century
77
+ * and 5 years ahead
78
+ *
79
+ * @todo: Change year calculations to use current year for all non-existant values
80
+ * E.g. 7 -> 2027, 20 -> 2020, 181 -> 2181, assuming current year is 2021
81
+ */
82
+ const currentYear = new Date().getFullYear();
83
+ const beginningOfCentury = round(currentYear, 100);
84
+ const yearsFromBeginningOfCentury = currentYear - beginningOfCentury + 5;
85
+ let year = parsedValue + beginningOfCentury;
86
+ if (parsedValue > yearsFromBeginningOfCentury) {
87
+ year -= parsedValue >= 100 ? 1000 : 100;
88
+ }
89
+ value = setValueAtIndex(mask, cursorPosition, year);
90
+ }
91
+ else {
92
+ value = expandValueAtIndex(mask, cursorPosition);
93
+ }
94
+ return value;
95
+ };
96
+ //# sourceMappingURL=expandMaskUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expandMaskUtils.js","sourceRoot":"","sources":["../../../../src/components/DatePicker/utils/expandMaskUtils.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { findMaskFieldBoundariesAtPosition, getValueAtIndex, setValueAtIndex, expandValueAtIndex, } from './maskUtils';
1
+ import { findMaskFieldBoundariesAtPosition, getValueAtIndex, setValueAtIndex, expandValueAtIndex, } from './expandMaskUtils';
2
2
  describe('findMaskFieldBoundariesAtPosition', () => {
3
3
  describe('on empty mask', function () {
4
4
  const mask = '__/__//____'; // note: second slash is here intentionally
@@ -209,4 +209,4 @@ describe('expandValueAtIndex', function () {
209
209
  });
210
210
  });
211
211
  });
212
- //# sourceMappingURL=maskUtils.test.js.map
212
+ //# sourceMappingURL=expandMaskUtils.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expandMaskUtils.test.js","sourceRoot":"","sources":["../../../../src/components/DatePicker/utils/expandMaskUtils.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export declare const formatDate: (date?: Date, dateFormat?: string) => string;
2
+ export declare const parseEntry: (str: string, dateFormat: string, maskChar: string, min: Date, max: Date, required: boolean) => {
3
+ date: Date;
4
+ isValid: boolean;
5
+ isEmpty: boolean;
6
+ isFull: boolean;
7
+ isOutRange: boolean;
8
+ invalidReason: string;
9
+ };
10
+ export declare const isDateInRange: (date: Date, minDate: Date, maxDate: Date) => boolean;
11
+ export declare const getNode: (ref: any) => any;
12
+ export declare const isFocusInsideDatePicker: (inputRef: any, calendareRef: any, e: React.FocusEvent<any>) => any;
@@ -0,0 +1,74 @@
1
+ import moment from 'moment';
2
+ import { defaultFormat, defaultMaskChar } from '../InputDateMask';
3
+ import { invalidDate } from './utils';
4
+ export const formatDate = (date, dateFormat = defaultFormat) => {
5
+ return date ? moment(date).format(dateFormat) : '';
6
+ };
7
+ const hasDigits = (str) => str ? /\d/.test(str === null || str === void 0 ? void 0 : str.toString()) : false;
8
+ const isFull = (mask, maskChar = defaultMaskChar) => {
9
+ if (!mask || (mask === null || mask === void 0 ? void 0 : mask.length) < 1 || isEmpty(mask))
10
+ return false;
11
+ return !mask.includes(maskChar);
12
+ };
13
+ const isEmpty = (mask) => !hasDigits(mask);
14
+ export const parseEntry = (str, dateFormat, maskChar, min, max, required) => {
15
+ const empty = isEmpty(str);
16
+ const full = isFull(str, maskChar);
17
+ const parsed = moment(str, dateFormat);
18
+ const valid = full && parsed.isValid();
19
+ let invalidReason;
20
+ let date = empty
21
+ ? undefined
22
+ : full && valid
23
+ ? parsed.toDate()
24
+ : invalidDate;
25
+ const outRange = valid && !isDateInRange(date, min, max);
26
+ if (empty)
27
+ invalidReason = `no entry${required ? ' (required)' : ''}`;
28
+ if (!valid && !empty)
29
+ invalidReason = `unable to parse entry: ${str}`;
30
+ if (outRange) {
31
+ date = invalidDate;
32
+ invalidReason = `date ${str} is out of min-max range: ${min ? formatDate(min, dateFormat) : '...'} - ${max ? formatDate(max, dateFormat) : '...'}`;
33
+ }
34
+ return {
35
+ date,
36
+ isValid: valid,
37
+ isEmpty: empty,
38
+ isFull: full,
39
+ isOutRange: outRange,
40
+ invalidReason,
41
+ };
42
+ };
43
+ export const isDateInRange = (date, minDate, maxDate) => {
44
+ const sameDay = (d1, d2) => d1.toDateString() === d2.toDateString();
45
+ if (!date)
46
+ return true; // undefined and Invalid Date are in range
47
+ if (minDate && maxDate) {
48
+ return ((date >= minDate || sameDay(date, minDate)) &&
49
+ (date <= maxDate || sameDay(date, maxDate)));
50
+ }
51
+ else if (minDate) {
52
+ return date >= minDate || sameDay(date, minDate);
53
+ }
54
+ else if (maxDate) {
55
+ return date <= maxDate || sameDay(date, maxDate);
56
+ }
57
+ return true;
58
+ };
59
+ export const getNode = (ref) => {
60
+ var _a, _b, _c;
61
+ if ((_b = (_a = ref.current) === null || _a === void 0 ? void 0 : _a.inputRef) === null || _b === void 0 ? void 0 : _b.current)
62
+ return ref.current.inputRef.current; // Input component
63
+ if ((_c = ref.current) === null || _c === void 0 ? void 0 : _c._element)
64
+ return ref.current._element; // Kendo calrndar
65
+ return ref.current; // Something else
66
+ };
67
+ export const isFocusInsideDatePicker = (inputRef, calendareRef, e) => {
68
+ var _a;
69
+ const input = (_a = getNode(inputRef)) === null || _a === void 0 ? void 0 : _a.closest('[data-anvil-component=DatePicker]');
70
+ const cal = getNode(calendareRef);
71
+ const active = e.relatedTarget || (document === null || document === void 0 ? void 0 : document.activeElement);
72
+ return (input === null || input === void 0 ? void 0 : input.contains(active)) || (cal === null || cal === void 0 ? void 0 : cal.contains(active));
73
+ };
74
+ //# sourceMappingURL=maskUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maskUtils.js","sourceRoot":"","sources":["../../../../src/components/DatePicker/utils/maskUtils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { DateTime } from 'luxon';
2
+ export declare const invalidDate: Date;
3
+ export declare const isInvalidDate: (d: Date | undefined) => boolean;
4
+ export declare const isValidDate: (date: Date) => boolean;
5
+ export interface DateObj {
6
+ dateTime: DateTime | undefined;
7
+ timezone: string;
8
+ isValid: boolean;
9
+ invalidReason?: string;
10
+ toISO?: () => string;
11
+ toJSDate?: () => Date;
12
+ isEqualDate?: (obj: DateObj) => boolean;
13
+ isEqual?: (obj: DateObj) => boolean;
14
+ }
15
+ interface ToDateObj {
16
+ date: Date | DateTime | string | undefined;
17
+ tz?: string;
18
+ isValid?: boolean;
19
+ invalidReason?: string;
20
+ }
21
+ export declare const toDateObj: ({ date, tz, isValid, invalidReason, ...rest }: ToDateObj) => DateObj;
22
+ export declare const toDateTime: (value: Date | DateTime | string | undefined, tz?: string) => DateTime | null;
23
+ export declare const toFormat: (date: any, format?: string) => any;
24
+ export declare const toTimeZone: (date: Date, tz?: string, opts?: any) => Date;
25
+ export declare const fromTimeZone: (date: Date, tz: string) => Date;
26
+ export declare const compareObj: (value?: Date | string) => string | number;
27
+ export {};