> ## Documentation Index
> Fetch the complete documentation index at: https://docs.withdovetail.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Tasks

> Understand FormlyAI's task management system for medical device documentation with states, dependencies, and workflow tracking.

export const DraftIcon = () => {
  return <svg style={{
    display: 'inline',
    verticalAlign: 'middle'
  }} xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="rgb(237, 108, 2)"><path d="M0 0h24v24H0V0z" fill="none" /><path d="M14.06 9.02l.92.92L5.92 19H5v-.92l9.06-9.06M17.66 3c-.25 0-.51.1-.7.29l-1.83 1.83 3.75 3.75 1.83-1.83c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.2-.2-.45-.29-.71-.29zm-3.6 3.19L3 17.25V21h3.75L17.81 9.94l-3.75-3.75z" /></svg>;
};

export const AvailableIcon = () => {
  return <svg style={{
    display: 'inline',
    verticalAlign: 'middle'
  }} xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="rgba(0, 0, 0, 0.87)"><path d="M0 0h24v24H0V0z" fill="none" /><path d="M13 11h-2v3H8v2h3v3h2v-3h3v-2h-3zm1-9H6c-1.1 0-2 .9-2 2v16c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm4 18H6V4h7v5h5v11z" /></svg>;
};

export const LockedIcon = () => {
  return <svg style={{
    display: 'inline',
    verticalAlign: 'middle'
  }} xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="rgb(189, 189, 189)"><g fill="none"><path d="M0 0h24v24H0V0z" /><path d="M0 0h24v24H0V0z" opacity=".87" /></g><path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6zm9 14H6V10h12v10zm-6-3c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z" /></svg>;
};

export const LiveIcon = () => {
  return <svg style={{
    display: 'inline',
    verticalAlign: 'middle'
  }} xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="rgb(34, 197, 94)"><g><path d="M0,0h24v24H0V0z" fill="none" /></g><g><path d="M14,2H6C4.9,2,4.01,2.9,4.01,4L4,20c0,1.1,0.89,2,1.99,2H18c1.1,0,2-0.9,2-2V8L14,2z M18,20H6V4h7v5h5V20z M8.82,13.05 L7.4,14.46L10.94,18l5.66-5.66l-1.41-1.41l-4.24,4.24L8.82,13.05z" /></g></svg>;
};

export const UnapprovedIcon = () => {
  return <svg style={{
    display: 'inline',
    verticalAlign: 'middle'
  }} xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="rgb(7, 78, 232)"><path d="M320-160q-33 0-56.5-23.5T240-240v-120h120v-90q-35-2-66.5-15.5T236-506v-44h-46L60-680q36-46 89-65t107-19q27 0 52.5 4t51.5 15v-55h480v520q0 50-35 85t-85 35H320Zm120-200h240v80q0 17 11.5 28.5T720-240q17 0 28.5-11.5T760-280v-440H440v24l240 240v56h-56L510-514l-8 8q-14 14-29.5 25T440-464v104ZM224-630h92v86q12 8 25 11t27 3q23 0 41.5-7t36.5-25l8-8-56-56q-29-29-65-43.5T256-684q-20 0-38 3t-36 9l42 42Zm376 350H320v40h286q-3-9-4.5-19t-1.5-21Zm-280 40v-40 40Z" /></svg>;
};

Tasks represent individual work items that help you achieve your medical device documentation and regulatory compliance.
Each task is associated with a specific document and contains a set of inputs that you need to fill in.

<Note> Tasks vary in user input, while some documents are automatically generated, others require you to fill in a form or upload certain information.</Note>

## Task States

Tasks can be in one of the following states:

<Card title="Locked" icon={<LockedIcon />}>
  This task is **dependent** on another task that is not yet complete. Click on the task to show task dependencies.
  The preceding tasks must reach at least the **Unapproved** state to unlock this task.
  After generating the listed tasks you can come back and start working on this task.
  <Tip> FormlyAI will automatically guide you to the preceding tasks to complete them first. </Tip>
</Card>

<Card title="Available" icon={<AvailableIcon />}>
  The task is **available** for you to start working on. Clicking on the task will transition it into the **Draft** state and open the wizard.
</Card>

<Card title="Draft" icon={<DraftIcon />}>
  The document for this task is being **drafted** and requires your input. Leaving the wizard without generating the document will keep the task in the **Draft** state.
</Card>

<Card title="Unapproved" icon={<UnapprovedIcon />}>
  The document was **generated** and can still be **edited** or sent out for approval.
  <Note> Some tasks don't require approval and will stay in the **Unapproved** state. </Note>
</Card>

<Card title="Live" icon={<LiveIcon />}>
  The task has been **completed**, **approved**, and is now **active** in your documentation.
</Card>
