@agent-foundry/replay-server 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cursor/dev.mdc +941 -0
- package/.cursor/project.mdc +17 -2
- package/.env +30 -0
- package/Dockerfile +6 -0
- package/README.md +153 -12
- package/dist/cli/render.js +14 -4
- package/dist/cli/render.js.map +1 -1
- package/dist/renderer/PuppeteerRenderer.d.ts +12 -2
- package/dist/renderer/PuppeteerRenderer.d.ts.map +1 -1
- package/dist/renderer/PuppeteerRenderer.js +23 -16
- package/dist/renderer/PuppeteerRenderer.js.map +1 -1
- package/dist/server/index.d.ts +4 -0
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +200 -46
- package/dist/server/index.js.map +1 -1
- package/dist/services/BundleManager.d.ts +99 -0
- package/dist/services/BundleManager.d.ts.map +1 -0
- package/dist/services/BundleManager.js +410 -0
- package/dist/services/BundleManager.js.map +1 -0
- package/dist/services/OSSClient.d.ts +51 -0
- package/dist/services/OSSClient.d.ts.map +1 -0
- package/dist/services/OSSClient.js +207 -0
- package/dist/services/OSSClient.js.map +1 -0
- package/dist/services/index.d.ts +7 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +7 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/types.d.ts +73 -0
- package/dist/services/types.d.ts.map +1 -0
- package/dist/services/types.js +5 -0
- package/dist/services/types.js.map +1 -0
- package/docker-compose.local.yml +8 -0
- package/env.example +30 -0
- package/package.json +7 -3
- package/restart.sh +5 -0
- package/samples/jump_arena_0_ja-mks5um2x-nksbmz.json +1907 -0
- package/scripts/render-pipeline.sh +657 -0
- package/scripts/test-bundle-preload.sh +20 -0
- package/scripts/test-service-sts.sh +176 -0
- package/src/cli/render.ts +18 -7
- package/src/renderer/PuppeteerRenderer.ts +41 -21
- package/src/server/index.ts +249 -68
- package/src/services/BundleManager.ts +503 -0
- package/src/services/OSSClient.ts +286 -0
- package/src/services/index.ts +7 -0
- package/src/services/types.ts +78 -0
package/.cursor/project.mdc
CHANGED
|
@@ -151,8 +151,20 @@ sequenceDiagram
|
|
|
151
151
|
#### 4. Game URL Resolution Priority
|
|
152
152
|
|
|
153
153
|
1. `config.gameUrl` (explicit URL in render request)
|
|
154
|
-
2. `manifest.bundleId` →
|
|
155
|
-
3. `
|
|
154
|
+
2. `manifest.bundleId` + `manifest.bundleUrl` → download from OSS, cache, and serve
|
|
155
|
+
3. `manifest.bundleId` → `/bundles/<bundleId>/` (from cache)
|
|
156
|
+
4. `GAME_URL` environment variable (fallback)
|
|
157
|
+
|
|
158
|
+
#### 5. Dynamic Bundle Downloads
|
|
159
|
+
|
|
160
|
+
**Why**: Support multiple games without rebuilding Docker image. Bundles downloaded on-demand from OSS.
|
|
161
|
+
|
|
162
|
+
**How**:
|
|
163
|
+
- Client provides `bundleUrl` in manifest pointing to TAR.GZ archive on OSS
|
|
164
|
+
- Server gets STS credentials from BFF API
|
|
165
|
+
- Downloads and extracts bundle to cache directory
|
|
166
|
+
- LRU eviction when cache exceeds `MAX_CACHE_SIZE`
|
|
167
|
+
- Bundles marked "in use" during rendering are protected from eviction
|
|
156
168
|
|
|
157
169
|
---
|
|
158
170
|
|
|
@@ -558,6 +570,9 @@ ACR_NAMESPACE=your-namespace ./scripts/deploy-aliyun.sh
|
|
|
558
570
|
| `BUNDLES_DIR` | `./bundles` | Directory containing game bundles |
|
|
559
571
|
| `OUTPUT_DIR` | `./output` | Directory for rendered videos |
|
|
560
572
|
| `PUPPETEER_EXECUTABLE_PATH` | `/usr/bin/chromium` | Chromium executable path |
|
|
573
|
+
| `BFF_BASE_URL` | `http://localhost:11001` | BFF API URL for STS credentials |
|
|
574
|
+
| `BFF_SERVICE_TOKEN` | - | Optional service-to-service auth token |
|
|
575
|
+
| `MAX_CACHE_SIZE` | `10737418240` | Max bundle cache size in bytes (10GB) |
|
|
561
576
|
|
|
562
577
|
### Render Configuration
|
|
563
578
|
|
package/.env
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Replay Server Environment Variables
|
|
2
|
+
|
|
3
|
+
# Server port
|
|
4
|
+
PORT=3001
|
|
5
|
+
|
|
6
|
+
# Default game URL (fallback when no bundleId specified)
|
|
7
|
+
GAME_URL=http://localhost:3000
|
|
8
|
+
|
|
9
|
+
# Directory containing game bundles
|
|
10
|
+
BUNDLES_DIR=./bundles
|
|
11
|
+
|
|
12
|
+
# Directory for rendered video output
|
|
13
|
+
OUTPUT_DIR=./output
|
|
14
|
+
|
|
15
|
+
# Puppeteer executable path (for containerized environments)
|
|
16
|
+
PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
|
|
17
|
+
|
|
18
|
+
# =============================================================================
|
|
19
|
+
# Bundle Download Configuration
|
|
20
|
+
# =============================================================================
|
|
21
|
+
|
|
22
|
+
# BFF API URL for STS credentials (required for dynamic bundle downloads)
|
|
23
|
+
BFF_BASE_URL=http://localhost:11001
|
|
24
|
+
|
|
25
|
+
# Service-to-service auth token for BFF (REQUIRED for bundle downloads)
|
|
26
|
+
# Set this to the value of SUPABASE_JWT_SECRET from BFF's .env file
|
|
27
|
+
BFF_SERVICE_TOKEN=ijwt8jbx3Kkf2XDE8bR3AViGJchA5VppbOwpBFTF
|
|
28
|
+
|
|
29
|
+
# Maximum bundle cache size in bytes (default: 10GB = 10737418240)
|
|
30
|
+
MAX_CACHE_SIZE=10737418240
|
package/Dockerfile
CHANGED
|
@@ -144,6 +144,12 @@ WORKDIR /app/packages/replay-server
|
|
|
144
144
|
ENV PORT=9000
|
|
145
145
|
ENV BUNDLES_DIR=/app/packages/replay-server/bundles
|
|
146
146
|
ENV OUTPUT_DIR=/app/packages/replay-server/output
|
|
147
|
+
# BFF API URL for STS credentials (required for dynamic bundle downloads)
|
|
148
|
+
ENV BFF_BASE_URL=http://localhost:11001
|
|
149
|
+
# Optional: Service-to-service auth token for BFF
|
|
150
|
+
# ENV BFF_SERVICE_TOKEN=
|
|
151
|
+
# Maximum cache size in bytes (default: 10GB)
|
|
152
|
+
ENV MAX_CACHE_SIZE=10737418240
|
|
147
153
|
|
|
148
154
|
# Expose port
|
|
149
155
|
EXPOSE 9000
|
package/README.md
CHANGED
|
@@ -20,11 +20,11 @@ The replay-server can host game bundles internally, eliminating the need for a s
|
|
|
20
20
|
|
|
21
21
|
```
|
|
22
22
|
┌──────────────────────────────────────────────────────────────┐
|
|
23
|
-
│ replay-server
|
|
24
|
-
│ ┌─────────────┐ ┌──────────────┐ ┌─────────────────┐
|
|
25
|
-
│ │ Bundle Host │ │ Puppeteer │ │ HTTP API │
|
|
26
|
-
│ │ /bundles/* │◄──│ Renderer │◄──│ POST /render │
|
|
27
|
-
│ └─────────────┘ └──────────────┘ └─────────────────┘
|
|
23
|
+
│ replay-server │
|
|
24
|
+
│ ┌─────────────┐ ┌──────────────┐ ┌─────────────────┐ │
|
|
25
|
+
│ │ Bundle Host │ │ Puppeteer │ │ HTTP API │ │
|
|
26
|
+
│ │ /bundles/* │◄──│ Renderer │◄──│ POST /render │ │
|
|
27
|
+
│ └─────────────┘ └──────────────┘ └─────────────────┘ │
|
|
28
28
|
│ │ ▲ │
|
|
29
29
|
│ ▼ │ │
|
|
30
30
|
│ bundles/game-life-restart/ manifest.json │
|
|
@@ -84,7 +84,59 @@ cd packages/replay-server
|
|
|
84
84
|
pnpm install
|
|
85
85
|
```
|
|
86
86
|
|
|
87
|
-
###
|
|
87
|
+
### Render Pipeline Script (Recommended)
|
|
88
|
+
|
|
89
|
+
The **render-pipeline.sh** script provides a complete end-to-end workflow that automates:
|
|
90
|
+
- Server health checking (with auto-start option)
|
|
91
|
+
- Bundle verification and preloading
|
|
92
|
+
- Job submission via HTTP API
|
|
93
|
+
- Status polling with progress display
|
|
94
|
+
- Automatic video download
|
|
95
|
+
|
|
96
|
+
```bash
|
|
97
|
+
cd packages/replay-server
|
|
98
|
+
|
|
99
|
+
# Basic usage (server must be running)
|
|
100
|
+
./scripts/render-pipeline.sh -m samples/life-replay-lr-mkcdfzc2-u8cqbs.json
|
|
101
|
+
|
|
102
|
+
# With custom output and settings
|
|
103
|
+
./scripts/render-pipeline.sh \
|
|
104
|
+
-m samples/life-replay-lr-mkcdfzc2-u8cqbs.json \
|
|
105
|
+
-o videos/my-replay.mp4 \
|
|
106
|
+
--width 720 \
|
|
107
|
+
--height 1280 \
|
|
108
|
+
--fps 30
|
|
109
|
+
|
|
110
|
+
# Auto-start server if needed
|
|
111
|
+
./scripts/render-pipeline.sh -m samples/replay.json --start-server
|
|
112
|
+
|
|
113
|
+
# Build bundle locally if missing
|
|
114
|
+
./scripts/render-pipeline.sh -m samples/replay.json --build-bundle
|
|
115
|
+
|
|
116
|
+
# Verbose output for debugging
|
|
117
|
+
./scripts/render-pipeline.sh -m samples/replay.json --verbose
|
|
118
|
+
|
|
119
|
+
# Show help
|
|
120
|
+
./scripts/render-pipeline.sh --help
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
**Prerequisites:**
|
|
124
|
+
- `curl` - HTTP requests (pre-installed on most systems)
|
|
125
|
+
- `jq` - JSON parsing (`brew install jq` on macOS, `apt install jq` on Linux)
|
|
126
|
+
|
|
127
|
+
**Features:**
|
|
128
|
+
- ✅ Idempotent - safe to run multiple times
|
|
129
|
+
- ✅ Automatic bundle downloading from OSS if `bundleUrl` provided
|
|
130
|
+
- ✅ Real-time progress display with status updates
|
|
131
|
+
- ✅ Colored output for better readability
|
|
132
|
+
- ✅ Robust error handling with clear messages
|
|
133
|
+
- ✅ Uses `/api/bundles` API endpoints (separated from static file serving at `/bundles`)
|
|
134
|
+
|
|
135
|
+
**Note:** Bundle management APIs are under `/api/bundles/*` prefix, while static bundle files are served at `/bundles/<bundleId>/`. This separation prevents route conflicts between API endpoints and static file serving.
|
|
136
|
+
|
|
137
|
+
### CLI Tool (Direct Rendering)
|
|
138
|
+
|
|
139
|
+
For direct rendering without the HTTP server:
|
|
88
140
|
|
|
89
141
|
```bash
|
|
90
142
|
# From project root (recommended)
|
|
@@ -177,9 +229,9 @@ Response:
|
|
|
177
229
|
}
|
|
178
230
|
```
|
|
179
231
|
|
|
180
|
-
**GET /bundles** - List available game bundles
|
|
232
|
+
**GET /api/bundles** - List available game bundles
|
|
181
233
|
```bash
|
|
182
|
-
curl http://localhost:3001/bundles
|
|
234
|
+
curl http://localhost:3001/api/bundles
|
|
183
235
|
```
|
|
184
236
|
|
|
185
237
|
Response:
|
|
@@ -285,13 +337,102 @@ Environment variables:
|
|
|
285
337
|
| `GAME_URL` | http://localhost:5173 | Fallback URL when no bundleId specified |
|
|
286
338
|
| `BUNDLES_DIR` | ./bundles | Directory containing game bundles |
|
|
287
339
|
| `OUTPUT_DIR` | ./output | Directory for rendered videos |
|
|
340
|
+
| `BFF_BASE_URL` | http://localhost:11001 | BFF API URL for STS credentials |
|
|
341
|
+
| `BFF_SERVICE_TOKEN` | - | **Required** for bundle downloads. Set to BFF's `SUPABASE_JWT_SECRET` |
|
|
342
|
+
| `MAX_CACHE_SIZE` | 10737418240 | Max bundle cache size in bytes (10GB) |
|
|
343
|
+
|
|
344
|
+
### Service-to-Service Authentication
|
|
345
|
+
|
|
346
|
+
For dynamic bundle downloads from OSS, the replay-server needs to authenticate with the BFF service. This uses a service-to-service authentication mechanism:
|
|
347
|
+
|
|
348
|
+
1. **Get `SUPABASE_JWT_SECRET` from BFF**: Copy the value of `SUPABASE_JWT_SECRET` from the BFF service's `.env` file
|
|
349
|
+
2. **Set `BFF_SERVICE_TOKEN`**: Configure this value in replay-server's `.env`:
|
|
350
|
+
```env
|
|
351
|
+
BFF_SERVICE_TOKEN=your-supabase-jwt-secret-from-bff
|
|
352
|
+
```
|
|
353
|
+
3. **How it works**: The replay-server calls `POST /studio/service/sts` on the BFF with this token as a Bearer token. BFF validates the token matches its `SUPABASE_JWT_SECRET` and returns STS credentials for OSS access.
|
|
354
|
+
|
|
355
|
+
**Note:** This endpoint does not require user authentication - it's designed for internal service communication only.
|
|
288
356
|
|
|
289
357
|
### Game URL Resolution Order
|
|
290
358
|
|
|
291
359
|
When rendering a video, the game URL is resolved in this order:
|
|
292
360
|
1. `config.gameUrl` (explicit URL in render request)
|
|
293
|
-
2. `manifest.bundleId` (
|
|
294
|
-
3. `
|
|
361
|
+
2. `manifest.bundleId` + `manifest.bundleUrl` (downloads from OSS if not cached)
|
|
362
|
+
3. `manifest.bundleId` (serves from cached `/bundles/<bundleId>/`)
|
|
363
|
+
4. `GAME_URL` environment variable (fallback)
|
|
364
|
+
|
|
365
|
+
## Dynamic Bundle Downloads
|
|
366
|
+
|
|
367
|
+
The replay-server supports downloading game bundles on-demand from Alibaba Cloud OSS.
|
|
368
|
+
|
|
369
|
+
### How It Works
|
|
370
|
+
|
|
371
|
+
1. Client includes `bundleId` and `bundleUrl` in the render request manifest
|
|
372
|
+
2. Server checks if bundle is cached locally
|
|
373
|
+
3. If not cached, server gets STS credentials from BFF API
|
|
374
|
+
4. Server downloads and extracts the TAR.GZ bundle from OSS
|
|
375
|
+
5. Bundle is cached for future requests (LRU eviction when cache is full)
|
|
376
|
+
|
|
377
|
+
### Bundle Management Endpoints
|
|
378
|
+
|
|
379
|
+
**POST /api/bundles/preload** - Preload a bundle (async download)
|
|
380
|
+
```bash
|
|
381
|
+
curl -X POST http://localhost:3001/api/bundles/preload \
|
|
382
|
+
-H "Content-Type: application/json" \
|
|
383
|
+
-d '{
|
|
384
|
+
"bundleId": "game-vocab-master",
|
|
385
|
+
"bundleUrl": "https://oss-bucket.oss-cn-beijing.aliyuncs.com/bundles/game-vocab-master.tar.gz"
|
|
386
|
+
}'
|
|
387
|
+
```
|
|
388
|
+
|
|
389
|
+
**GET /api/bundles/stats** - Get cache and download statistics
|
|
390
|
+
```bash
|
|
391
|
+
curl http://localhost:3001/api/bundles/stats
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
Response:
|
|
395
|
+
```json
|
|
396
|
+
{
|
|
397
|
+
"cache": {
|
|
398
|
+
"used": 15728640,
|
|
399
|
+
"max": 10737418240,
|
|
400
|
+
"usedPercent": 0.15,
|
|
401
|
+
"bundleCount": 2
|
|
402
|
+
},
|
|
403
|
+
"downloads": {
|
|
404
|
+
"active": 1,
|
|
405
|
+
"completed": 15,
|
|
406
|
+
"failed": 0
|
|
407
|
+
}
|
|
408
|
+
}
|
|
409
|
+
```
|
|
410
|
+
|
|
411
|
+
**DELETE /api/bundles/:bundleId** - Remove bundle from cache
|
|
412
|
+
```bash
|
|
413
|
+
curl -X DELETE http://localhost:3001/api/bundles/game-vocab-master
|
|
414
|
+
```
|
|
415
|
+
|
|
416
|
+
### Render Request with bundleUrl
|
|
417
|
+
|
|
418
|
+
```bash
|
|
419
|
+
curl -X POST http://localhost:3001/render \
|
|
420
|
+
-H "Content-Type: application/json" \
|
|
421
|
+
-d '{
|
|
422
|
+
"manifest": {
|
|
423
|
+
"schema": "lifeRestart.replay.v1",
|
|
424
|
+
"bundleId": "game-vocab-master",
|
|
425
|
+
"bundleUrl": "https://oss-bucket.oss-cn-beijing.aliyuncs.com/bundles/game-vocab-master.tar.gz",
|
|
426
|
+
"gameId": "vm-abc123",
|
|
427
|
+
"timeline": [...],
|
|
428
|
+
"highlights": []
|
|
429
|
+
},
|
|
430
|
+
"config": {
|
|
431
|
+
"width": 1080,
|
|
432
|
+
"height": 1920
|
|
433
|
+
}
|
|
434
|
+
}'
|
|
435
|
+
```
|
|
295
436
|
|
|
296
437
|
## Output
|
|
297
438
|
|
|
@@ -439,7 +580,7 @@ curl http://localhost:3001/health
|
|
|
439
580
|
# }
|
|
440
581
|
|
|
441
582
|
# List available bundles
|
|
442
|
-
curl http://localhost:3001/bundles
|
|
583
|
+
curl http://localhost:3001/api/bundles
|
|
443
584
|
```
|
|
444
585
|
|
|
445
586
|
##### 3.4 Test Render API with bundleId
|
|
@@ -600,7 +741,7 @@ docker buildx imagetools inspect ${ACR_REGISTRY}/${ACR_NAMESPACE}/${IMAGE_NAME}:
|
|
|
600
741
|
curl https://<your-function-url>/health
|
|
601
742
|
|
|
602
743
|
# Check available bundles
|
|
603
|
-
curl https://<your-function-url>/bundles
|
|
744
|
+
curl https://<your-function-url>/api/bundles
|
|
604
745
|
|
|
605
746
|
# **NEW: Debug Chromium installation**
|
|
606
747
|
curl https://<your-function-url>/debug/chrome
|
package/dist/cli/render.js
CHANGED
|
@@ -151,11 +151,21 @@ async function main() {
|
|
|
151
151
|
console.log('📄 Loading manifest...');
|
|
152
152
|
const manifest = await loadManifest(args);
|
|
153
153
|
console.log(` Game ID: ${manifest.gameId}`);
|
|
154
|
-
|
|
155
|
-
|
|
154
|
+
// Handle optional timeline
|
|
155
|
+
const timelineLength = Array.isArray(manifest.timeline) ? manifest.timeline.length : 0;
|
|
156
|
+
if (timelineLength > 0) {
|
|
157
|
+
console.log(` Timeline: ${timelineLength} ages`);
|
|
158
|
+
}
|
|
159
|
+
// Handle optional highlights
|
|
160
|
+
const highlightsLength = Array.isArray(manifest.highlights) ? manifest.highlights.length : 0;
|
|
161
|
+
if (highlightsLength > 0) {
|
|
162
|
+
console.log(` Highlights: ${highlightsLength}`);
|
|
163
|
+
}
|
|
156
164
|
// Estimate duration
|
|
157
|
-
const estimatedDuration =
|
|
158
|
-
|
|
165
|
+
const estimatedDuration = timelineLength * args.secondsPerAge;
|
|
166
|
+
if (estimatedDuration > 0) {
|
|
167
|
+
console.log(` Estimated video duration: ${estimatedDuration}s`);
|
|
168
|
+
}
|
|
159
169
|
console.log('');
|
|
160
170
|
// Create output directory
|
|
161
171
|
const outputDir = path.dirname(path.resolve(args.output));
|
package/dist/cli/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/cli/render.ts"],"names":[],"mappings":";AACA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/cli/render.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,17 @@
|
|
|
8
8
|
* 4. Captures screenshots as JPEG buffers and streams directly to FFmpeg via stdin
|
|
9
9
|
* 5. Encodes video using libx264 (CPU) by default, or h264_nvenc if explicitly enabled
|
|
10
10
|
*/
|
|
11
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Generic replay manifest interface
|
|
13
|
+
* Supports any game type - games interpret their own schemas
|
|
14
|
+
*/
|
|
15
|
+
export interface GenericReplayManifest {
|
|
16
|
+
schema: string;
|
|
17
|
+
bundleId?: string;
|
|
18
|
+
gameId: string;
|
|
19
|
+
timeline?: unknown[];
|
|
20
|
+
[key: string]: unknown;
|
|
21
|
+
}
|
|
12
22
|
export interface RenderConfig {
|
|
13
23
|
/** URL of the game (can be local file:// or http://) */
|
|
14
24
|
gameUrl: string;
|
|
@@ -50,7 +60,7 @@ export declare class PuppeteerRenderer {
|
|
|
50
60
|
/**
|
|
51
61
|
* Render a replay manifest to video
|
|
52
62
|
*/
|
|
53
|
-
render(manifest:
|
|
63
|
+
render(manifest: GenericReplayManifest, config: RenderConfig): Promise<RenderResult>;
|
|
54
64
|
private initBrowser;
|
|
55
65
|
private loadGame;
|
|
56
66
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PuppeteerRenderer.d.ts","sourceRoot":"","sources":["../../src/renderer/PuppeteerRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"PuppeteerRenderer.d.ts","sourceRoot":"","sources":["../../src/renderer/PuppeteerRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IACzB,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC;IAEhB,wBAAwB;IACxB,UAAU,EAAE,MAAM,CAAC;IAEnB,uBAAuB;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,wBAAwB;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,8EAA8E;IAC9E,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,8EAA8E;IAC9E,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,oCAAoC;IACpC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,IAAI,CAAC;CACnD;AAED,MAAM,WAAW,cAAc;IAC3B,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAWD,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,cAAc,CAAkD;IAExE;;OAEG;IACG,MAAM,CAAC,QAAQ,EAAE,qBAAqB,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;YAmD5E,WAAW;YAqDX,QAAQ;IAiGtB;;;OAGG;YACW,sBAAsB;IAYpC;;OAEG;YACW,iCAAiC;IA4K/C;;OAEG;IACH,OAAO,CAAC,YAAY;YA4BN,YAAY;IAQ1B,OAAO,CAAC,cAAc;CAWzB"}
|
|
@@ -47,7 +47,9 @@ export class PuppeteerRenderer {
|
|
|
47
47
|
this.reportProgress(config.onProgress, 'init', 0, 1, 'Loading game...');
|
|
48
48
|
await this.loadGame(fullConfig.gameUrl, manifest);
|
|
49
49
|
// Capture and encode frames in streaming mode
|
|
50
|
-
|
|
50
|
+
// Handle optional timeline - games may not have timelines
|
|
51
|
+
const timelineLength = Array.isArray(manifest.timeline) ? manifest.timeline.length : 1;
|
|
52
|
+
const frameCount = timelineLength * fullConfig.secondsPerAge * fullConfig.fps;
|
|
51
53
|
this.reportProgress(config.onProgress, 'capture', 0, frameCount, 'Starting capture & encode...');
|
|
52
54
|
await this.captureAndEncodeFrames(manifest, fullConfig, config.onProgress);
|
|
53
55
|
const duration = (Date.now() - startTime) / 1000;
|
|
@@ -130,24 +132,27 @@ export class PuppeteerRenderer {
|
|
|
130
132
|
timeout: 30000,
|
|
131
133
|
});
|
|
132
134
|
console.log('📼 Page loaded, waiting for React to initialize...');
|
|
133
|
-
// Wait for React to initialize
|
|
135
|
+
// Wait for React to initialize
|
|
136
|
+
// Try to detect common app containers, but don't fail if not found
|
|
134
137
|
try {
|
|
135
138
|
await this.page.waitForFunction(() => {
|
|
136
|
-
//
|
|
137
|
-
const
|
|
138
|
-
const
|
|
139
|
-
|
|
140
|
-
|
|
139
|
+
// Check for common app container patterns
|
|
140
|
+
const ionApp = document.querySelector('ion-app');
|
|
141
|
+
const rootDiv = document.querySelector('#root');
|
|
142
|
+
const appDiv = document.querySelector('[id*="app"], [class*="app"]');
|
|
143
|
+
// If using Ionic, wait for loading to complete
|
|
144
|
+
if (ionApp) {
|
|
145
|
+
const loading = document.querySelector('ion-spinner');
|
|
146
|
+
return loading === null;
|
|
147
|
+
}
|
|
148
|
+
// Otherwise, just check if root is mounted
|
|
149
|
+
return rootDiv !== null || appDiv !== null;
|
|
150
|
+
}, { timeout: 10000 });
|
|
151
|
+
console.log('📼 App container detected');
|
|
141
152
|
}
|
|
142
153
|
catch (error) {
|
|
143
|
-
//
|
|
144
|
-
|
|
145
|
-
console.error('📼 Page errors detected:', this.pageErrors);
|
|
146
|
-
}
|
|
147
|
-
if (this.failedRequests.length > 0) {
|
|
148
|
-
console.error('📼 Failed requests:', this.failedRequests);
|
|
149
|
-
}
|
|
150
|
-
throw error;
|
|
154
|
+
// Non-fatal - continue anyway
|
|
155
|
+
console.log('📼 App container detection timed out, continuing anyway...');
|
|
151
156
|
}
|
|
152
157
|
// Log any errors that occurred (but didn't prevent initialization)
|
|
153
158
|
if (this.pageErrors.length > 0) {
|
|
@@ -213,7 +218,9 @@ export class PuppeteerRenderer {
|
|
|
213
218
|
async captureAndEncodeFramesWithEncoder(manifest, config, encoder, onProgress) {
|
|
214
219
|
if (!this.page)
|
|
215
220
|
throw new Error('Browser not initialized');
|
|
216
|
-
|
|
221
|
+
// Handle optional timeline - games may not have timelines
|
|
222
|
+
const timelineLength = Array.isArray(manifest.timeline) ? manifest.timeline.length : 1;
|
|
223
|
+
const totalAges = timelineLength;
|
|
217
224
|
const framesPerAge = config.secondsPerAge * config.fps;
|
|
218
225
|
const totalFrames = totalAges * framesPerAge;
|
|
219
226
|
console.log(`📼 Using encoder: ${encoder}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PuppeteerRenderer.js","sourceRoot":"","sources":["../../src/renderer/PuppeteerRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,SAA4B,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AAgDpD,MAAM,cAAc,GAAG;IACnB,KAAK,EAAE,GAAG;IACV,MAAM,EAAE,IAAI;IACZ,GAAG,EAAE,EAAE;IACP,aAAa,EAAE,GAAG;IAClB,aAAa,EAAE,KAAK;IACpB,uBAAuB,EAAE,KAAK,EAAE,0BAA0B;CAC7D,CAAC;AAEF,MAAM,OAAO,iBAAiB;IAClB,OAAO,GAAmB,IAAI,CAAC;IAC/B,IAAI,GAAgB,IAAI,CAAC;IACzB,UAAU,GAAa,EAAE,CAAC;IAC1B,cAAc,GAA+C,EAAE,CAAC;IAExE;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,QAA0B,EAAE,MAAoB;QACzD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAyC;YACrD,GAAG,cAAc;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,cAAc,CAAC,KAAK;YAC3C,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM;YAC9C,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,cAAc,CAAC,GAAG;YACrC,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,cAAc,CAAC,aAAa;YACnE,uBAAuB,EAAE,MAAM,CAAC,uBAAuB,IAAI,cAAc,CAAC,uBAAuB;YACjG,UAAU,EAAE,MAAM,CAAC,UAAU;SAChC,CAAC;QAEF,IAAI,CAAC;YACD,qBAAqB;YACrB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,sBAAsB,CAAC,CAAC;YAC7E,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAEnC,mBAAmB;YACnB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC;YACxE,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAElD,8CAA8C;YAC9C,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,UAAU,CAAC,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC;YACxF,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,8BAA8B,CAAC,CAAC;YACjG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;YAE3E,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC;YACjD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,gBAAgB,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAEjG,OAAO;gBACH,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,QAAQ;aACX,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;YAEpE,OAAO;gBACH,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,YAAY;aACtB,CAAC;QACN,CAAC;gBAAS,CAAC;YACP,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC9B,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,MAA4C;QAClE,IAAI,CAAC,OAAO,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC;YAClC,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,mBAAmB;YAC5E,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,OAAO,EAAE,4BAA4B;YAC9C,MAAM,EAAE,IAAI,EAAE,wCAAwC;YACtD,IAAI,EAAE;gBACF,cAAc;gBACd,0BAA0B;gBAC1B,yBAAyB,EAAE,kCAAkC;gBAC7D,aAAa,EAAE,kCAAkC;gBACjD,kBAAkB,EAAE,sCAAsC;gBAC1D,eAAe;gBACf,+BAA+B;gBAC/B,iCAAiC;gBACjC,wBAAwB;gBACxB,sBAAsB;gBACtB,gBAAgB;gBAChB,qBAAqB;gBACrB,0BAA0B;gBAC1B,cAAc;gBACd,gBAAgB;gBAChB,oCAAoC;gBACpC,iBAAiB,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE;aACnD;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACzC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;YACxB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,iBAAiB,EAAE,CAAC;SACvB,CAAC,CAAC;QAEH,wBAAwB;QACxB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QAEzB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;YAChC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACpC,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,EAAE;YACtC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;gBACrB,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;gBAClB,SAAS,EAAE,OAAO,EAAE,SAAS;aAChC,CAAC,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,OAAe,EAAE,QAA0B;QAC9D,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAE3D,oDAAoD;QACpD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7B,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEvC,OAAO,CAAC,GAAG,CAAC,oBAAoB,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAElD,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;YACjC,SAAS,EAAE,cAAc;YACzB,OAAO,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QAElE,6DAA6D;QAC7D,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE;gBACjC,iEAAiE;gBACjE,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;gBAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;gBACtD,OAAO,GAAG,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI,CAAC;YAC5C,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,4BAA4B;YAC5B,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAC/D,CAAC;YACD,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjC,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YAC9D,CAAC;YACD,MAAM,KAAK,CAAC;QAChB,CAAC;QAED,mEAAmE;QACnE,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1E,CAAC;QACD,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,iCAAiC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACzE,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;QAE3D,8CAA8C;QAC9C,MAAM,UAAU,GAAG,CAAC,CAAC;QACrB,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,OAAO,UAAU,GAAG,UAAU,IAAI,CAAC,OAAO,EAAE,CAAC;YACzC,6BAA6B;YAC7B,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAoB,EAAE,EAAE;gBAC9C,gDAAgD;gBAC/C,MAAsD,CAAC,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBAEvG,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;gBAE1D,oCAAoC;gBACpC,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,wBAAwB,EAAE;oBAC3D,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;iBACnC,CAAC,CAAC,CAAC;YACR,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;YAE7B,sCAAsC;YACtC,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,4BAA4B,EAAE;oBAC1D,OAAO,EAAE,IAAI;iBAChB,CAAC,CAAC;gBACH,OAAO,GAAG,IAAI,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;YACzC,CAAC;YAAC,MAAM,CAAC;gBACL,UAAU,EAAE,CAAC;gBACb,OAAO,CAAC,GAAG,CAAC,YAAY,UAAU,IAAI,UAAU,+BAA+B,CAAC,CAAC;gBAEjF,IAAI,UAAU,GAAG,UAAU,EAAE,CAAC;oBAC1B,2BAA2B;oBAC3B,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC3D,CAAC;YACL,CAAC;QACL,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAC;YACvF,0CAA0C;YAC1C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAC5D,CAAC;QAED,sCAAsC;QACtC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,sBAAsB,CAChC,QAA0B,EAC1B,MAA4C,EAC5C,UAA+C;QAE/C,qCAAqC;QACrC,MAAM,OAAO,GAAG,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1E,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,4BAA4B,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC;QAEhI,MAAM,IAAI,CAAC,iCAAiC,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IACxF,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iCAAiC,CAC3C,QAA0B,EAC1B,MAA4C,EAC5C,OAAiC,EACjC,UAA+C;QAE/C,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAE3D,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC3C,MAAM,YAAY,GAAG,MAAM,CAAC,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC;QACvD,MAAM,WAAW,GAAG,SAAS,GAAG,YAAY,CAAC;QAE7C,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,EAAE,CAAC,CAAC;QAE5C,yCAAyC;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAElD,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,YAAY,GAAG,EAAE,CAAC;QAEtB,+CAA+C;QAC/C,IAAI,aAAa,GAAwB,IAAI,CAAC;QAC9C,IAAI,YAAY,GAAkC,IAAI,CAAC;QACvD,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,eAAe,GAA0B,IAAI,CAAC;QAElD,4DAA4D;QAC5D,MAAM,eAAe,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1D,aAAa,GAAG,OAAO,CAAC;YACxB,YAAY,GAAG,MAAM,CAAC;YAEtB,2EAA2E;YAC3E,eAAe,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC9B,IAAI,CAAC,YAAY,EAAE,CAAC;oBAChB,YAAY,GAAG,IAAI,CAAC;oBACpB,MAAM,YAAY,GAAG,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;oBACjG,MAAM,CAAC,YAAY,CAAC,CAAC;oBACrB,8BAA8B;oBAC9B,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;wBAC3B,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC3B,CAAC;gBACL,CAAC;YACL,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,oBAAoB;QAC3C,CAAC,CAAC,CAAC;QAEH,0DAA0D;QAC1D,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;YACvC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/B,YAAY,IAAI,MAAM,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,+BAA+B;QAC/B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;YAC9B,IAAI,YAAY,IAAI,CAAC,YAAY,EAAE,CAAC;gBAChC,YAAY,GAAG,IAAI,CAAC;gBACpB,IAAI,eAAe;oBAAE,YAAY,CAAC,eAAe,CAAC,CAAC;gBACnD,YAAY,CAAC,IAAI,KAAK,CAAC,2BAA2B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACtE,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,qDAAqD;QACrD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAY,EAAE,EAAE;YAChC,IAAI,YAAY;gBAAE,OAAO,CAAC,yBAAyB;YACnD,YAAY,GAAG,IAAI,CAAC;YAEpB,IAAI,eAAe,EAAE,CAAC;gBAClB,YAAY,CAAC,eAAe,CAAC,CAAC;YAClC,CAAC;YAED,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACb,IAAI,aAAa,EAAE,CAAC;oBAChB,aAAa,EAAE,CAAC;gBACpB,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,2BAA2B,IAAI,aAAa,YAAY,EAAE,CAAC,CAAC;gBACpF,IAAI,YAAY,EAAE,CAAC;oBACf,YAAY,CAAC,KAAK,CAAC,CAAC;gBACxB,CAAC;YACL,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,oCAAoC;QACpC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC;YACD,4BAA4B;YAC5B,KAAK,IAAI,QAAQ,GAAG,CAAC,EAAE,QAAQ,GAAG,SAAS,EAAE,QAAQ,EAAE,EAAE,CAAC;gBACtD,kCAAkC;gBAClC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;oBAC1B,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBAC7D,CAAC,CAAC,CAAC;gBAEH,2BAA2B;gBAC3B,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;gBAEvD,8BAA8B;gBAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;oBACpC,kDAAkD;oBAClD,IAAI,YAAY,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;oBAC1D,CAAC;oBAED,oCAAoC;oBACpC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;wBAChD,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,EAAE;wBACX,QAAQ,EAAE,QAAQ;qBACrB,CAAW,CAAC;oBAEb,8BAA8B;oBAC9B,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;wBAC1C,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;wBAC1D,IAAI,CAAC,YAAY,EAAE,CAAC;4BAChB,yCAAyC;4BACzC,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gCAChC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oCACf,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gCACxC,CAAC;qCAAM,CAAC;oCACJ,OAAO,EAAE,CAAC;gCACd,CAAC;4BACL,CAAC,CAAC,CAAC;wBACP,CAAC;oBACL,CAAC;oBAED,UAAU,EAAE,CAAC;oBAEb,kBAAkB;oBAClB,IAAI,UAAU,GAAG,MAAM,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;wBAChC,IAAI,CAAC,cAAc,CACf,UAAU,EACV,SAAS,EACT,UAAU,EACV,WAAW,EACX,8BAA8B,UAAU,IAAI,WAAW,KAAK,OAAO,GAAG,CACzE,CAAC;oBACN,CAAC;oBAED,6BAA6B;oBAC7B,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,GAAG,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC7E,CAAC;YACL,CAAC;YAED,qCAAqC;YACrC,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;gBAC1C,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACvB,CAAC;YAED,qCAAqC;YACrC,qEAAqE;YACrE,MAAM,eAAe,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,mBAAmB;YACnB,IAAI,CAAC,YAAY,EAAE,CAAC;gBAChB,YAAY,GAAG,IAAI,CAAC;gBACpB,IAAI,eAAe,EAAE,CAAC;oBAClB,YAAY,CAAC,eAAe,CAAC,CAAC;gBAClC,CAAC;gBACD,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;oBAC1C,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC3B,CAAC;gBACD,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC3B,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC3B,CAAC;YACL,CAAC;YACD,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAED;;OAEG;IACK,YAAY,CAChB,OAAiC,EACjC,MAA4C;QAE5C,MAAM,IAAI,GAAG;YACT,IAAI,EAAE,mBAAmB;YACzB,IAAI,EAAE,YAAY,EAAE,kBAAkB;YACtC,SAAS,EAAE,OAAO,EAAE,qBAAqB;YACzC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,kBAAkB;YAC5C,IAAI,EAAE,GAAG,EAAE,kBAAkB;YAC7B,MAAM,EAAE,OAAO,EAAE,gBAAgB;YACjC,SAAS,EAAE,MAAM,EAAE,kBAAkB;YACrC,MAAM,EAAE,IAAI,EAAE,8DAA8D;YAC5E,UAAU,EAAE,SAAS,EAAE,iCAAiC;YACxD,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,mBAAmB;YAC7C,WAAW,EAAE,YAAY,EAAE,qCAAqC;YAChE,MAAM,CAAC,UAAU;SACpB,CAAC;QAEF,0DAA0D;QAC1D,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;YAC3B,mDAAmD;YACnD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;IAEO,KAAK,CAAC,YAAY;QACtB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACrB,CAAC;IACL,CAAC;IAEO,cAAc,CAClB,QAA0D,EAC1D,KAA8B,EAC9B,OAAe,EACf,KAAa,EACb,OAAe;QAEf,IAAI,QAAQ,EAAE,CAAC;YACX,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACjD,CAAC;IACL,CAAC;CACJ"}
|
|
1
|
+
{"version":3,"file":"PuppeteerRenderer.js","sourceRoot":"","sources":["../../src/renderer/PuppeteerRenderer.ts"],"names":[],"mappings":"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"}
|
package/dist/server/index.d.ts
CHANGED
|
@@ -9,6 +9,10 @@
|
|
|
9
9
|
* - GET /status/:jobId - Get job status
|
|
10
10
|
* - GET /download/:jobId - Download completed video
|
|
11
11
|
* - GET /bundles - List available game bundles
|
|
12
|
+
* - POST /bundles/preload - Preload a bundle
|
|
13
|
+
* - GET /bundles/stats - Get cache statistics
|
|
14
|
+
* - GET /bundles/:bundleId - Get specific bundle info
|
|
15
|
+
* - DELETE /bundles/:bundleId - Remove bundle from cache
|
|
12
16
|
*/
|
|
13
17
|
export {};
|
|
14
18
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG"}
|