From daff9b46730728810f17a39468a83921c91030b2 Mon Sep 17 00:00:00 2001
From: Daman Arora <61474540+Damans227@users.noreply.github.com>
Date: Mon, 22 Nov 2021 16:42:37 -0500
Subject: [PATCH] chore: migrate FormattedNumber component from jsx to tsx
(#17361)
* migrate FormattedNumber component from jsx to tsx
* Unset default prop on format
* undo asserting and overriding the type for num
* Add a ts comment to ignore error
---
...ormattedNumber.jsx => FormattedNumber.tsx} | 22 ++++++-------------
1 file changed, 7 insertions(+), 15 deletions(-)
rename superset-frontend/src/visualizations/TimeTable/{FormattedNumber.jsx => FormattedNumber.tsx} (72%)
diff --git a/superset-frontend/src/visualizations/TimeTable/FormattedNumber.jsx b/superset-frontend/src/visualizations/TimeTable/FormattedNumber.tsx
similarity index 72%
rename from superset-frontend/src/visualizations/TimeTable/FormattedNumber.jsx
rename to superset-frontend/src/visualizations/TimeTable/FormattedNumber.tsx
index c6564d8a616a3..6a859e60c31f2 100644
--- a/superset-frontend/src/visualizations/TimeTable/FormattedNumber.jsx
+++ b/superset-frontend/src/visualizations/TimeTable/FormattedNumber.tsx
@@ -17,27 +17,19 @@
* 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 }: FormattedNumberProps) {
if (format) {
- return {formatNumber(format, num)};
+ // @ts-expect-error formatNumber can actually accept strings, even though it's not typed as such
+ return {formatNumber(format, num)};
}
return {num};
}
-FormattedNumber.propTypes = propTypes;
-FormattedNumber.defaultProps = defaultProps;
-
export default FormattedNumber;