feat(server): add Blob Model (#12894)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced comprehensive management for workspace blobs, including
creating, updating, soft and permanent deletion, and retrieval of blobs.
- Added the ability to list all blobs, list deleted blobs, and calculate
the total size of blobs within a workspace.

- **Tests**
- Added extensive automated tests to validate blob creation, updating,
deletion, retrieval, and aggregation functionalities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->


#### PR Dependency Tree


* **PR #12894** 👈
  * **PR #12897**

This tree was auto-generated by
[Charcoal](https://github.com/danerwilliams/charcoal)
This commit is contained in:
fengmk2
2025-07-03 13:17:59 +08:00
committed by GitHub
parent 2ea3c3da9d
commit 062537c2cf
3 changed files with 277 additions and 0 deletions
@@ -7,6 +7,7 @@ import {
import { ModuleRef } from '@nestjs/core';
import { ApplyType } from '../base';
import { BlobModel } from './blob';
import { CommentModel } from './comment';
import { CommentAttachmentModel } from './comment-attachment';
import { AppConfigModel } from './config';
@@ -52,6 +53,7 @@ const MODELS = {
appConfig: AppConfigModel,
comment: CommentModel,
commentAttachment: CommentAttachmentModel,
blob: BlobModel,
};
type ModelsType = {
@@ -103,6 +105,7 @@ const ModelsSymbolProvider: ExistingProvider = {
})
export class ModelsModule {}
export * from './blob';
export * from './comment';
export * from './comment-attachment';
export * from './common';