module.exports = async function createProject(params) {
  const PROJECTS_FOLDER = "_PARA/Projects/";

  const userInput = await params.quickAddApi.inputPrompt(
    "CREATE a new Project (and remember to have fun!)",
    "Project Name"
  );

  // Check if user cancelled
  if (!userInput) {
    return;
  }

  // add a checkbox prompt to see if for optional settings
  const settings = await params.quickAddApi.checkboxPrompt(
    ["Create a Kanban", "Create a Scratchpad", "Add Resources Dataview"],
    ["Create a Kanban", "Create a Scratchpad", "Add Resources Dataview"]
  );

  // Get the project name
  const absolutePath = PROJECTS_FOLDER + userInput;

  // Create a new folder
  await params.app.vault.createFolder(`${absolutePath}`);

  // // Create a new file in the new folder
  const newFile = await params.app.vault.create(
    `${absolutePath}/${userInput}.md`, 
    `\n> [!info] Project Description\n> [What is my purpose?](https://youtu.be/X7HmltUWXgs)\n\n%% Waypoint %%\n\n`
  );

  // // Create a scratchpad file in the new folder
  if (settings.includes("Create a Scratchpad")) {
    await params.app.vault.create(`${absolutePath}/Scratchpad.md`, "");
  }

  if (settings.includes("Add Resources Dataview")) {
    await params.app.vault.create(
      `${absolutePath}/Resources.md`, `\n\`\`\`dataview
list 
where contains(projects, "${userInput}")
\`\`\`\n\n`
    )
    }


  if (settings.includes("Create a Kanban")) {
    // // Create a Kanban file in the new folder
    await params.app.vault.create(
      `${absolutePath}/Kanban.md`,
`---

kanban-plugin: basic

---

## To Do



## In Progress



## Done

**Complete**


## Waiting On





%% kanban:settings
\`\`\`
{"kanban-plugin":"basic"}
\`\`\`
%%`
    );
  }
};
