# Copyright 2024, Command Line Inc.
# SPDX-License-Identifier: Apache-2.0

version: "3"

vars:
    APP_NAME: "NextWave"
    BIN_DIR: "bin"
    VERSION:
        sh: node version.cjs

tasks:
    generate:
        cmds:
            - go run cmd/generate/main-generate.go
        sources:
            - "cmd/generate/*.go"
            - "pkg/service/**/*.go"
            - "pkg/wstore/*.go"

    electron:dev:
        cmds:
            - WAVETERM_DEV=1 yarn dev
        deps:
            - build:server

    electron:start:
        cmds:
            - WAVETERM_DEV=1 yarn start
        deps:
            - build:server

    build:server:
        cmds:
            - go build -o dist/bin/wavesrv{{exeExt}} cmd/server/main-server.go
        sources:
            - "cmd/server/*.go"
            - "pkg/**/*.go"
        generates:
            - dist/bin/wavesrv{{exeExt}}
        deps:
            - go:mod:tidy

    go:mod:tidy:
        summary: Runs `go mod tidy`
        internal: true
        generates:
            - go.sum
        sources:
            - go.mod
        cmds:
            - go mod tidy
