From 04172d5b9d21f2a66b0c2656cc7a1b6f479ca380 Mon Sep 17 00:00:00 2001 From: onyx-and-iris Date: Fri, 30 Jan 2026 23:21:49 +0000 Subject: [PATCH] add entry point, context and util --- cmd/context.go | 20 ++++++++++++++++++++ cmd/util.go | 13 +++++++++++++ main.go | 10 ++++++++++ 3 files changed, 43 insertions(+) create mode 100644 cmd/context.go create mode 100644 cmd/util.go create mode 100644 main.go diff --git a/cmd/context.go b/cmd/context.go new file mode 100644 index 0000000..8775631 --- /dev/null +++ b/cmd/context.go @@ -0,0 +1,20 @@ +package cmd + +import ( + "context" + + "github.com/onyx-and-iris/xair-cli/internal/xair" +) + +type clientKey string + +func WithContext(ctx context.Context, client *xair.XAirClient) context.Context { + return context.WithValue(ctx, clientKey("oscClient"), client) +} + +func ClientFromContext(ctx context.Context) *xair.XAirClient { + if client, ok := ctx.Value(clientKey("oscClient")).(*xair.XAirClient); ok { + return client + } + return nil +} diff --git a/cmd/util.go b/cmd/util.go new file mode 100644 index 0000000..e089c2c --- /dev/null +++ b/cmd/util.go @@ -0,0 +1,13 @@ +package cmd + +import ( + "strconv" +) + +func mustConv(levelStr string) float64 { + level, err := strconv.ParseFloat(levelStr, 64) + if err != nil { + panic(err) + } + return level +} diff --git a/main.go b/main.go new file mode 100644 index 0000000..cd5f0a0 --- /dev/null +++ b/main.go @@ -0,0 +1,10 @@ +/* +Copyright © 2026 onyx-and-iris +*/ +package main + +import "github.com/onyx-and-iris/xair-cli/cmd" + +func main() { + cmd.Execute() +}