Changed hooks for TriggerCronJob

This commit is contained in:
Fernando Marichal 2021-06-18 13:54:45 -03:00
parent 1089048afd
commit e9faecbfc7
1 changed files with 12 additions and 18 deletions

View File

@ -2,8 +2,7 @@
* External dependencies.
*/
import { SelectControl } from '@wordpress/components';
import { withDispatch, withSelect } from '@wordpress/data';
import { compose } from '@wordpress/compose';
import { useDispatch, useSelect } from '@wordpress/data';
/**
* Internal dependencies
@ -12,13 +11,21 @@ import { STORE_KEY } from '../data/constants';
export const TRIGGER_CRON_ACTION_NAME = 'runSelectedCronJob';
const TriggerCron = ({ cronList, updateCommandParams }) => {
export const TriggerCronJob = () => {
const { cronList } = useSelect((select) => {
const { getCronJobs } = select(STORE_KEY);
return {
cronList: getCronJobs(),
};
});
const { updateCommandParams } = useDispatch(STORE_KEY);
function onCronChange(selectedValue) {
const { hook, signature } = cronList[selectedValue];
updateCommandParams(TRIGGER_CRON_ACTION_NAME, { hook, signature });
}
function getOptions(cronList) {
function getOptions() {
return Object.keys(cronList).map((name) => {
return { label: name, value: name };
});
@ -33,22 +40,9 @@ const TriggerCron = ({ cronList, updateCommandParams }) => {
label="Select cron job to run"
onChange={onCronChange}
labelPosition="side"
options={getOptions(cronList)}
options={getOptions()}
/>
)}
</div>
);
};
export const TriggerCronJob = compose(
withSelect((select) => {
const { getCronJobs } = select(STORE_KEY);
return {
cronList: getCronJobs(),
};
}),
withDispatch((dispatch) => {
const { updateCommandParams } = dispatch(STORE_KEY);
return { updateCommandParams };
})
)(TriggerCron);