@bbl-digital/snorre 3.0.61 → 3.0.63
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.
package/dist/bundle.js
CHANGED
|
@@ -30662,7 +30662,10 @@
|
|
|
30662
30662
|
*/
|
|
30663
30663
|
|
|
30664
30664
|
const validateTimeAndCursor = (showSeconds = false, value = '', defaultValue = '', divider = DEFAULT_DIVIDER, cursorPosition = 0) => {
|
|
30665
|
-
const
|
|
30665
|
+
const _default = defaultValue.replaceAll('-', '0');
|
|
30666
|
+
|
|
30667
|
+
const [oldHH, oldMM, oldSS] = _default.split(divider);
|
|
30668
|
+
|
|
30666
30669
|
let newCursorPosition = Number(cursorPosition);
|
|
30667
30670
|
let [HH, MM, SS] = String(value).split(divider);
|
|
30668
30671
|
HH = formatTimeItem(HH);
|
|
@@ -30806,14 +30809,13 @@
|
|
|
30806
30809
|
|
|
30807
30810
|
const _isDate = type === 'date';
|
|
30808
30811
|
|
|
30809
|
-
let valueToUse = _isDate ? handleDateToStringConvertion(value, showSeconds) : value;
|
|
30812
|
+
let valueToUse = isNull ? _defaultNullableValue : _isDate ? handleDateToStringConvertion(value, showSeconds) : value;
|
|
30810
30813
|
const [validatedTime] = validateTimeAndCursor(showSeconds, valueToUse, _defaultValue, _divider);
|
|
30811
30814
|
const [inputStateValue, setInputStateValue] = React.useState(validatedTime); // Loads of logic to handle string input with divider
|
|
30812
30815
|
|
|
30813
30816
|
const onInputChange = async (event, callback) => {
|
|
30814
|
-
const _maxLength = _defaultValue.length;
|
|
30815
|
-
|
|
30816
|
-
const inputValue = event.target.value.replace(_defaultNullableValue, _defaultFilledValue);
|
|
30817
|
+
const _maxLength = _defaultValue.length;
|
|
30818
|
+
const inputValue = event.target.value;
|
|
30817
30819
|
const position = event.target.selectionEnd || 0;
|
|
30818
30820
|
const isTyped = inputValue.length > inputStateValue.length;
|
|
30819
30821
|
const cursorCharacter = inputValue[position - 1];
|
|
@@ -30871,7 +30873,8 @@
|
|
|
30871
30873
|
}
|
|
30872
30874
|
}
|
|
30873
30875
|
|
|
30874
|
-
const [validatedTime, validatedCursorPosition] = validateTimeAndCursor(showSeconds, updatedValue, inputStateValue, _divider, currentPosition);
|
|
30876
|
+
const [validatedTime, validatedCursorPosition] = validateTimeAndCursor(showSeconds, updatedValue, inputStateValue, _divider, currentPosition);
|
|
30877
|
+
console.log(validatedTime, validatedCursorPosition); // Needs to be awaited, for it to work
|
|
30875
30878
|
|
|
30876
30879
|
await setInputStateValue(validatedTime);
|
|
30877
30880
|
event.target.selectionStart = validatedCursorPosition;
|
|
@@ -30889,8 +30892,10 @@
|
|
|
30889
30892
|
children: [label && jsxRuntime$1.jsx(Label$1, {
|
|
30890
30893
|
children: label
|
|
30891
30894
|
}), jsxRuntime$1.jsx("input", {
|
|
30895
|
+
"data-testid": "snorre-timepicker-input",
|
|
30892
30896
|
type: "text",
|
|
30893
|
-
value: isNull ?
|
|
30897
|
+
value: isNull ? undefined : inputStateValue,
|
|
30898
|
+
placeholder: _defaultNullableValue,
|
|
30894
30899
|
disabled: disabled,
|
|
30895
30900
|
autoFocus: autoFocus,
|
|
30896
30901
|
css: theme => [css && css, disabled && styles$7.disabled(theme), isNull && styles$7.nullable],
|
|
@@ -36,14 +36,13 @@ const TimePicker = ({
|
|
|
36
36
|
|
|
37
37
|
const _isDate = type === 'date';
|
|
38
38
|
|
|
39
|
-
let valueToUse = _isDate ? handleDateToStringConvertion(value, showSeconds) : value;
|
|
39
|
+
let valueToUse = isNull ? _defaultNullableValue : _isDate ? handleDateToStringConvertion(value, showSeconds) : value;
|
|
40
40
|
const [validatedTime] = validateTimeAndCursor(showSeconds, valueToUse, _defaultValue, _divider);
|
|
41
41
|
const [inputStateValue, setInputStateValue] = useState(validatedTime); // Loads of logic to handle string input with divider
|
|
42
42
|
|
|
43
43
|
const onInputChange = async (event, callback) => {
|
|
44
|
-
const _maxLength = _defaultValue.length;
|
|
45
|
-
|
|
46
|
-
const inputValue = event.target.value.replace(_defaultNullableValue, _defaultFilledValue);
|
|
44
|
+
const _maxLength = _defaultValue.length;
|
|
45
|
+
const inputValue = event.target.value;
|
|
47
46
|
const position = event.target.selectionEnd || 0;
|
|
48
47
|
const isTyped = inputValue.length > inputStateValue.length;
|
|
49
48
|
const cursorCharacter = inputValue[position - 1];
|
|
@@ -101,7 +100,8 @@ const TimePicker = ({
|
|
|
101
100
|
}
|
|
102
101
|
}
|
|
103
102
|
|
|
104
|
-
const [validatedTime, validatedCursorPosition] = validateTimeAndCursor(showSeconds, updatedValue, inputStateValue, _divider, currentPosition);
|
|
103
|
+
const [validatedTime, validatedCursorPosition] = validateTimeAndCursor(showSeconds, updatedValue, inputStateValue, _divider, currentPosition);
|
|
104
|
+
console.log(validatedTime, validatedCursorPosition); // Needs to be awaited, for it to work
|
|
105
105
|
|
|
106
106
|
await setInputStateValue(validatedTime);
|
|
107
107
|
event.target.selectionStart = validatedCursorPosition;
|
|
@@ -119,8 +119,10 @@ const TimePicker = ({
|
|
|
119
119
|
children: [label && _jsx(Label, {
|
|
120
120
|
children: label
|
|
121
121
|
}), _jsx("input", {
|
|
122
|
+
"data-testid": "snorre-timepicker-input",
|
|
122
123
|
type: "text",
|
|
123
|
-
value: isNull ?
|
|
124
|
+
value: isNull ? undefined : inputStateValue,
|
|
125
|
+
placeholder: _defaultNullableValue,
|
|
124
126
|
disabled: disabled,
|
|
125
127
|
autoFocus: autoFocus,
|
|
126
128
|
css: theme => [css && css, disabled && styles.disabled(theme), isNull && styles.nullable],
|
package/esm/utils/time.js
CHANGED
|
@@ -24,7 +24,10 @@ export function isNumber(value) {
|
|
|
24
24
|
*/
|
|
25
25
|
|
|
26
26
|
export const validateTimeAndCursor = (showSeconds = false, value = '', defaultValue = '', divider = DEFAULT_DIVIDER, cursorPosition = 0) => {
|
|
27
|
-
const
|
|
27
|
+
const _default = defaultValue.replaceAll('-', '0');
|
|
28
|
+
|
|
29
|
+
const [oldHH, oldMM, oldSS] = _default.split(divider);
|
|
30
|
+
|
|
28
31
|
let newCursorPosition = Number(cursorPosition);
|
|
29
32
|
let [HH, MM, SS] = String(value).split(divider);
|
|
30
33
|
HH = formatTimeItem(HH);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/packages/core/Timepicker/index.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,KAAgC,MAAM,OAAO,CAAA;AAepD,aAAK,YAAY,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;AAElD,UAAU,MAAM;IACd,kBAAkB;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qBAAqB;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAA;IAC3B,6CAA6C;IAC7C,QAAQ,EAAE,YAAY,CAAA;IACtB,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IACnB,0CAA0C;IAC1C,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;IACxB,wCAAwC;IACxC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,uEAAuE;IACvE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,+FAA+F;IAC/F,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gBAAgB;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,qCAAqC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,+BAA+B;IAC/B,GAAG,CAAC,EAAE,gBAAgB,CAAA;IACtB,0BAA0B;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,sBAAsB;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/packages/core/Timepicker/index.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,KAAgC,MAAM,OAAO,CAAA;AAepD,aAAK,YAAY,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;AAElD,UAAU,MAAM;IACd,kBAAkB;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qBAAqB;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAA;IAC3B,6CAA6C;IAC7C,QAAQ,EAAE,YAAY,CAAA;IACtB,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IACnB,0CAA0C;IAC1C,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;IACxB,wCAAwC;IACxC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,uEAAuE;IACvE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,+FAA+F;IAC/F,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gBAAgB;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,qCAAqC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,+BAA+B;IAC/B,GAAG,CAAC,EAAE,gBAAgB,CAAA;IACtB,0BAA0B;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,sBAAsB;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CA6MhC,CAAA;AAED,eAAe,UAAU,CAAA"}
|
|
@@ -36,14 +36,13 @@ const TimePicker = ({
|
|
|
36
36
|
|
|
37
37
|
const _isDate = type === 'date';
|
|
38
38
|
|
|
39
|
-
let valueToUse = _isDate ? handleDateToStringConvertion(value, showSeconds) : value;
|
|
39
|
+
let valueToUse = isNull ? _defaultNullableValue : _isDate ? handleDateToStringConvertion(value, showSeconds) : value;
|
|
40
40
|
const [validatedTime] = validateTimeAndCursor(showSeconds, valueToUse, _defaultValue, _divider);
|
|
41
41
|
const [inputStateValue, setInputStateValue] = useState(validatedTime); // Loads of logic to handle string input with divider
|
|
42
42
|
|
|
43
43
|
const onInputChange = async (event, callback) => {
|
|
44
|
-
const _maxLength = _defaultValue.length;
|
|
45
|
-
|
|
46
|
-
const inputValue = event.target.value.replace(_defaultNullableValue, _defaultFilledValue);
|
|
44
|
+
const _maxLength = _defaultValue.length;
|
|
45
|
+
const inputValue = event.target.value;
|
|
47
46
|
const position = event.target.selectionEnd || 0;
|
|
48
47
|
const isTyped = inputValue.length > inputStateValue.length;
|
|
49
48
|
const cursorCharacter = inputValue[position - 1];
|
|
@@ -101,7 +100,8 @@ const TimePicker = ({
|
|
|
101
100
|
}
|
|
102
101
|
}
|
|
103
102
|
|
|
104
|
-
const [validatedTime, validatedCursorPosition] = validateTimeAndCursor(showSeconds, updatedValue, inputStateValue, _divider, currentPosition);
|
|
103
|
+
const [validatedTime, validatedCursorPosition] = validateTimeAndCursor(showSeconds, updatedValue, inputStateValue, _divider, currentPosition);
|
|
104
|
+
console.log(validatedTime, validatedCursorPosition); // Needs to be awaited, for it to work
|
|
105
105
|
|
|
106
106
|
await setInputStateValue(validatedTime);
|
|
107
107
|
event.target.selectionStart = validatedCursorPosition;
|
|
@@ -119,8 +119,10 @@ const TimePicker = ({
|
|
|
119
119
|
children: [label && _jsx(Label, {
|
|
120
120
|
children: label
|
|
121
121
|
}), _jsx("input", {
|
|
122
|
+
"data-testid": "snorre-timepicker-input",
|
|
122
123
|
type: "text",
|
|
123
|
-
value: isNull ?
|
|
124
|
+
value: isNull ? undefined : inputStateValue,
|
|
125
|
+
placeholder: _defaultNullableValue,
|
|
124
126
|
disabled: disabled,
|
|
125
127
|
autoFocus: autoFocus,
|
|
126
128
|
css: theme => [css && css, disabled && styles.disabled(theme), isNull && styles.nullable],
|
package/lib/utils/time.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../../src/packages/utils/time.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,MAAM,CAAA;AAClC,eAAO,MAAM,mBAAmB,QAA2B,CAAA;AAC3D,eAAO,MAAM,4BAA4B,QAA2B,CAAA;AACpE,eAAO,MAAM,kBAAkB,QAA+C,CAAA;AAC9E,eAAO,MAAM,2BAA2B,QAA+C,CAAA;AAMvF;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAG7C;AAED;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,+GAM/B,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../../src/packages/utils/time.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,MAAM,CAAA;AAClC,eAAO,MAAM,mBAAmB,QAA2B,CAAA;AAC3D,eAAO,MAAM,4BAA4B,QAA2B,CAAA;AACpE,eAAO,MAAM,kBAAkB,QAA+C,CAAA;AAC9E,eAAO,MAAM,2BAA2B,QAA+C,CAAA;AAMvF;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAG7C;AAED;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,+GAM/B,CAAC,MAAM,EAAE,MAAM,CAyCjB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,4BAA4B,SACjC,IAAI,wCAET,MAUF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,UAChC,MAAM,sCAEZ,IASF,CAAA"}
|
package/lib/utils/time.js
CHANGED
|
@@ -24,7 +24,10 @@ export function isNumber(value) {
|
|
|
24
24
|
*/
|
|
25
25
|
|
|
26
26
|
export const validateTimeAndCursor = (showSeconds = false, value = '', defaultValue = '', divider = DEFAULT_DIVIDER, cursorPosition = 0) => {
|
|
27
|
-
const
|
|
27
|
+
const _default = defaultValue.replaceAll('-', '0');
|
|
28
|
+
|
|
29
|
+
const [oldHH, oldMM, oldSS] = _default.split(divider);
|
|
30
|
+
|
|
28
31
|
let newCursorPosition = Number(cursorPosition);
|
|
29
32
|
let [HH, MM, SS] = String(value).split(divider);
|
|
30
33
|
HH = formatTimeItem(HH);
|