// Command sundynix-desktop —— 第 1 层客户端，Wails v3 原生桌面应用入口。
package main

import (
	"embed"
	"log"

	"github.com/wailsapp/wails/v3/pkg/application"
)

//go:embed all:frontend/dist
var assets embed.FS

func main() {
	// v3：application.New + Service 绑定 + 显式 Window。
	app := application.New(application.Options{
		Name:        "sundynix-agentix",
		Description: "事件驱动的 AI Agent 工作台",
		Services: []application.Service{
			application.NewService(&App{}), // 暴露原生能力(文件/另存为/打开/通知)给前端
		},
		Assets: application.AssetOptions{
			Handler: application.AssetFileServerFS(assets),
		},
		Mac: application.MacOptions{
			ApplicationShouldTerminateAfterLastWindowClosed: true,
		},
	})

	app.Window.NewWithOptions(application.WebviewWindowOptions{
		Title:            "sundynix-agentix",
		Width:            1440,
		Height:           900,
		MinWidth:         1100,
		MinHeight:        700,
		BackgroundColour: application.NewRGB(11, 13, 18), // 与深色主题一致 #0b0d12
		// macOS：隐藏标题栏、内容铺满到顶（保留交通灯），顶栏自定义为可拖拽区。
		Mac: application.MacWindow{
			TitleBar: application.MacTitleBarHiddenInset,
		},
		URL: "/",
	})

	if err := app.Run(); err != nil {
		log.Fatal(err)
	}
}
