{
  // See https://go.microsoft.com/fwlink/?LinkId=733558
  // for the documentation about the tasks.json format
  "version": "2.0.0",
  "cwd": "${workspaceRoot}",
  "echoCommand": true,
  "type": "shell",
  "tasks": [
    {
      "type": "shell",
      "command": "go",
      "label": "build oh-my-posh",
      "detail": "Build oh-my-posh in the /src folder locally",
      "options": {
        "cwd": "${workspaceRoot}/src"
      },
      "group": {
        "kind": "build",
        "isDefault": true
      },
      "problemMatcher": "$go",
      "args": [
        "build",
        "-v",
        "-ldflags",
        "\"-X 'main.Version=development-$(git --no-pager log -1 --pretty=%h-%s)'\""
      ]
    },
    {
      "type": "shell",
      "command": "go",
      "label": "devcontainer: rebuild oh-my-posh",
      "detail": "Build oh-my-posh for all shells when inside the devcontainer",
      "options": {
        "cwd": "${workspaceRoot}/src",
        "shell": {
          "executable": "bash",
          "args": [
            "-c"
          ]
        },
        "statusbar": {
          "hide": false,
          "color": "#22C1D6",
          "label": "$(beaker) devcontainer: rebuild oh-my-posh",
          "tooltip": "Compiles *oh-my-posh* from this repo while **overwriting** your preinstalled stable release."
        }
      },
      "group": "build",
      "problemMatcher": "$go",
      "args": [
        "build",
        "-v",
        "-o",
        "/home/vscode/bin/oh-my-posh",
        "-ldflags",
        "\"-X 'main.Version=development-$(git --no-pager log -1 --pretty=%h-%s)'\""
      ]
    },
    {
      "type": "npm",
      "script": "start",
      "path": "website/",
      "problemMatcher": [],
      "label": "website: start",
      "detail": "cross-env NODE_ENV=development docusaurus start"
    },
    {
      "type": "func",
      "command": "host start",
      "problemMatcher": "$func-node-watch",
      "isBackground": true,
      "dependsOn": "npm install (functions)",
      "options": {
        "cwd": "${workspaceFolder}/website/api"
      }
    },
    {
      "type": "shell",
      "label": "npm install (functions)",
      "command": "npm install",
      "options": {
        "cwd": "${workspaceFolder}/website/api"
      }
    },
    {
      "type": "shell",
      "label": "npm prune (functions)",
      "command": "npm prune --production",
      "problemMatcher": [],
      "options": {
        "cwd": "${workspaceFolder}/website/api"
      }
    }
  ]
}
