// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.31.1 // source: queries.sql package sqlc import ( "context" "github.com/google/uuid" "github.com/jackc/pgx/v5/pgtype" ) const clearTaskChildrenParent = `-- name: ClearTaskChildrenParent :execrows UPDATE public.tasks SET parent_task_id = NULL, updated_at = now() WHERE parent_task_id = $1 AND owner_id = $2 AND deleted_at IS NULL ` type ClearTaskChildrenParentParams struct { ParentTaskID pgtype.UUID `db:"parent_task_id"` OwnerID uuid.UUID `db:"owner_id"` } func (q *Queries) ClearTaskChildrenParent(ctx context.Context, arg ClearTaskChildrenParentParams) (int64, error) { result, err := q.db.Exec(ctx, clearTaskChildrenParent, arg.ParentTaskID, arg.OwnerID) if err != nil { return 0, err } return result.RowsAffected(), nil } const createAuthUser = `-- name: CreateAuthUser :one INSERT INTO auth.users ( id, email, encrypted_password, raw_user_meta_data, created_at, updated_at ) VALUES ( $1, $2, $3, jsonb_build_object('display_name', $4::text), now(), now() ) RETURNING id ` type CreateAuthUserParams struct { ID uuid.UUID `db:"id"` Email string `db:"email"` EncryptedPassword string `db:"encrypted_password"` DisplayName string `db:"display_name"` } func (q *Queries) CreateAuthUser(ctx context.Context, arg CreateAuthUserParams) (uuid.UUID, error) { row := q.db.QueryRow(ctx, createAuthUser, arg.ID, arg.Email, arg.EncryptedPassword, arg.DisplayName, ) var id uuid.UUID err := row.Scan(&id) return id, err } const createSession = `-- name: CreateSession :exec INSERT INTO auth.sessions ( id, session_token, user_id, created_at, updated_at, expires_at ) VALUES ( $1, $2, $3, now(), now(), $4 ) ` type CreateSessionParams struct { ID uuid.UUID `db:"id"` SessionToken string `db:"session_token"` UserID uuid.UUID `db:"user_id"` ExpiresAt pgtype.Timestamptz `db:"expires_at"` } func (q *Queries) CreateSession(ctx context.Context, arg CreateSessionParams) error { _, err := q.db.Exec(ctx, createSession, arg.ID, arg.SessionToken, arg.UserID, arg.ExpiresAt, ) return err } const createTablo = `-- name: CreateTablo :one INSERT INTO public.tablos ( id, owner_id, name, color, status, created_at, updated_at ) VALUES ( $1, $2, $3, $4, $5, now(), now() ) RETURNING id, owner_id, name, color, status, created_at, updated_at, deleted_at ` type CreateTabloParams struct { ID uuid.UUID `db:"id"` OwnerID uuid.UUID `db:"owner_id"` Name string `db:"name"` Color string `db:"color"` Status string `db:"status"` } func (q *Queries) CreateTablo(ctx context.Context, arg CreateTabloParams) (Tablo, error) { row := q.db.QueryRow(ctx, createTablo, arg.ID, arg.OwnerID, arg.Name, arg.Color, arg.Status, ) var i Tablo err := row.Scan( &i.ID, &i.OwnerID, &i.Name, &i.Color, &i.Status, &i.CreatedAt, &i.UpdatedAt, &i.DeletedAt, ) return i, err } const createTask = `-- name: CreateTask :one INSERT INTO public.tasks ( id, tablo_id, owner_id, title, description, status, assignee_id, is_etape, parent_task_id, due_date, created_at, updated_at ) VALUES ( $1, $2, $3, $4, $5, $6, $7, $8, $9, $10, now(), now() ) RETURNING id, tablo_id, owner_id, title, description, status, assignee_id, is_etape, parent_task_id, due_date, created_at, updated_at, deleted_at ` type CreateTaskParams struct { ID uuid.UUID `db:"id"` TabloID uuid.UUID `db:"tablo_id"` OwnerID uuid.UUID `db:"owner_id"` Title string `db:"title"` Description string `db:"description"` Status string `db:"status"` AssigneeID pgtype.UUID `db:"assignee_id"` IsEtape bool `db:"is_etape"` ParentTaskID pgtype.UUID `db:"parent_task_id"` DueDate pgtype.Date `db:"due_date"` } func (q *Queries) CreateTask(ctx context.Context, arg CreateTaskParams) (Task, error) { row := q.db.QueryRow(ctx, createTask, arg.ID, arg.TabloID, arg.OwnerID, arg.Title, arg.Description, arg.Status, arg.AssigneeID, arg.IsEtape, arg.ParentTaskID, arg.DueDate, ) var i Task err := row.Scan( &i.ID, &i.TabloID, &i.OwnerID, &i.Title, &i.Description, &i.Status, &i.AssigneeID, &i.IsEtape, &i.ParentTaskID, &i.DueDate, &i.CreatedAt, &i.UpdatedAt, &i.DeletedAt, ) return i, err } const deleteSessionByToken = `-- name: DeleteSessionByToken :execrows DELETE FROM auth.sessions WHERE session_token = $1 ` func (q *Queries) DeleteSessionByToken(ctx context.Context, sessionToken string) (int64, error) { result, err := q.db.Exec(ctx, deleteSessionByToken, sessionToken) if err != nil { return 0, err } return result.RowsAffected(), nil } const getAuthUserByEmail = `-- name: GetAuthUserByEmail :one SELECT id, email, encrypted_password, created_at, updated_at FROM auth.users WHERE email = $1 LIMIT 1 ` type GetAuthUserByEmailRow struct { ID uuid.UUID `db:"id"` Email string `db:"email"` EncryptedPassword string `db:"encrypted_password"` CreatedAt pgtype.Timestamptz `db:"created_at"` UpdatedAt pgtype.Timestamptz `db:"updated_at"` } func (q *Queries) GetAuthUserByEmail(ctx context.Context, email string) (GetAuthUserByEmailRow, error) { row := q.db.QueryRow(ctx, getAuthUserByEmail, email) var i GetAuthUserByEmailRow err := row.Scan( &i.ID, &i.Email, &i.EncryptedPassword, &i.CreatedAt, &i.UpdatedAt, ) return i, err } const getPublicUserByID = `-- name: GetPublicUserByID :one SELECT id, email, created_at, updated_at, display_name FROM public.users WHERE id = $1 LIMIT 1 ` func (q *Queries) GetPublicUserByID(ctx context.Context, id uuid.UUID) (User, error) { row := q.db.QueryRow(ctx, getPublicUserByID, id) var i User err := row.Scan( &i.ID, &i.Email, &i.CreatedAt, &i.UpdatedAt, &i.DisplayName, ) return i, err } const getSessionByToken = `-- name: GetSessionByToken :one SELECT id, session_token, user_id, created_at, updated_at, expires_at FROM auth.sessions WHERE session_token = $1 LIMIT 1 ` func (q *Queries) GetSessionByToken(ctx context.Context, sessionToken string) (AuthSession, error) { row := q.db.QueryRow(ctx, getSessionByToken, sessionToken) var i AuthSession err := row.Scan( &i.ID, &i.SessionToken, &i.UserID, &i.CreatedAt, &i.UpdatedAt, &i.ExpiresAt, ) return i, err } const getTaskByID = `-- name: GetTaskByID :one SELECT id, tablo_id, owner_id, title, description, status, assignee_id, is_etape, parent_task_id, due_date, created_at, updated_at, deleted_at FROM public.tasks WHERE id = $1 AND owner_id = $2 AND deleted_at IS NULL LIMIT 1 ` type GetTaskByIDParams struct { ID uuid.UUID `db:"id"` OwnerID uuid.UUID `db:"owner_id"` } func (q *Queries) GetTaskByID(ctx context.Context, arg GetTaskByIDParams) (Task, error) { row := q.db.QueryRow(ctx, getTaskByID, arg.ID, arg.OwnerID) var i Task err := row.Scan( &i.ID, &i.TabloID, &i.OwnerID, &i.Title, &i.Description, &i.Status, &i.AssigneeID, &i.IsEtape, &i.ParentTaskID, &i.DueDate, &i.CreatedAt, &i.UpdatedAt, &i.DeletedAt, ) return i, err } const listTablos = `-- name: ListTablos :many SELECT id, owner_id, name, color, status, created_at, updated_at, deleted_at FROM public.tablos WHERE owner_id = $1 AND deleted_at IS NULL AND ( $2::text IS NULL OR status = $2::text ) AND ( $3::text IS NULL OR name ILIKE '%' || $3::text || '%' ) ORDER BY created_at DESC ` type ListTablosParams struct { OwnerID uuid.UUID `db:"owner_id"` Status pgtype.Text `db:"status"` Query pgtype.Text `db:"query"` } func (q *Queries) ListTablos(ctx context.Context, arg ListTablosParams) ([]Tablo, error) { rows, err := q.db.Query(ctx, listTablos, arg.OwnerID, arg.Status, arg.Query) if err != nil { return nil, err } defer rows.Close() var items []Tablo for rows.Next() { var i Tablo if err := rows.Scan( &i.ID, &i.OwnerID, &i.Name, &i.Color, &i.Status, &i.CreatedAt, &i.UpdatedAt, &i.DeletedAt, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Err(); err != nil { return nil, err } return items, nil } const listTasksByOwner = `-- name: ListTasksByOwner :many SELECT id, tablo_id, owner_id, title, description, status, assignee_id, is_etape, parent_task_id, due_date, created_at, updated_at, deleted_at FROM public.tasks WHERE owner_id = $1 AND deleted_at IS NULL ORDER BY created_at ASC ` func (q *Queries) ListTasksByOwner(ctx context.Context, ownerID uuid.UUID) ([]Task, error) { rows, err := q.db.Query(ctx, listTasksByOwner, ownerID) if err != nil { return nil, err } defer rows.Close() var items []Task for rows.Next() { var i Task if err := rows.Scan( &i.ID, &i.TabloID, &i.OwnerID, &i.Title, &i.Description, &i.Status, &i.AssigneeID, &i.IsEtape, &i.ParentTaskID, &i.DueDate, &i.CreatedAt, &i.UpdatedAt, &i.DeletedAt, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Err(); err != nil { return nil, err } return items, nil } const listTasksByTablo = `-- name: ListTasksByTablo :many SELECT id, tablo_id, owner_id, title, description, status, assignee_id, is_etape, parent_task_id, due_date, created_at, updated_at, deleted_at FROM public.tasks WHERE owner_id = $1 AND tablo_id = $2 AND deleted_at IS NULL ORDER BY created_at ASC ` type ListTasksByTabloParams struct { OwnerID uuid.UUID `db:"owner_id"` TabloID uuid.UUID `db:"tablo_id"` } func (q *Queries) ListTasksByTablo(ctx context.Context, arg ListTasksByTabloParams) ([]Task, error) { rows, err := q.db.Query(ctx, listTasksByTablo, arg.OwnerID, arg.TabloID) if err != nil { return nil, err } defer rows.Close() var items []Task for rows.Next() { var i Task if err := rows.Scan( &i.ID, &i.TabloID, &i.OwnerID, &i.Title, &i.Description, &i.Status, &i.AssigneeID, &i.IsEtape, &i.ParentTaskID, &i.DueDate, &i.CreatedAt, &i.UpdatedAt, &i.DeletedAt, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Err(); err != nil { return nil, err } return items, nil } const softDeleteTablo = `-- name: SoftDeleteTablo :execrows UPDATE public.tablos SET deleted_at = now(), updated_at = now() WHERE id = $1 AND owner_id = $2 AND deleted_at IS NULL ` type SoftDeleteTabloParams struct { ID uuid.UUID `db:"id"` OwnerID uuid.UUID `db:"owner_id"` } func (q *Queries) SoftDeleteTablo(ctx context.Context, arg SoftDeleteTabloParams) (int64, error) { result, err := q.db.Exec(ctx, softDeleteTablo, arg.ID, arg.OwnerID) if err != nil { return 0, err } return result.RowsAffected(), nil } const softDeleteTask = `-- name: SoftDeleteTask :execrows UPDATE public.tasks SET deleted_at = now(), updated_at = now() WHERE id = $1 AND owner_id = $2 AND deleted_at IS NULL ` type SoftDeleteTaskParams struct { ID uuid.UUID `db:"id"` OwnerID uuid.UUID `db:"owner_id"` } func (q *Queries) SoftDeleteTask(ctx context.Context, arg SoftDeleteTaskParams) (int64, error) { result, err := q.db.Exec(ctx, softDeleteTask, arg.ID, arg.OwnerID) if err != nil { return 0, err } return result.RowsAffected(), nil } const updateTablo = `-- name: UpdateTablo :execrows UPDATE public.tablos SET name = $3, color = $4, updated_at = now() WHERE id = $1 AND owner_id = $2 AND deleted_at IS NULL ` type UpdateTabloParams struct { ID uuid.UUID `db:"id"` OwnerID uuid.UUID `db:"owner_id"` Name string `db:"name"` Color string `db:"color"` } func (q *Queries) UpdateTablo(ctx context.Context, arg UpdateTabloParams) (int64, error) { result, err := q.db.Exec(ctx, updateTablo, arg.ID, arg.OwnerID, arg.Name, arg.Color, ) if err != nil { return 0, err } return result.RowsAffected(), nil } const updateTask = `-- name: UpdateTask :one UPDATE public.tasks SET title = $3, description = $4, status = $5, due_date = $6, assignee_id = $7, parent_task_id = $8, updated_at = now() WHERE id = $1 AND owner_id = $2 AND deleted_at IS NULL RETURNING id, tablo_id, owner_id, title, description, status, assignee_id, is_etape, parent_task_id, due_date, created_at, updated_at, deleted_at ` type UpdateTaskParams struct { ID uuid.UUID `db:"id"` OwnerID uuid.UUID `db:"owner_id"` Title string `db:"title"` Description string `db:"description"` Status string `db:"status"` DueDate pgtype.Date `db:"due_date"` AssigneeID pgtype.UUID `db:"assignee_id"` ParentTaskID pgtype.UUID `db:"parent_task_id"` } func (q *Queries) UpdateTask(ctx context.Context, arg UpdateTaskParams) (Task, error) { row := q.db.QueryRow(ctx, updateTask, arg.ID, arg.OwnerID, arg.Title, arg.Description, arg.Status, arg.DueDate, arg.AssigneeID, arg.ParentTaskID, ) var i Task err := row.Scan( &i.ID, &i.TabloID, &i.OwnerID, &i.Title, &i.Description, &i.Status, &i.AssigneeID, &i.IsEtape, &i.ParentTaskID, &i.DueDate, &i.CreatedAt, &i.UpdatedAt, &i.DeletedAt, ) return i, err }