diff --git a/app/soapbox/features/compose/components/schedule_button.js b/app/soapbox/features/compose/components/schedule_button.js
deleted file mode 100644
index 484174355..000000000
--- a/app/soapbox/features/compose/components/schedule_button.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import PropTypes from 'prop-types';
-import React from 'react';
-import { defineMessages, injectIntl } from 'react-intl';
-
-import ComposeFormButton from './compose_form_button';
-
-const messages = defineMessages({
- add_schedule: { id: 'schedule_button.add_schedule', defaultMessage: 'Schedule post for later' },
- remove_schedule: { id: 'schedule_button.remove_schedule', defaultMessage: 'Post immediately' },
-});
-
-export default
-@injectIntl
-class ScheduleButton extends React.PureComponent {
-
- static propTypes = {
- disabled: PropTypes.bool,
- active: PropTypes.bool,
- unavailable: PropTypes.bool,
- onClick: PropTypes.func.isRequired,
- intl: PropTypes.object.isRequired,
- };
-
- handleClick = () => {
- this.props.onClick();
- }
-
- render() {
- const { intl, active, unavailable, disabled } = this.props;
-
- if (unavailable) {
- return null;
- }
-
- return (
-
- );
- }
-
-}
diff --git a/app/soapbox/features/compose/components/schedule_button.tsx b/app/soapbox/features/compose/components/schedule_button.tsx
new file mode 100644
index 000000000..8d1509884
--- /dev/null
+++ b/app/soapbox/features/compose/components/schedule_button.tsx
@@ -0,0 +1,40 @@
+import React from 'react';
+import { defineMessages, useIntl } from 'react-intl';
+
+import ComposeFormButton from './compose_form_button';
+
+const messages = defineMessages({
+ add_schedule: { id: 'schedule_button.add_schedule', defaultMessage: 'Schedule post for later' },
+ remove_schedule: { id: 'schedule_button.remove_schedule', defaultMessage: 'Post immediately' },
+});
+
+interface IScheduleButton {
+ disabled: boolean,
+ active: boolean,
+ unavailable: boolean,
+ onClick: () => void,
+}
+
+const ScheduleButton: React.FC = ({ active, unavailable, disabled, onClick }) => {
+ const intl = useIntl();
+
+ const handleClick = () => {
+ onClick();
+ };
+
+ if (unavailable) {
+ return null;
+ }
+
+ return (
+
+ );
+};
+
+export default ScheduleButton;