summaryrefslogtreecommitdiff
path: root/internal/data/networks.sql.go
blob: 5091602fe34595e36a06baff4ab317e6106a2deb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
// Code generated by sqlc. DO NOT EDIT.
// versions:
//   sqlc v1.27.0
// source: networks.sql

package data

import (
	"context"

	"github.com/kyren223/eko/pkg/snowflake"
)

const createNetwork = `-- name: CreateNetwork :one
INSERT INTO networks (
  id, owner_id, name, is_public,
  icon, bg_hex_color, fg_hex_color
) VALUES (
  ?, ?, ?, ?,
  ?, ?, ?
)
RETURNING id, owner_id, name, icon, bg_hex_color, fg_hex_color, is_public
`

type CreateNetworkParams struct {
	ID         snowflake.ID
	OwnerID    snowflake.ID
	Name       string
	IsPublic   bool
	Icon       string
	BgHexColor string
	FgHexColor string
}

func (q *Queries) CreateNetwork(ctx context.Context, arg CreateNetworkParams) (Network, error) {
	row := q.db.QueryRowContext(ctx, createNetwork,
		arg.ID,
		arg.OwnerID,
		arg.Name,
		arg.IsPublic,
		arg.Icon,
		arg.BgHexColor,
		arg.FgHexColor,
	)
	var i Network
	err := row.Scan(
		&i.ID,
		&i.OwnerID,
		&i.Name,
		&i.Icon,
		&i.BgHexColor,
		&i.FgHexColor,
		&i.IsPublic,
	)
	return i, err
}

const deleteNetwork = `-- name: DeleteNetwork :exec
DELETE FROM networks WHERE id = ?
`

func (q *Queries) DeleteNetwork(ctx context.Context, id snowflake.ID) error {
	_, err := q.db.ExecContext(ctx, deleteNetwork, id)
	return err
}

const getNetworkById = `-- name: GetNetworkById :one
SELECT id, owner_id, name, icon, bg_hex_color, fg_hex_color, is_public FROM networks
WHERE id = ?
`

func (q *Queries) GetNetworkById(ctx context.Context, id snowflake.ID) (Network, error) {
	row := q.db.QueryRowContext(ctx, getNetworkById, id)
	var i Network
	err := row.Scan(
		&i.ID,
		&i.OwnerID,
		&i.Name,
		&i.Icon,
		&i.BgHexColor,
		&i.FgHexColor,
		&i.IsPublic,
	)
	return i, err
}

const transferNetwork = `-- name: TransferNetwork :one
UPDATE networks SET
  owner_id = ?
WHERE id = ?
RETURNING id, owner_id, name, icon, bg_hex_color, fg_hex_color, is_public
`

type TransferNetworkParams struct {
	OwnerID snowflake.ID
	ID      snowflake.ID
}

func (q *Queries) TransferNetwork(ctx context.Context, arg TransferNetworkParams) (Network, error) {
	row := q.db.QueryRowContext(ctx, transferNetwork, arg.OwnerID, arg.ID)
	var i Network
	err := row.Scan(
		&i.ID,
		&i.OwnerID,
		&i.Name,
		&i.Icon,
		&i.BgHexColor,
		&i.FgHexColor,
		&i.IsPublic,
	)
	return i, err
}