etr2460 commented on a change in pull request #17361:
URL: https://github.com/apache/superset/pull/17361#discussion_r750480844



##########
File path: superset-frontend/src/visualizations/TimeTable/FormattedNumber.tsx
##########
@@ -17,27 +17,23 @@
  * under the License.
  */
 import React from 'react';
-import PropTypes from 'prop-types';
 import { formatNumber } from '@superset-ui/core';
 
-const propTypes = {
-  num: PropTypes.number,
-  format: PropTypes.string,
-};
-
-const defaultProps = {
-  num: 0,
-  format: undefined,
-};
+interface FormattedNumberProps {
+  num?: string | number;
+  format?: string;
+}
 
-function FormattedNumber({ num, format }) {
+function FormattedNumber({
+  num = 0,
+  format = undefined,
+}: FormattedNumberProps) {
   if (format) {
-    return <span title={num}>{formatNumber(format, num)}</span>;
+    return (
+      <span title={num as string}>{formatNumber(format, num as number)}</span>

Review comment:
       @michael-s-molina @Damans227 so this uses d3-format under the hood, 
which is untyped, but as far as i can tell does support strings (see where it 
converts it here):
   https://github.com/d3/d3-format/blob/main/src/locale.js#L74
   
   But more importantly than that, before we allowed all strings through here, 
so i don't think adding a `parseInt` is correct since that could change the 
behavior. coercing the type with an `as number` also doesn't feel right since 
we don't know it's a number. That's why i recommended the options above




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to