[feature] migrate to monorepo
Some checks failed
Build Backend / Build Docker Image (push) Successful in 3m33s
Test Backend / test (push) Failing after 31s

This commit is contained in:
CDN 2025-02-21 00:49:20 +08:00
commit 05ddc1f783
Signed by: CDN
GPG key ID: 0C656827F9F80080
267 changed files with 75165 additions and 0 deletions

View file

@ -0,0 +1,375 @@
Response:
type: object
required:
- data
properties:
data: {}
meta:
type: object
properties:
total:
type: integer
description: 总记录数
page:
type: integer
description: 当前页码
per_page:
type: integer
description: 每页记录数
total_pages:
type: integer
description: 总页数
links:
type: object
properties:
self:
type: string
format: uri
first:
type: string
format: uri
last:
type: string
format: uri
prev:
type: string
format: uri
next:
type: string
format: uri
Error:
type: object
required:
- error
properties:
error:
type: object
required:
- code
- message
properties:
code:
type: string
message:
type: string
details:
type: object
User:
type: object
required:
- id
- email
- role
- status
properties:
id:
type: integer
email:
type: string
format: email
role:
type: string
enum:
- admin
- editor
status:
type: string
enum:
- active
- inactive
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
Post:
type: object
required:
- id
- slug
- status
- contents
properties:
id:
type: integer
slug:
type: string
status:
type: string
enum:
- draft
- published
contents:
type: array
items:
$ref: '#/PostContent'
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
PostContent:
type: object
required:
- language_code
- title
- content_markdown
properties:
language_code:
type: string
enum:
- en
- zh-Hans
- zh-Hant
title:
type: string
content_markdown:
type: string
summary:
type: string
meta_keywords:
type: string
meta_description:
type: string
Category:
type: object
required:
- id
- contents
properties:
id:
type: integer
contents:
type: array
items:
$ref: '#/CategoryContent'
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
CategoryContent:
type: object
required:
- language_code
- name
- slug
properties:
language_code:
type: string
enum:
- en
- zh-Hans
- zh-Hant
name:
type: string
description:
type: string
slug:
type: string
Contributor:
type: object
required:
- id
- name
properties:
id:
type: integer
name:
type: string
avatar_url:
type: string
format: uri
bio:
type: string
social_links:
type: array
items:
type: object
required:
- type
- value
properties:
type:
type: string
enum:
- WeChat
- Bilibili
- Douyin/TikTok
- Kuaishou
- NCM
- Xiaohongshu
- QQ_Personal
- QQ_Group
- QQ_Channel
- Zhihu
- SinaWeibo
- Feishu/Lark
- DingTalk
- Douban
- CoolAPK
- Tieba
- Keyoxide
- GitHub
- Codeberg
- SourceHut
- Forgejo
- Gitea
- Facebook
- Instagram
- Twitter/X
- Snapchat
- Telegram
- WhatsApp
- LinkedIn
- Reddit
- YouTube
- Pinterest
- Bluesky
- Mastodon
- Fediverse
- Matrix
- XMPP
- IRC
- HomePage
- AFDian
- Paypal
- LiberPay
- Patreon
- Ko-Fi
- Custom
name:
type: string
description: 'Optional name for the social link, required only for Custom type'
value:
type: string
description: The actual link or identifier value
user_id:
type: integer
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
Media:
type: object
required:
- id
- url
- mime_type
- original_name
- storage_id
- size
properties:
id:
type: integer
storage_id:
type: string
description: 存储系统中的唯一标识符
original_name:
type: string
description: 原始文件名
url:
type: string
format: uri
description: 文件访问 URL
mime_type:
type: string
description: 文件的 MIME 类型,图片将被转换为 image/webp
size:
type: integer
format: int64
description: 文件大小(字节)
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
created_by:
type: string
description: 创建者 ID
DailyCategory:
type: object
required:
- id
- contents
properties:
id:
type: integer
contents:
type: array
items:
type: object
required:
- language_code
- name
properties:
language_code:
type: string
enum:
- en
- zh-Hans
- zh-Hant
name:
type: string
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
Daily:
type: object
required:
- id
- category
- image_url
- contents
properties:
id:
type: string
pattern: '^\d{6}$'
examples:
- '250206'
category:
$ref: '#/DailyCategory'
image_url:
type: string
format: uri
contents:
type: array
items:
type: object
required:
- language_code
- quote
properties:
language_code:
type: string
enum:
- en
- zh-Hans
- zh-Hant
quote:
type: string
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time