@equinor/eds-data-grid-react
Version:
A feature-rich data-grid written in React, implementing the Equinor Design System
41 lines (39 loc) • 1.09 kB
JavaScript
/**
* Function returning wether a string only contains number. Allows leading or trailing spaces.
*
* Examples:
*
* ```
* isNumberOnlyString("10") // true
* isNumberOnlyString("10.10") // true
* isNumberOnlyString("10px") // false
* isNumberOnlyString("10%") // false
* isNumberOnlyString("10 ") // true
* ```
*
* @param number
* @returns
*/
function isNumberOnlyString(number) {
return !isNaN(Number(number)) && !isNaN(parseFloat(number));
}
function addPxSuffixIfInputHasNoPrefix(size) {
if (typeof size === 'number' || isNumberOnlyString(size)) {
return `${size}px`;
}
return size;
}
function logDevelopmentWarningOfPropUse(deprecatedProps) {
if (process.env.NODE_ENV !== 'development') {
return;
}
for (const [key, {
value,
mitigationInfo
}] of Object.entries(deprecatedProps)) {
if (typeof value !== 'undefined') {
console.warn(`The prop '${key}' is deprecated and will be removed in a future release. ${mitigationInfo}`);
}
}
}
export { addPxSuffixIfInputHasNoPrefix, isNumberOnlyString, logDevelopmentWarningOfPropUse };