TeamArtifacts
This should be the table reponsible for storing different artifacts that teams produce.
-
enum TeamArtifactType
- Thumbnail
- ProjectPromotion
- JamboreeBooth
- PlazaPresentation
-
entity TeamArtifact
- id
- teamID
- type
- metadata
The only reason for having metadata
is because every artifact type will naturally have many different properties.
Principles to follow:
- Listing teams and getting a team (
findTeam
) will not load artifacts by default, but only ifexpand: artifacts
is provided in the QueryParams. - All metadata must be type-defined.
This should allow us to remove the many properties we currently have in the Team
entity.