mirror of
https://github.com/nestriness/nestri.git
synced 2025-12-12 08:45:38 +02:00
## Description <!-- Briefly describe the purpose and scope of your changes --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added support for managing multiple Steam profiles per user, including a new profiles page with avatar selection and profile management. - Introduced a streamlined Steam authentication flow using a popup window, replacing the previous QR code and team-based login. - Added utilities for Steam image handling and metadata, including avatar preloading and static Steam metadata mappings. - Enhanced OpenID verification for Steam login. - Added new image-related events and expanded event handling for Steam account updates and image processing. - **Improvements** - Refactored the account structure from teams to profiles, updating related UI, context, and storage. - Updated API headers and authentication logic to use Steam IDs instead of team IDs. - Expanded game metadata with new fields for categories, franchises, and social links. - Improved library and category schemas for richer game and profile data. - Simplified and improved Steam API client methods for fetching user info, friends, and game libraries using Steam Web API. - Updated queue processing to handle individual game updates and publish image events. - Adjusted permissions and queue configurations for better message handling and dead-letter queue support. - Improved slug creation and rating estimation utilities. - **Bug Fixes** - Fixed avatar image loading to display higher quality images after initial load. - **Removals** - Removed all team, member, and credential management functionality and related database schemas. - Eliminated the QR code-based login and related UI components. - Deleted legacy team and member database tables and related code. - Removed encryption utilities and deprecated secret keys in favor of new secret management. - **Chores** - Updated dependencies and internal configuration for new features and schema changes. - Cleaned up unused code and updated database migrations for new data structures. - Adjusted import orders and removed unused imports across multiple modules. - Added new resource declarations and updated service link configurations. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
40 lines
1.5 KiB
TypeScript
40 lines
1.5 KiB
TypeScript
import { Hono } from "hono";
|
|
import { notPublic } from "./utils";
|
|
import { describeRoute } from "hono-openapi";
|
|
import { Examples } from "@nestri/core/examples";
|
|
import { ErrorResponses, Result } from "./utils";
|
|
import { Account } from "@nestri/core/account/index";
|
|
|
|
export namespace AccountApi {
|
|
export const route = new Hono()
|
|
.use(notPublic)
|
|
.get("/",
|
|
describeRoute({
|
|
tags: ["Account"],
|
|
summary: "Get user account",
|
|
description: "Get the current user's account details",
|
|
responses: {
|
|
200: {
|
|
content: {
|
|
"application/json": {
|
|
schema: Result(
|
|
Account.Info.openapi({
|
|
description: "User account information",
|
|
example: { ...Examples.User, profiles: [Examples.SteamAccount] }
|
|
})
|
|
),
|
|
},
|
|
},
|
|
description: "User account details"
|
|
},
|
|
400: ErrorResponses[400],
|
|
404: ErrorResponses[404],
|
|
429: ErrorResponses[429],
|
|
}
|
|
}),
|
|
async (c) =>
|
|
c.json({
|
|
data: await Account.list()
|
|
}, 200)
|
|
)
|
|
} |