feat(media): full Clean Architecture scaffold
Media is now a complete vertical-feature package mirroring auth/blog structure: entities (models + errors), application (repositories + use-cases), infrastructure (real Payload-backed + mock siblings), interface-adapters (per-use-case controllers), DI (symbols + module + container + bind-production), integrations/api (mediaRouter), factory, contract suite, and feature integration tests. Wired into: - packages/core-api/src/root.ts (added `media: mediaRouter`) - apps/web-next/src/server/bind-production.ts (calls bindProductionMedia) - tsconfig.base.json (added @repo/media/api and ./di/bind-production aliases) 56 new tests in @repo/media (13 test files); core-api router test updated to assert media. procedures. All 26 turbo tasks green. Refactor log: §2, §4.1, §4.2, §5.1, §6.1 Spec: §6.5 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
35
pnpm-lock.yaml
generated
35
pnpm-lock.yaml
generated
@@ -383,6 +383,9 @@ importers:
|
||||
'@repo/marketing-pages':
|
||||
specifier: workspace:*
|
||||
version: link:../marketing-pages
|
||||
'@repo/media':
|
||||
specifier: workspace:*
|
||||
version: link:../media
|
||||
'@repo/navigation':
|
||||
specifier: workspace:*
|
||||
version: link:../navigation
|
||||
@@ -708,9 +711,24 @@ importers:
|
||||
|
||||
packages/media:
|
||||
dependencies:
|
||||
'@repo/core-shared':
|
||||
specifier: workspace:*
|
||||
version: link:../core-shared
|
||||
'@trpc/server':
|
||||
specifier: ^11.0.0
|
||||
version: 11.16.0(typescript@5.9.3)
|
||||
inversify:
|
||||
specifier: ^6.2.0
|
||||
version: 6.2.2(reflect-metadata@0.2.2)
|
||||
payload:
|
||||
specifier: ^3.14.0
|
||||
version: 3.81.0(graphql@16.13.2)(typescript@5.9.3)
|
||||
reflect-metadata:
|
||||
specifier: ^0.2.2
|
||||
version: 0.2.2
|
||||
zod:
|
||||
specifier: ^3.24.0
|
||||
version: 3.25.76
|
||||
devDependencies:
|
||||
'@repo/core-eslint':
|
||||
specifier: workspace:*
|
||||
@@ -721,9 +739,12 @@ importers:
|
||||
'@repo/core-typescript':
|
||||
specifier: workspace:*
|
||||
version: link:../core-typescript
|
||||
'@types/node':
|
||||
specifier: ^22.0.0
|
||||
version: 22.19.17
|
||||
vitest:
|
||||
specifier: ^3.1.0
|
||||
version: 3.2.4(@types/debug@4.1.13)(@types/node@25.5.2)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@25.0.1)(lightningcss@1.32.0)(sass@1.99.0)(tsx@4.21.0)
|
||||
version: 3.2.4(@types/debug@4.1.13)(@types/node@22.19.17)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@25.0.1)(lightningcss@1.32.0)(sass@1.99.0)(tsx@4.21.0)
|
||||
|
||||
packages/navigation:
|
||||
dependencies:
|
||||
@@ -8970,7 +8991,7 @@ snapshots:
|
||||
|
||||
'@types/busboy@1.5.4':
|
||||
dependencies:
|
||||
'@types/node': 25.5.2
|
||||
'@types/node': 22.19.17
|
||||
|
||||
'@types/chai@5.2.3':
|
||||
dependencies:
|
||||
@@ -9028,12 +9049,13 @@ snapshots:
|
||||
'@types/node@25.5.2':
|
||||
dependencies:
|
||||
undici-types: 7.18.2
|
||||
optional: true
|
||||
|
||||
'@types/parse-json@4.0.2': {}
|
||||
|
||||
'@types/pg@8.10.2':
|
||||
dependencies:
|
||||
'@types/node': 25.5.2
|
||||
'@types/node': 22.19.17
|
||||
pg-protocol: 1.13.0
|
||||
pg-types: 4.1.0
|
||||
|
||||
@@ -9072,7 +9094,7 @@ snapshots:
|
||||
|
||||
'@types/ws@8.18.1':
|
||||
dependencies:
|
||||
'@types/node': 25.5.2
|
||||
'@types/node': 22.19.17
|
||||
|
||||
'@types/yargs-parser@21.0.3': {}
|
||||
|
||||
@@ -10360,7 +10382,7 @@ snapshots:
|
||||
|
||||
happy-dom@20.8.9:
|
||||
dependencies:
|
||||
'@types/node': 25.5.2
|
||||
'@types/node': 22.19.17
|
||||
'@types/whatwg-mimetype': 3.0.2
|
||||
'@types/ws': 8.18.1
|
||||
entities: 7.0.1
|
||||
@@ -12701,7 +12723,8 @@ snapshots:
|
||||
|
||||
undici-types@6.21.0: {}
|
||||
|
||||
undici-types@7.18.2: {}
|
||||
undici-types@7.18.2:
|
||||
optional: true
|
||||
|
||||
undici@7.24.4: {}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user