The initial ID of the submission to fetch or null if starting with no
submission.
A flag to enable polling for pending submissions. Defaults to
false.
The returning object contains:
submission: The current submission object containing all submission details.fetched: Boolean indicating whether the submission data has been fetched.isPending: Boolean indicating if the submission is in a pending state, or null if the
state is unknown.uploadPendingAfterTimeout: Boolean indicating if the submission upload is still pending
after exceeding the timeout period.push: Function to push updated submission data to the backend.pushSubmission: Alias for the push method.deleteSubmission: Function to delete the submission by ID or use the current submission
ID.setDescription: Function to update the description of the submission.setFiles: Function to update the files associated with the submission.setName: Function to update the name of the submission.setPostTitle: Function to update the post title of the submission.setState: Function to update the state of the submission.setId: Function to update the ID of the submission and trigger a refetch.setSchemaId: Function to update the schema ID of the submission.approve: Function to approve the submission, optionally adding a comment.approveSubmission: Alias for the approve method.reject: Function to reject the submission, optionally adding a comment.rejectSubmission: Alias for the reject method.reset: Function to reset the submission state to default values.refetch: Function to refetch the submission data from the backend. Pass quiet to avoid
triggering loading indicators.import { useSubmission } from 'react-playmakers';
const MyComponent = () => {
const {
submission,
approve,
reject,
setName,
setPostTitle,
setSchemaId,
push,
refetch,
deleteSubmission
} = useSubmission('SXXXXXXXX', true);
const handleApprove = () => {
approve('Great submission!');
};
const handleUpdate = async () => {
setName('Updated Submission Name');
setPostTitle('New Post Title');
setSchemaId('schema-001');
await push(); // Push updated submission to the backend
};
const handleDelete = () => {
deleteSubmission(submission.id);
};
return (
<div>
<h1>Submission: {submission.name}</h1>
<button onClick={handleApprove}>Approve</button>
<button onClick={handleUpdate}>Update</button>
<button onClick={refetch}>Refetch</button>
<button onClick={handleDelete}>Delete</button>
</div>
);
};
Generated using TypeDoc
Custom React hook to manage submission data and operations such as fetching, creating, updating, approving, rejecting, and deleting submissions.