veryfront 0.1.89 → 0.1.91

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.
Files changed (87) hide show
  1. package/esm/cli/commands/knowledge/command.d.ts +3 -0
  2. package/esm/cli/commands/knowledge/command.d.ts.map +1 -1
  3. package/esm/cli/commands/knowledge/command.js +27 -2
  4. package/esm/deno.js +1 -1
  5. package/esm/src/html/styles-builder/candidate-extractor.d.ts +5 -1
  6. package/esm/src/html/styles-builder/candidate-extractor.d.ts.map +1 -1
  7. package/esm/src/html/styles-builder/candidate-extractor.js +6 -1
  8. package/esm/src/html/styles-builder/content-version.d.ts +9 -0
  9. package/esm/src/html/styles-builder/content-version.d.ts.map +1 -0
  10. package/esm/src/html/styles-builder/content-version.js +15 -0
  11. package/esm/src/html/styles-builder/css-pregeneration.d.ts +11 -0
  12. package/esm/src/html/styles-builder/css-pregeneration.d.ts.map +1 -1
  13. package/esm/src/html/styles-builder/css-pregeneration.js +15 -10
  14. package/esm/src/html/styles-builder/prepared-project-css-cache.d.ts +31 -0
  15. package/esm/src/html/styles-builder/prepared-project-css-cache.d.ts.map +1 -0
  16. package/esm/src/html/styles-builder/prepared-project-css-cache.js +165 -0
  17. package/esm/src/html/styles-builder/style-scope-profile.d.ts +14 -0
  18. package/esm/src/html/styles-builder/style-scope-profile.d.ts.map +1 -0
  19. package/esm/src/html/styles-builder/style-scope-profile.js +121 -0
  20. package/esm/src/jobs/schemas.d.ts +30 -30
  21. package/esm/src/platform/adapters/fs/factory.d.ts.map +1 -1
  22. package/esm/src/platform/adapters/fs/factory.js +2 -21
  23. package/esm/src/platform/adapters/fs/veryfront/adapter.d.ts.map +1 -1
  24. package/esm/src/platform/adapters/fs/veryfront/adapter.js +44 -19
  25. package/esm/src/platform/adapters/fs/veryfront/default-invalidation-callbacks.d.ts +3 -0
  26. package/esm/src/platform/adapters/fs/veryfront/default-invalidation-callbacks.d.ts.map +1 -0
  27. package/esm/src/platform/adapters/fs/veryfront/default-invalidation-callbacks.js +25 -0
  28. package/esm/src/platform/adapters/fs/veryfront/proxy-manager.d.ts.map +1 -1
  29. package/esm/src/platform/adapters/fs/veryfront/proxy-manager.js +2 -15
  30. package/esm/src/platform/adapters/fs/veryfront/websocket-manager.d.ts +4 -0
  31. package/esm/src/platform/adapters/fs/veryfront/websocket-manager.d.ts.map +1 -1
  32. package/esm/src/platform/adapters/fs/veryfront/websocket-manager.js +2 -0
  33. package/esm/src/platform/adapters/veryfront-api-client/client.d.ts +3 -1
  34. package/esm/src/platform/adapters/veryfront-api-client/client.d.ts.map +1 -1
  35. package/esm/src/platform/adapters/veryfront-api-client/client.js +6 -0
  36. package/esm/src/platform/adapters/veryfront-api-client/index.d.ts +2 -2
  37. package/esm/src/platform/adapters/veryfront-api-client/index.d.ts.map +1 -1
  38. package/esm/src/platform/adapters/veryfront-api-client/index.js +1 -1
  39. package/esm/src/platform/adapters/veryfront-api-client/operations.d.ts +24 -0
  40. package/esm/src/platform/adapters/veryfront-api-client/operations.d.ts.map +1 -1
  41. package/esm/src/platform/adapters/veryfront-api-client/operations.js +65 -3
  42. package/esm/src/platform/adapters/veryfront-api-client/schemas/api.schema.d.ts +28 -0
  43. package/esm/src/platform/adapters/veryfront-api-client/schemas/api.schema.d.ts.map +1 -1
  44. package/esm/src/platform/adapters/veryfront-api-client/schemas/api.schema.js +13 -0
  45. package/esm/src/platform/adapters/veryfront-api-client/schemas/index.d.ts +1 -1
  46. package/esm/src/platform/adapters/veryfront-api-client/schemas/index.d.ts.map +1 -1
  47. package/esm/src/platform/adapters/veryfront-api-client/schemas/index.js +1 -1
  48. package/esm/src/rendering/orchestrator/css-candidate-manifest.d.ts +3 -0
  49. package/esm/src/rendering/orchestrator/css-candidate-manifest.d.ts.map +1 -1
  50. package/esm/src/rendering/orchestrator/css-candidate-manifest.js +10 -5
  51. package/esm/src/rendering/orchestrator/html.d.ts.map +1 -1
  52. package/esm/src/rendering/orchestrator/html.js +8 -0
  53. package/esm/src/sandbox/index.d.ts +1 -1
  54. package/esm/src/sandbox/index.d.ts.map +1 -1
  55. package/esm/src/sandbox/index.js +1 -1
  56. package/esm/src/sandbox/sandbox.d.ts +58 -0
  57. package/esm/src/sandbox/sandbox.d.ts.map +1 -1
  58. package/esm/src/sandbox/sandbox.js +111 -0
  59. package/esm/src/server/handlers/dev/styles-candidate-scanner.d.ts.map +1 -1
  60. package/esm/src/server/handlers/dev/styles-candidate-scanner.js +14 -16
  61. package/esm/src/server/handlers/dev/styles-css.handler.d.ts +7 -0
  62. package/esm/src/server/handlers/dev/styles-css.handler.d.ts.map +1 -1
  63. package/esm/src/server/handlers/dev/styles-css.handler.js +175 -8
  64. package/package.json +1 -1
  65. package/src/cli/commands/knowledge/command.ts +30 -2
  66. package/src/deno.js +1 -1
  67. package/src/src/html/styles-builder/candidate-extractor.ts +13 -0
  68. package/src/src/html/styles-builder/content-version.ts +20 -0
  69. package/src/src/html/styles-builder/css-pregeneration.ts +49 -12
  70. package/src/src/html/styles-builder/prepared-project-css-cache.ts +228 -0
  71. package/src/src/html/styles-builder/style-scope-profile.ts +164 -0
  72. package/src/src/platform/adapters/fs/factory.ts +2 -27
  73. package/src/src/platform/adapters/fs/veryfront/adapter.ts +49 -20
  74. package/src/src/platform/adapters/fs/veryfront/default-invalidation-callbacks.ts +35 -0
  75. package/src/src/platform/adapters/fs/veryfront/proxy-manager.ts +4 -21
  76. package/src/src/platform/adapters/fs/veryfront/websocket-manager.ts +3 -0
  77. package/src/src/platform/adapters/veryfront-api-client/client.ts +17 -0
  78. package/src/src/platform/adapters/veryfront-api-client/index.ts +6 -0
  79. package/src/src/platform/adapters/veryfront-api-client/operations.ts +110 -3
  80. package/src/src/platform/adapters/veryfront-api-client/schemas/api.schema.ts +16 -0
  81. package/src/src/platform/adapters/veryfront-api-client/schemas/index.ts +2 -0
  82. package/src/src/rendering/orchestrator/css-candidate-manifest.ts +28 -6
  83. package/src/src/rendering/orchestrator/html.ts +11 -0
  84. package/src/src/sandbox/index.ts +13 -1
  85. package/src/src/sandbox/sandbox.ts +183 -0
  86. package/src/src/server/handlers/dev/styles-candidate-scanner.ts +18 -15
  87. package/src/src/server/handlers/dev/styles-css.handler.ts +262 -12
@@ -1 +1 @@
1
- {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../../../../src/src/platform/adapters/veryfront-api-client/operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../../../../src/src/platform/adapters/veryfront-api-client/operations.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { logger as baseLogger } from "../../../utils/index.js";
2
2
  import { z } from "zod";
3
3
  import { requestWithRetry } from "./retry-handler.js";
4
4
  import { API_CLIENT_ERROR } from "./types.js";
5
- import { BranchFileDetailSchema, EnvironmentFileDetailSchema, ListBranchFilesResponseSchema, ListEnvironmentFilesResponseSchema, ListProjectsResponseSchema, ListReleaseFilesResponseSchema, ProjectSchema, ReleaseFileDetailSchema, } from "./schemas/index.js";
5
+ import { BranchFileDetailSchema, EnvironmentFileDetailSchema, ListBranchFilesResponseSchema, ListEnvironmentFilesResponseSchema, ListProjectsResponseSchema, ListReleaseFilesResponseSchema, ProjectSchema, ReleaseFileDetailSchema, StyleArtifactResolveResponseSchema, } from "./schemas/index.js";
6
6
  import { withSpan } from "../../../observability/tracing/otlp-setup.js";
7
7
  import { SpanNames } from "../../../observability/tracing/span-names.js";
8
8
  const logger = baseLogger.component("api");
@@ -31,6 +31,29 @@ function mapProjectFile(file) {
31
31
  updated_at: file.updated_at,
32
32
  };
33
33
  }
34
+ function buildStyleArtifactParams(input) {
35
+ const params = new URLSearchParams({
36
+ style_profile_hash: input.styleProfileHash,
37
+ });
38
+ if (input.branch)
39
+ params.set("branch", input.branch);
40
+ if (input.environmentName)
41
+ params.set("environment_name", input.environmentName);
42
+ if (input.releaseId)
43
+ params.set("release_id", input.releaseId);
44
+ return params;
45
+ }
46
+ function mapStyleArtifactResolution(raw) {
47
+ const response = StyleArtifactResolveResponseSchema.parse(raw);
48
+ return {
49
+ status: response.status,
50
+ artifactHash: response.artifact_hash,
51
+ assetPath: response.asset_path,
52
+ etag: response.etag,
53
+ contentType: response.content_type,
54
+ updatedAt: response.updated_at,
55
+ };
56
+ }
34
57
  async function listAllFiles(list) {
35
58
  const allFiles = [];
36
59
  let cursor;
@@ -265,7 +288,46 @@ export class VeryfrontAPIOperations {
265
288
  }
266
289
  }, { "api.domain": domain });
267
290
  }
268
- request(endpoint) {
269
- return withSpan(SpanNames.API_REQUEST, () => requestWithRetry(`${this.apiBaseUrl}${endpoint}`, this.tokenProvider(), this.retryConfig), { "api.endpoint": endpoint, "api.base_url": this.apiBaseUrl });
291
+ async resolveStyleArtifact(projectRef, input) {
292
+ const params = buildStyleArtifactParams(input);
293
+ const url = `/projects/${encodeURIComponent(projectRef)}/style-artifacts/current?${params}`;
294
+ logger.debug("resolveStyleArtifact", {
295
+ projectRef,
296
+ branch: input.branch,
297
+ environmentName: input.environmentName,
298
+ releaseId: input.releaseId,
299
+ styleProfileHash: input.styleProfileHash,
300
+ });
301
+ return mapStyleArtifactResolution(await this.request(url));
302
+ }
303
+ async upsertStyleArtifact(projectRef, input) {
304
+ const url = `/projects/${encodeURIComponent(projectRef)}/style-artifacts/current`;
305
+ logger.debug("upsertStyleArtifact", {
306
+ projectRef,
307
+ branch: input.branch,
308
+ environmentName: input.environmentName,
309
+ releaseId: input.releaseId,
310
+ styleProfileHash: input.styleProfileHash,
311
+ artifactHash: input.artifactHash,
312
+ });
313
+ return mapStyleArtifactResolution(await this.request(url, {
314
+ method: "PUT",
315
+ headers: {
316
+ "Content-Type": "application/json",
317
+ },
318
+ body: JSON.stringify({
319
+ style_profile_hash: input.styleProfileHash,
320
+ branch: input.branch,
321
+ environment_name: input.environmentName,
322
+ release_id: input.releaseId,
323
+ artifact_hash: input.artifactHash,
324
+ asset_path: input.assetPath,
325
+ content_type: input.contentType,
326
+ etag: input.etag,
327
+ }),
328
+ }));
329
+ }
330
+ request(endpoint, options = {}) {
331
+ return withSpan(SpanNames.API_REQUEST, () => requestWithRetry(`${this.apiBaseUrl}${endpoint}`, this.tokenProvider(), this.retryConfig, options), { "api.endpoint": endpoint, "api.base_url": this.apiBaseUrl });
270
332
  }
271
333
  }
@@ -3352,6 +3352,28 @@ export declare const LookupDomainResponseSchema: z.ZodObject<{
3352
3352
  } | null;
3353
3353
  project_name: string;
3354
3354
  }>;
3355
+ export declare const StyleArtifactResolveResponseSchema: z.ZodObject<{
3356
+ status: z.ZodEnum<["ready", "missing"]>;
3357
+ artifact_hash: z.ZodOptional<z.ZodString>;
3358
+ asset_path: z.ZodOptional<z.ZodString>;
3359
+ etag: z.ZodOptional<z.ZodString>;
3360
+ content_type: z.ZodOptional<z.ZodString>;
3361
+ updated_at: z.ZodOptional<z.ZodString>;
3362
+ }, "strip", z.ZodTypeAny, {
3363
+ status: "ready" | "missing";
3364
+ updated_at?: string | undefined;
3365
+ artifact_hash?: string | undefined;
3366
+ asset_path?: string | undefined;
3367
+ etag?: string | undefined;
3368
+ content_type?: string | undefined;
3369
+ }, {
3370
+ status: "ready" | "missing";
3371
+ updated_at?: string | undefined;
3372
+ artifact_hash?: string | undefined;
3373
+ asset_path?: string | undefined;
3374
+ etag?: string | undefined;
3375
+ content_type?: string | undefined;
3376
+ }>;
3355
3377
  export type Project = z.infer<typeof ProjectSchema>;
3356
3378
  export type ProjectFile = z.infer<typeof ProjectFileSchema>;
3357
3379
  export type PageInfo = z.infer<typeof PageInfoSchema>;
@@ -3366,6 +3388,7 @@ export type ReleaseFileListItem = z.infer<typeof ReleaseFileListItemSchema>;
3366
3388
  export type ListReleaseFilesResponse = z.infer<typeof ListReleaseFilesResponseSchema>;
3367
3389
  export type ReleaseFileDetail = z.infer<typeof ReleaseFileDetailSchema>;
3368
3390
  export type LookupDomainResponse = z.infer<typeof LookupDomainResponseSchema>;
3391
+ export type StyleArtifactResolveResponse = z.infer<typeof StyleArtifactResolveResponseSchema>;
3369
3392
  export declare const API_ENDPOINTS: {
3370
3393
  readonly listProjects: {
3371
3394
  readonly method: "GET";
@@ -3412,5 +3435,10 @@ export declare const API_ENDPOINTS: {
3412
3435
  readonly path: "/projects/{domain}";
3413
3436
  readonly description: "Look up project by custom domain (resolved via project_reference)";
3414
3437
  };
3438
+ readonly resolveStyleArtifact: {
3439
+ readonly method: "GET";
3440
+ readonly path: "/projects/{projectRef}/style-artifacts/current";
3441
+ readonly description: "Resolve metadata for the latest ready style artifact for a branch, environment, or release selector";
3442
+ };
3415
3443
  };
3416
3444
  //# sourceMappingURL=api.schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.schema.d.ts","sourceRoot":"","sources":["../../../../../../src/src/platform/adapters/veryfront-api-client/schemas/api.schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.schema.d.ts","sourceRoot":"","sources":["../../../../../../src/src/platform/adapters/veryfront-api-client/schemas/api.schema.ts"],"names":[],"mappings":"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"}
@@ -122,6 +122,14 @@ export const LookupDomainResponseSchema = z.object({
122
122
  environment: EnvironmentSchema.nullable(),
123
123
  release_id: z.string().uuid().nullable(),
124
124
  });
125
+ export const StyleArtifactResolveResponseSchema = z.object({
126
+ status: z.enum(["ready", "missing"]),
127
+ artifact_hash: z.string().optional(),
128
+ asset_path: z.string().optional(),
129
+ etag: z.string().optional(),
130
+ content_type: z.string().optional(),
131
+ updated_at: z.string().optional(),
132
+ });
125
133
  export const API_ENDPOINTS = {
126
134
  listProjects: {
127
135
  method: "GET",
@@ -168,4 +176,9 @@ export const API_ENDPOINTS = {
168
176
  path: "/projects/{domain}",
169
177
  description: "Look up project by custom domain (resolved via project_reference)",
170
178
  },
179
+ resolveStyleArtifact: {
180
+ method: "GET",
181
+ path: "/projects/{projectRef}/style-artifacts/current",
182
+ description: "Resolve metadata for the latest ready style artifact for a branch, environment, or release selector",
183
+ },
171
184
  };
@@ -3,5 +3,5 @@
3
3
  *
4
4
  * @module platform/adapters/veryfront-api-client/schemas
5
5
  */
6
- export { API_ENDPOINTS, type BranchFileDetail, BranchFileDetailSchema, type BranchFileListItem, BranchFileListItemSchema, type Environment, type EnvironmentFileDetail, EnvironmentFileDetailSchema, type EnvironmentFileListItem, EnvironmentFileListItemSchema, EnvironmentSchema, type ListBranchFilesResponse, ListBranchFilesResponseSchema, type ListEnvironmentFilesResponse, ListEnvironmentFilesResponseSchema, ListProjectsResponseSchema, type ListReleaseFilesResponse, ListReleaseFilesResponseSchema, type LookupDomainResponse, LookupDomainResponseSchema, type PageInfo, PageInfoSchema, type Project, type ProjectFile, ProjectFileSchema, ProjectSchema, type ReleaseFileDetail, ReleaseFileDetailSchema, type ReleaseFileListItem, ReleaseFileListItemSchema, } from "./api.schema.js";
6
+ export { API_ENDPOINTS, type BranchFileDetail, BranchFileDetailSchema, type BranchFileListItem, BranchFileListItemSchema, type Environment, type EnvironmentFileDetail, EnvironmentFileDetailSchema, type EnvironmentFileListItem, EnvironmentFileListItemSchema, EnvironmentSchema, type ListBranchFilesResponse, ListBranchFilesResponseSchema, type ListEnvironmentFilesResponse, ListEnvironmentFilesResponseSchema, ListProjectsResponseSchema, type ListReleaseFilesResponse, ListReleaseFilesResponseSchema, type LookupDomainResponse, LookupDomainResponseSchema, type PageInfo, PageInfoSchema, type Project, type ProjectFile, ProjectFileSchema, ProjectSchema, type ReleaseFileDetail, ReleaseFileDetailSchema, type ReleaseFileListItem, ReleaseFileListItemSchema, type StyleArtifactResolveResponse, StyleArtifactResolveResponseSchema, } from "./api.schema.js";
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/src/platform/adapters/veryfront-api-client/schemas/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,aAAa,EACb,KAAK,gBAAgB,EACrB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC1B,2BAA2B,EAC3B,KAAK,uBAAuB,EAC5B,6BAA6B,EAC7B,iBAAiB,EACjB,KAAK,uBAAuB,EAC5B,6BAA6B,EAC7B,KAAK,4BAA4B,EACjC,kCAAkC,EAClC,0BAA0B,EAC1B,KAAK,wBAAwB,EAC7B,8BAA8B,EAC9B,KAAK,oBAAoB,EACzB,0BAA0B,EAC1B,KAAK,QAAQ,EACb,cAAc,EACd,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,iBAAiB,EACjB,aAAa,EACb,KAAK,iBAAiB,EACtB,uBAAuB,EACvB,KAAK,mBAAmB,EACxB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/src/platform/adapters/veryfront-api-client/schemas/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,aAAa,EACb,KAAK,gBAAgB,EACrB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC1B,2BAA2B,EAC3B,KAAK,uBAAuB,EAC5B,6BAA6B,EAC7B,iBAAiB,EACjB,KAAK,uBAAuB,EAC5B,6BAA6B,EAC7B,KAAK,4BAA4B,EACjC,kCAAkC,EAClC,0BAA0B,EAC1B,KAAK,wBAAwB,EAC7B,8BAA8B,EAC9B,KAAK,oBAAoB,EACzB,0BAA0B,EAC1B,KAAK,QAAQ,EACb,cAAc,EACd,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,iBAAiB,EACjB,aAAa,EACb,KAAK,iBAAiB,EACtB,uBAAuB,EACvB,KAAK,mBAAmB,EACxB,yBAAyB,EACzB,KAAK,4BAA4B,EACjC,kCAAkC,GACnC,MAAM,iBAAiB,CAAC"}
@@ -3,4 +3,4 @@
3
3
  *
4
4
  * @module platform/adapters/veryfront-api-client/schemas
5
5
  */
6
- export { API_ENDPOINTS, BranchFileDetailSchema, BranchFileListItemSchema, EnvironmentFileDetailSchema, EnvironmentFileListItemSchema, EnvironmentSchema, ListBranchFilesResponseSchema, ListEnvironmentFilesResponseSchema, ListProjectsResponseSchema, ListReleaseFilesResponseSchema, LookupDomainResponseSchema, PageInfoSchema, ProjectFileSchema, ProjectSchema, ReleaseFileDetailSchema, ReleaseFileListItemSchema, } from "./api.schema.js";
6
+ export { API_ENDPOINTS, BranchFileDetailSchema, BranchFileListItemSchema, EnvironmentFileDetailSchema, EnvironmentFileListItemSchema, EnvironmentSchema, ListBranchFilesResponseSchema, ListEnvironmentFilesResponseSchema, ListProjectsResponseSchema, ListReleaseFilesResponseSchema, LookupDomainResponseSchema, PageInfoSchema, ProjectFileSchema, ProjectSchema, ReleaseFileDetailSchema, ReleaseFileListItemSchema, StyleArtifactResolveResponseSchema, } from "./api.schema.js";
@@ -1,3 +1,4 @@
1
+ import { type StyleScopeProfile } from "../../html/styles-builder/style-scope-profile.js";
1
2
  interface SourceFileLike {
2
3
  path: string;
3
4
  content?: string;
@@ -6,6 +7,7 @@ interface RouteCandidateOptions {
6
7
  projectScope: string;
7
8
  projectVersion: string;
8
9
  projectDir: string;
10
+ styleProfile?: StyleScopeProfile;
9
11
  routeKey: string;
10
12
  routeFilePaths: string[];
11
13
  files: SourceFileLike[];
@@ -15,6 +17,7 @@ interface ProjectCandidateOptions {
15
17
  projectScope: string;
16
18
  projectVersion: string;
17
19
  projectDir: string;
20
+ styleProfile?: StyleScopeProfile;
18
21
  files: SourceFileLike[];
19
22
  developmentMode: boolean;
20
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"css-candidate-manifest.d.ts","sourceRoot":"","sources":["../../../../src/src/rendering/orchestrator/css-candidate-manifest.ts"],"names":[],"mappings":"AAIA,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAQD,UAAU,qBAAqB;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,UAAU,uBAAuB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;CAC1B;AA0GD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,qBAAqB,GAAG,GAAG,CAAC,MAAM,CAAC,CAkC9E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,uBAAuB,GAAG,GAAG,CAAC,MAAM,CAAC,CAGlF;AAED;;GAEG;AACH,wBAAgB,mCAAmC,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAc/E"}
1
+ {"version":3,"file":"css-candidate-manifest.d.ts","sourceRoot":"","sources":["../../../../src/src/rendering/orchestrator/css-candidate-manifest.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,kDAAkD,CAAC;AAI1D,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAQD,UAAU,qBAAqB;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,UAAU,uBAAuB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAqHD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,qBAAqB,GAAG,GAAG,CAAC,MAAM,CAAC,CAuC9E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,uBAAuB,GAAG,GAAG,CAAC,MAAM,CAAC,CAGlF;AAED;;GAEG;AACH,wBAAgB,mCAAmC,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAc/E"}
@@ -1,4 +1,5 @@
1
1
  import { extractCandidates } from "../../html/styles-builder/tailwind-compiler.js";
2
+ import { filterFilesForStyleScope, } from "../../html/styles-builder/style-scope-profile.js";
2
3
  import { getRouteModulePaths } from "../../modules/manifest/route-module-manifest.js";
3
4
  import { rendererLogger } from "../../utils/index.js";
4
5
  const logger = rendererLogger.component("css-candidate-manifest");
@@ -17,8 +18,8 @@ function toRelativeProjectPath(path, projectDir) {
17
18
  }
18
19
  return normalized.replace(/^\/+/, "");
19
20
  }
20
- function buildManifestCacheKey(projectScope, projectVersion) {
21
- return `${projectScope}:${projectVersion}`;
21
+ function buildManifestCacheKey(projectScope, projectVersion, styleProfileHash) {
22
+ return `${projectScope}:${projectVersion}:${styleProfileHash ?? "default"}`;
22
23
  }
23
24
  function shouldRebuildManifest(existing, developmentMode) {
24
25
  if (!existing)
@@ -59,10 +60,13 @@ function buildCandidateManifest(files, projectDir) {
59
60
  return { fileCandidates, allCandidates, builtAt: Date.now() };
60
61
  }
61
62
  function getOrBuildManifest(options) {
62
- const manifestKey = buildManifestCacheKey(options.projectScope, options.projectVersion);
63
+ const manifestKey = buildManifestCacheKey(options.projectScope, options.projectVersion, options.styleProfile?.hash);
63
64
  const existingManifest = manifestCache.get(manifestKey);
65
+ const scopedFiles = options.styleProfile
66
+ ? filterFilesForStyleScope(options.files, options.styleProfile, options.projectDir)
67
+ : options.files;
64
68
  const manifest = shouldRebuildManifest(existingManifest, options.developmentMode)
65
- ? buildCandidateManifest(options.files, options.projectDir)
69
+ ? buildCandidateManifest(scopedFiles, options.projectDir)
66
70
  : existingManifest;
67
71
  if (manifest !== existingManifest) {
68
72
  manifestCache.set(manifestKey, manifest);
@@ -87,7 +91,7 @@ function addCandidatesForPath(target, manifest, path, projectDir) {
87
91
  * Resolve route-scoped Tailwind candidates from a precomputed per-project manifest.
88
92
  */
89
93
  export function getRouteCandidates(options) {
90
- const manifestKey = buildManifestCacheKey(options.projectScope, options.projectVersion);
94
+ const manifestKey = buildManifestCacheKey(options.projectScope, options.projectVersion, options.styleProfile?.hash);
91
95
  const manifest = getOrBuildManifest(options);
92
96
  const routeCacheKey = `${manifestKey}:${options.routeKey}`;
93
97
  const cachedRoute = routeCandidateCache.get(routeCacheKey);
@@ -111,6 +115,7 @@ export function getRouteCandidates(options) {
111
115
  logger.debug("Resolved route candidates", {
112
116
  projectScope: options.projectScope,
113
117
  projectVersion: options.projectVersion,
118
+ styleProfileHash: options.styleProfile?.hash,
114
119
  route: options.routeKey,
115
120
  count: routeCandidates.size,
116
121
  });
@@ -1 +1 @@
1
- {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../../../src/src/rendering/orchestrator/html.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAQ7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,SAAS,EAET,UAAU,EACX,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAchD,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,aAAa,GAAG,YAAY,CAAC;CACpC;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,UAAU,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,SAAS,GAAG,SAAS,CAAC;IACpC,aAAa,EAAE,UAAU,EAAE,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,2FAA2F;IAC3F,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAsB;gBAExB,MAAM,EAAE,mBAAmB;IAIjC,gBAAgB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC;IAWjE,kBAAkB,CACtB,WAAW,EAAE,cAAc,EAC3B,OAAO,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAC3C,OAAO,CAAC,cAAc,CAAC;YAmCZ,sBAAsB;YAsBtB,wBAAwB;YAmBxB,gBAAgB;YAehB,kBAAkB;IAsDhC,OAAO,CAAC,iBAAiB;IA4DzB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,cAAc;YAQR,eAAe;YAaf,gBAAgB;IAwE9B;;;;OAIG;YACW,gBAAgB;IA2D9B,OAAO,CAAC,wBAAwB;IAchC,OAAO,CAAC,qBAAqB;YAOf,6BAA6B;CAwD5C"}
1
+ {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../../../src/src/rendering/orchestrator/html.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAQ7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,SAAS,EAET,UAAU,EACX,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAiBhD,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,aAAa,GAAG,YAAY,CAAC;CACpC;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,UAAU,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,SAAS,GAAG,SAAS,CAAC;IACpC,aAAa,EAAE,UAAU,EAAE,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,2FAA2F;IAC3F,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAsB;gBAExB,MAAM,EAAE,mBAAmB;IAIjC,gBAAgB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC;IAWjE,kBAAkB,CACtB,WAAW,EAAE,cAAc,EAC3B,OAAO,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAC3C,OAAO,CAAC,cAAc,CAAC;YAmCZ,sBAAsB;YAsBtB,wBAAwB;YAmBxB,gBAAgB;YAehB,kBAAkB;IAsDhC,OAAO,CAAC,iBAAiB;IA4DzB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,cAAc;YAQR,eAAe;YAaf,gBAAgB;IAwE9B;;;;OAIG;YACW,gBAAgB;IA2D9B,OAAO,CAAC,wBAAwB;IAqBhC,OAAO,CAAC,qBAAqB;YAOf,6BAA6B;CAyD5C"}
@@ -9,6 +9,8 @@ import { resolveAppComponentPath } from "../layouts/utils/app-resolver.js";
9
9
  import { StreamTimeoutError, streamToString } from "../utils/stream-utils.js";
10
10
  import { normalizeCssModuleKey, rewriteCssModuleContent, } from "../../transforms/css-modules/naming.js";
11
11
  import { getRouteCandidates } from "./css-candidate-manifest.js";
12
+ import { resolveStyleContentVersion } from "../../html/styles-builder/content-version.js";
13
+ import { createStyleScopeProfile } from "../../html/styles-builder/style-scope-profile.js";
12
14
  const logger = rendererLogger.component("html-generator");
13
15
  export class HTMLGenerator {
14
16
  config;
@@ -317,6 +319,11 @@ export class HTMLGenerator {
317
319
  if (typeof wrappedFs.getUnderlyingAdapter !== "function")
318
320
  return undefined;
319
321
  const fsAdapter = wrappedFs.getUnderlyingAdapter();
322
+ const contentContext = typeof fsAdapter.getContentContext === "function"
323
+ ? fsAdapter.getContentContext()
324
+ : null;
325
+ if (contentContext)
326
+ return resolveStyleContentVersion(contentContext);
320
327
  return fsAdapter.getProjectData?.()?.updated_at;
321
328
  }
322
329
  buildRouteManifestKey(pagePath) {
@@ -351,6 +358,7 @@ export class HTMLGenerator {
351
358
  projectScope,
352
359
  projectVersion,
353
360
  projectDir: this.config.projectDir,
361
+ styleProfile: createStyleScopeProfile(this.config.config),
354
362
  routeKey,
355
363
  routeFilePaths,
356
364
  files,
@@ -17,5 +17,5 @@
17
17
  * @module
18
18
  */
19
19
  import "../../_dnt.polyfills.js";
20
- export { type ExecResult, type ExecStreamEvent, Sandbox, type SandboxOptions } from "./sandbox.js";
20
+ export { type CommandJob, type CommandJobHeartbeatStatus, type CommandJobOutput, type CommandJobStatus, type ExecResult, type ExecStreamEvent, Sandbox, type SandboxListOptions, type SandboxListResult, type SandboxOptions, type SandboxSession, } from "./sandbox.js";
21
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/sandbox/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,yBAAyB,CAAC;AAGjC,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,eAAe,EAAE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/sandbox/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,yBAAyB,CAAC;AAGjC,OAAO,EACL,KAAK,UAAU,EACf,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,OAAO,EACP,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,cAAc,GACpB,MAAM,cAAc,CAAC"}
@@ -17,4 +17,4 @@
17
17
  * @module
18
18
  */
19
19
  import "../../_dnt.polyfills.js";
20
- export { Sandbox } from "./sandbox.js";
20
+ export { Sandbox, } from "./sandbox.js";
@@ -17,6 +17,53 @@ export interface ExecStreamEvent {
17
17
  data?: string;
18
18
  exitCode?: number;
19
19
  }
20
+ /** Status of an async command job. */
21
+ export type CommandJobStatus = "running" | "completed" | "failed" | "canceled";
22
+ /** Heartbeat health status for a command job. */
23
+ export type CommandJobHeartbeatStatus = "disabled" | "healthy" | "degraded";
24
+ /** An async command job running in a sandbox. */
25
+ export interface CommandJob {
26
+ id: string;
27
+ status: CommandJobStatus;
28
+ exitCode: number | null;
29
+ signal: string | null;
30
+ startedAt: string;
31
+ finishedAt: string | null;
32
+ heartbeatStatus: CommandJobHeartbeatStatus;
33
+ lastHeartbeatAt: string | null;
34
+ lastHeartbeatError: string | null;
35
+ heartbeatFailureCount: number;
36
+ }
37
+ /** A command job with its captured output. */
38
+ export interface CommandJobOutput extends CommandJob {
39
+ stdout: string;
40
+ stderr: string;
41
+ stdoutTruncated: boolean;
42
+ stderrTruncated: boolean;
43
+ }
44
+ /** A sandbox session summary returned by list. */
45
+ export interface SandboxSession {
46
+ id: string;
47
+ shortId: string;
48
+ endpoint: string;
49
+ status: string;
50
+ createdAt: string;
51
+ }
52
+ /** Options for listing sandbox sessions. */
53
+ export interface SandboxListOptions extends SandboxOptions {
54
+ cursor?: string;
55
+ limit?: number;
56
+ }
57
+ /** Paginated result of sandbox sessions. */
58
+ export interface SandboxListResult {
59
+ data: SandboxSession[];
60
+ pageInfo: {
61
+ self: string | null;
62
+ first: null;
63
+ next: string | null;
64
+ prev: string | null;
65
+ };
66
+ }
20
67
  /** Client for isolated ephemeral compute environments with command execution and file I/O. */
21
68
  export declare class Sandbox {
22
69
  private endpoint;
@@ -30,6 +77,8 @@ export declare class Sandbox {
30
77
  static create(options?: SandboxOptions): Promise<Sandbox>;
31
78
  /** Reconnect to an existing sandbox session. */
32
79
  static get(id: string, options?: SandboxOptions): Promise<Sandbox>;
80
+ /** List sandbox sessions with optional pagination. */
81
+ static list(options?: SandboxListOptions): Promise<SandboxListResult>;
33
82
  private static waitForReady;
34
83
  /** Execute a bash command in the sandbox and return buffered result. */
35
84
  executeCommand(command: string): Promise<ExecResult>;
@@ -42,6 +91,15 @@ export declare class Sandbox {
42
91
  path: string;
43
92
  content: string;
44
93
  }>): Promise<void>;
94
+ /** Start an async command job in the sandbox. */
95
+ startCommandJob(command: string): Promise<CommandJob>;
96
+ /** Get the status of an async command job. */
97
+ getCommandJob(jobId: string): Promise<CommandJob>;
98
+ /** Get the output of an async command job. */
99
+ getCommandJobOutput(jobId: string): Promise<CommandJobOutput>;
100
+ /** Cancel an async command job. */
101
+ cancelCommandJob(jobId: string): Promise<CommandJob>;
102
+ private static mapCommandJob;
45
103
  /** Send a heartbeat to prevent idle timeout. */
46
104
  heartbeat(): Promise<void>;
47
105
  /** Close the sandbox session and mark for deletion. */
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../../src/src/sandbox/sandbox.ts"],"names":[],"mappings":"AAqBA,8CAA8C;AAC9C,MAAM,WAAW,cAAc;IAC7B,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,oEAAoE;AACpE,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wDAAwD;AACxD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,8FAA8F;AAC9F,qBAAa,OAAO;IAEhB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,MAAM;IAJhB,OAAO;IAOP,OAAO,CAAC,MAAM,CAAC,aAAa;IAM5B,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAa/B,4EAA4E;WAC/D,MAAM,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IA4BnE,gDAAgD;WACnC,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;mBAkBvD,YAAY;IA6BjC,wEAAwE;IAClE,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAsB1D,6DAA6D;IACtD,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,CAAC,eAAe,CAAC;IAyCtE,8CAA8C;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAe7C,4CAA4C;IACtC,UAAU,CACd,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,GAC9C,OAAO,CAAC,IAAI,CAAC;IAiBhB,gDAAgD;IAC1C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAOhC,uDAAuD;IACjD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAO5B,0BAA0B;IAC1B,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,oCAAoC;IACpC,IAAI,GAAG,IAAI,MAAM,CAEhB;CACF"}
1
+ {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../../src/src/sandbox/sandbox.ts"],"names":[],"mappings":"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"}
@@ -74,6 +74,42 @@ export class Sandbox {
74
74
  const { endpoint } = await res.json();
75
75
  return new Sandbox(endpoint, id, authToken, apiUrl);
76
76
  }
77
+ /** List sandbox sessions with optional pagination. */
78
+ static async list(options = {}) {
79
+ const apiUrl = Sandbox.resolveApiUrl(options);
80
+ const authToken = Sandbox.resolveAuthToken(options);
81
+ const params = new URLSearchParams();
82
+ if (options.cursor)
83
+ params.set("cursor", options.cursor);
84
+ if (options.limit !== undefined)
85
+ params.set("limit", String(options.limit));
86
+ const query = params.toString();
87
+ const url = `${apiUrl}/sandbox-sessions${query ? `?${query}` : ""}`;
88
+ const res = await dntShim.fetch(url, {
89
+ headers: { Authorization: `Bearer ${authToken}` },
90
+ });
91
+ if (!res.ok) {
92
+ throw REQUEST_ERROR.create({
93
+ detail: `Failed to list sandboxes: ${res.status} ${await res.text()}`,
94
+ });
95
+ }
96
+ const json = await res.json();
97
+ return {
98
+ data: json.data.map((s) => ({
99
+ id: s.id,
100
+ shortId: s.short_id,
101
+ endpoint: s.endpoint,
102
+ status: s.status,
103
+ createdAt: s.created_at,
104
+ })),
105
+ pageInfo: {
106
+ self: json.page_info?.self ?? null,
107
+ first: null,
108
+ next: json.page_info?.next ?? null,
109
+ prev: json.page_info?.prev ?? null,
110
+ },
111
+ };
112
+ }
77
113
  static async waitForReady(apiUrl, id, authToken, maxWaitMs = 60_000, pollIntervalMs = 2_000) {
78
114
  const start = Date.now();
79
115
  while (Date.now() - start < maxWaitMs) {
@@ -177,6 +213,81 @@ export class Sandbox {
177
213
  });
178
214
  }
179
215
  }
216
+ /** Start an async command job in the sandbox. */
217
+ async startCommandJob(command) {
218
+ const res = await dntShim.fetch(`${this.endpoint}/exec/jobs`, {
219
+ method: "POST",
220
+ headers: {
221
+ Authorization: `Bearer ${this.authToken}`,
222
+ "Content-Type": "application/json",
223
+ },
224
+ body: JSON.stringify({ command }),
225
+ });
226
+ if (!res.ok) {
227
+ throw REQUEST_ERROR.create({
228
+ detail: `Start command job failed: ${res.status} ${await res.text()}`,
229
+ });
230
+ }
231
+ return Sandbox.mapCommandJob(await res.json());
232
+ }
233
+ /** Get the status of an async command job. */
234
+ async getCommandJob(jobId) {
235
+ const res = await dntShim.fetch(`${this.endpoint}/exec/jobs/${jobId}`, {
236
+ headers: { Authorization: `Bearer ${this.authToken}` },
237
+ });
238
+ if (!res.ok) {
239
+ throw REQUEST_ERROR.create({
240
+ detail: `Get command job failed: ${res.status} ${await res.text()}`,
241
+ });
242
+ }
243
+ return Sandbox.mapCommandJob(await res.json());
244
+ }
245
+ /** Get the output of an async command job. */
246
+ async getCommandJobOutput(jobId) {
247
+ const res = await dntShim.fetch(`${this.endpoint}/exec/jobs/${jobId}/output`, {
248
+ headers: { Authorization: `Bearer ${this.authToken}` },
249
+ });
250
+ if (!res.ok) {
251
+ throw REQUEST_ERROR.create({
252
+ detail: `Get command job output failed: ${res.status} ${await res.text()}`,
253
+ });
254
+ }
255
+ const json = await res.json();
256
+ return {
257
+ ...Sandbox.mapCommandJob(json),
258
+ stdout: json.stdout,
259
+ stderr: json.stderr,
260
+ stdoutTruncated: json.stdout_truncated,
261
+ stderrTruncated: json.stderr_truncated,
262
+ };
263
+ }
264
+ /** Cancel an async command job. */
265
+ async cancelCommandJob(jobId) {
266
+ const res = await dntShim.fetch(`${this.endpoint}/exec/jobs/${jobId}/cancel`, {
267
+ method: "POST",
268
+ headers: { Authorization: `Bearer ${this.authToken}` },
269
+ });
270
+ if (!res.ok) {
271
+ throw REQUEST_ERROR.create({
272
+ detail: `Cancel command job failed: ${res.status} ${await res.text()}`,
273
+ });
274
+ }
275
+ return Sandbox.mapCommandJob(await res.json());
276
+ }
277
+ static mapCommandJob(json) {
278
+ return {
279
+ id: json.id,
280
+ status: json.status,
281
+ exitCode: json.exit_code,
282
+ signal: json.signal,
283
+ startedAt: json.started_at,
284
+ finishedAt: json.finished_at,
285
+ heartbeatStatus: json.heartbeat_status,
286
+ lastHeartbeatAt: json.last_heartbeat_at,
287
+ lastHeartbeatError: json.last_heartbeat_error,
288
+ heartbeatFailureCount: json.heartbeat_failure_count,
289
+ };
290
+ }
180
291
  /** Send a heartbeat to prevent idle timeout. */
181
292
  async heartbeat() {
182
293
  await dntShim.fetch(`${this.apiUrl}/sandbox-sessions/${this.sessionId}/heartbeat`, {
@@ -1 +1 @@
1
- {"version":3,"file":"styles-candidate-scanner.d.ts","sourceRoot":"","sources":["../../../../../src/src/server/handlers/dev/styles-candidate-scanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AA8BlD;;;;;;GAMG;AACH,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CA0CxF"}
1
+ {"version":3,"file":"styles-candidate-scanner.d.ts","sourceRoot":"","sources":["../../../../../src/src/server/handlers/dev/styles-candidate-scanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAcH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAiBlD;;;;;;GAMG;AACH,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAgDxF"}