11import { nativeIsNaN } from './number-utils' ;
2+ import { logVerbose } from './log-utils' ;
23
34/**
45 * Sets item to a specified storage, if storage isn't full.
@@ -23,13 +24,14 @@ export const setStorageItem = (storage, key, value, shouldLog) => {
2324/**
2425 * Gets supported storage item value
2526 * @param {string } value input item value
27+ * @param {boolean } verbose if logging invalid values is required
2628 * @returns {string|null|undefined|boolean } valid item value if ok OR null if not
2729 */
28- export const getLimitedStorageItemValue = ( value ) => {
30+ export const getLimitedStorageItemValue = ( value , verbose ) => {
2931 if ( ! value ) {
3032 return null ;
3133 }
32- const log = console . log . bind ( console ) ; // eslint-disable-line no-console
34+
3335 let validValue ;
3436 if ( value === 'undefined' ) {
3537 validValue = undefined ;
@@ -48,11 +50,11 @@ export const getLimitedStorageItemValue = (value) => {
4850 } else if ( / ^ \d + $ / . test ( value ) ) {
4951 validValue = parseFloat ( value ) ;
5052 if ( nativeIsNaN ( validValue ) ) {
51- log ( `Invalid storage item value: '${ value } '` ) ;
53+ logVerbose ( `Invalid storage item value: '${ value } '` , verbose ) ;
5254 return null ;
5355 }
5456 if ( Math . abs ( validValue ) > 0x7FFF ) {
55- log ( `Invalid storage item value: '${ value } '` ) ;
57+ logVerbose ( `Invalid storage item value: '${ value } '` , verbose ) ;
5658 return null ;
5759 }
5860 } else if ( value === 'yes' ) {
0 commit comments