From 66e6de9be92d0f74cb90d77ef5d82558cb490b0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C2=A0Ja=CC=81n=20Mikla=CC=81s=CC=8C?= Date: Mon, 17 Jun 2024 18:03:05 +0200 Subject: [PATCH] Refactor tasks-list to TypeScript [MAILPOET-5755] --- .../js/src/help/tasks-list/tasks-list.jsx | 54 ------------------- .../js/src/help/tasks-list/tasks-list.tsx | 54 +++++++++++++++++++ 2 files changed, 54 insertions(+), 54 deletions(-) delete mode 100644 mailpoet/assets/js/src/help/tasks-list/tasks-list.jsx create mode 100644 mailpoet/assets/js/src/help/tasks-list/tasks-list.tsx diff --git a/mailpoet/assets/js/src/help/tasks-list/tasks-list.jsx b/mailpoet/assets/js/src/help/tasks-list/tasks-list.jsx deleted file mode 100644 index f4871ff967..0000000000 --- a/mailpoet/assets/js/src/help/tasks-list/tasks-list.jsx +++ /dev/null @@ -1,54 +0,0 @@ -import PropTypes from 'prop-types'; -import { MailPoet } from 'mailpoet'; -import { TasksListDataRow } from './tasks-list-data-row.jsx'; -import { TasksListLabelsRow } from './tasks-list-labels-row.jsx'; - -function TasksList(props) { - const colsCount = props.show_scheduled_at || props.show_cancelled_at ? 7 : 5; - - return ( - - - - - - {props.tasks.length ? ( - props.tasks.map((task) => ( - - )) - ) : ( - - - - )} - - - - -
{MailPoet.I18n.t('nothingToShow')}
- ); -} - -TasksList.propTypes = { - show_scheduled_at: PropTypes.bool, - show_cancelled_at: PropTypes.bool, - tasks: PropTypes.arrayOf(TasksListDataRow.propTypes.task).isRequired, -}; - -TasksList.defaultProps = { - show_scheduled_at: false, - show_cancelled_at: false, -}; - -export { TasksList }; diff --git a/mailpoet/assets/js/src/help/tasks-list/tasks-list.tsx b/mailpoet/assets/js/src/help/tasks-list/tasks-list.tsx new file mode 100644 index 0000000000..1894323c0f --- /dev/null +++ b/mailpoet/assets/js/src/help/tasks-list/tasks-list.tsx @@ -0,0 +1,54 @@ +import { MailPoet } from 'mailpoet'; +import { + TasksListDataRow, + Props as TasksListLabelsRowProps, +} from './tasks-list-data-row'; +import { TasksListLabelsRow } from './tasks-list-labels-row'; + +type Props = { + showScheduledAt?: boolean; + showCancelledAt?: boolean; + tasks: TasksListLabelsRowProps['task'][]; +}; +function TasksList({ + showScheduledAt = false, + showCancelledAt = false, + tasks, +}: Props): JSX.Element { + const colsCount = showScheduledAt || showCancelledAt ? 7 : 5; + + return ( + + + + + + {tasks.length ? ( + tasks.map((task) => ( + + )) + ) : ( + + + + )} + + + + +
{MailPoet.I18n.t('nothingToShow')}
+ ); +} + +export { TasksList };