// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.30.0 // source: folders.sql package sqlc import ( "context" "database/sql" ) const CreateFolder = `-- name: CreateFolder :one INSERT INTO favorite_folders (name, icon, parent_id, position, created_at) VALUES (?, ?, ?, COALESCE((SELECT MAX(position) + 1 FROM favorite_folders), 0), CURRENT_TIMESTAMP) RETURNING id, name, icon, parent_id, position, created_at ` type CreateFolderParams struct { Name string `json:"name"` Icon sql.NullString `json:"icon"` ParentID sql.NullInt64 `json:"parent_id"` } func (q *Queries) CreateFolder(ctx context.Context, arg CreateFolderParams) (FavoriteFolder, error) { row := q.db.QueryRowContext(ctx, CreateFolder, arg.Name, arg.Icon, arg.ParentID) var i FavoriteFolder err := row.Scan( &i.ID, &i.Name, &i.Icon, &i.ParentID, &i.Position, &i.CreatedAt, ) return i, err } const DeleteFolder = `-- name: DeleteFolder :exec DELETE FROM favorite_folders WHERE id = ? ` func (q *Queries) DeleteFolder(ctx context.Context, id int64) error { _, err := q.db.ExecContext(ctx, DeleteFolder, id) return err } const GetAllFolders = `-- name: GetAllFolders :many SELECT id, name, icon, parent_id, position, created_at FROM favorite_folders ORDER BY position ASC ` func (q *Queries) GetAllFolders(ctx context.Context) ([]FavoriteFolder, error) { rows, err := q.db.QueryContext(ctx, GetAllFolders) if err != nil { return nil, err } defer rows.Close() items := []FavoriteFolder{} for rows.Next() { var i FavoriteFolder if err := rows.Scan( &i.ID, &i.Name, &i.Icon, &i.ParentID, &i.Position, &i.CreatedAt, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Close(); err != nil { return nil, err } if err := rows.Err(); err != nil { return nil, err } return items, nil } const GetChildFolders = `-- name: GetChildFolders :many SELECT id, name, icon, parent_id, position, created_at FROM favorite_folders WHERE parent_id = ? ORDER BY position ASC ` func (q *Queries) GetChildFolders(ctx context.Context, parentID sql.NullInt64) ([]FavoriteFolder, error) { rows, err := q.db.QueryContext(ctx, GetChildFolders, parentID) if err != nil { return nil, err } defer rows.Close() items := []FavoriteFolder{} for rows.Next() { var i FavoriteFolder if err := rows.Scan( &i.ID, &i.Name, &i.Icon, &i.ParentID, &i.Position, &i.CreatedAt, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Close(); err != nil { return nil, err } if err := rows.Err(); err != nil { return nil, err } return items, nil } const GetFolderByID = `-- name: GetFolderByID :one SELECT id, name, icon, parent_id, position, created_at FROM favorite_folders WHERE id = ? LIMIT 1 ` func (q *Queries) GetFolderByID(ctx context.Context, id int64) (FavoriteFolder, error) { row := q.db.QueryRowContext(ctx, GetFolderByID, id) var i FavoriteFolder err := row.Scan( &i.ID, &i.Name, &i.Icon, &i.ParentID, &i.Position, &i.CreatedAt, ) return i, err } const GetRootFolders = `-- name: GetRootFolders :many SELECT id, name, icon, parent_id, position, created_at FROM favorite_folders WHERE parent_id IS NULL ORDER BY position ASC ` func (q *Queries) GetRootFolders(ctx context.Context) ([]FavoriteFolder, error) { rows, err := q.db.QueryContext(ctx, GetRootFolders) if err != nil { return nil, err } defer rows.Close() items := []FavoriteFolder{} for rows.Next() { var i FavoriteFolder if err := rows.Scan( &i.ID, &i.Name, &i.Icon, &i.ParentID, &i.Position, &i.CreatedAt, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Close(); err != nil { return nil, err } if err := rows.Err(); err != nil { return nil, err } return items, nil } const UpdateFolder = `-- name: UpdateFolder :exec UPDATE favorite_folders SET name = ?, icon = ? WHERE id = ? ` type UpdateFolderParams struct { Name string `json:"name"` Icon sql.NullString `json:"icon"` ID int64 `json:"id"` } func (q *Queries) UpdateFolder(ctx context.Context, arg UpdateFolderParams) error { _, err := q.db.ExecContext(ctx, UpdateFolder, arg.Name, arg.Icon, arg.ID) return err } const UpdateFolderPosition = `-- name: UpdateFolderPosition :exec UPDATE favorite_folders SET position = ? WHERE id = ? ` type UpdateFolderPositionParams struct { Position int64 `json:"position"` ID int64 `json:"id"` } func (q *Queries) UpdateFolderPosition(ctx context.Context, arg UpdateFolderPositionParams) error { _, err := q.db.ExecContext(ctx, UpdateFolderPosition, arg.Position, arg.ID) return err }