46 lines
1.6 KiB
Markdown
46 lines
1.6 KiB
Markdown
# Task: Add Google Drive backed DAM foundation
|
|
|
|
## Feature
|
|
|
|
`docs/FEATURES/digital-asset-management.md`
|
|
|
|
## Goal
|
|
|
|
Make the DAM model aware of organization-level Google Drive backing storage and workspace slug folders.
|
|
|
|
## Scope
|
|
|
|
- Add organization Google Drive configuration metadata.
|
|
- Add a required workspace `Slug`, unique within the owning organization.
|
|
- Generate a slug from workspace name during workspace creation.
|
|
- Allow workspace managers to update a workspace slug.
|
|
- Add DAM metadata to workspace asset responses.
|
|
- Add a workspace DAM endpoint that returns backing-store configuration, workspace folder information, and workspace assets.
|
|
- Keep actual Google Drive API folder creation, uploads, and sync out of scope.
|
|
|
|
## Likely Files
|
|
|
|
- `backend/src/Socialize.Api/Modules/Organizations/`
|
|
- `backend/src/Socialize.Api/Modules/Workspaces/`
|
|
- `backend/src/Socialize.Api/Modules/Assets/`
|
|
- `backend/src/Socialize.Api/Data/AppDbContext.cs`
|
|
- `frontend/src/features/content/views/MediaLibraryView.vue`
|
|
- `frontend/src/features/content/stores/`
|
|
|
|
## Validation
|
|
|
|
```bash
|
|
dotnet build backend/Socialize.slnx
|
|
dotnet test backend/Socialize.slnx
|
|
cd frontend && npm run build
|
|
```
|
|
|
|
## Acceptance Criteria
|
|
|
|
- [x] Organization responses include Google Drive DAM configuration metadata.
|
|
- [x] Organization connector managers can save Google Drive DAM configuration.
|
|
- [x] Workspace responses include a stable slug.
|
|
- [x] New workspaces receive a unique slug based on the workspace name.
|
|
- [x] Workspace DAM data resolves to `<drive-root>/<workspace-slug>`.
|
|
- [x] Existing manually linked Google Drive content assets remain supported.
|