@ricsam/isolate 0.1.10 → 0.1.12

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 (140) hide show
  1. package/README.md +257 -18
  2. package/dist/cjs/bridge/diagnostics.cjs +37 -2
  3. package/dist/cjs/bridge/diagnostics.cjs.map +3 -3
  4. package/dist/cjs/bridge/runtime-bindings.cjs +230 -51
  5. package/dist/cjs/bridge/runtime-bindings.cjs.map +3 -3
  6. package/dist/cjs/bridge/sandbox-isolate.cjs +464 -0
  7. package/dist/cjs/bridge/sandbox-isolate.cjs.map +10 -0
  8. package/dist/cjs/host/create-isolate-host.cjs +130 -25
  9. package/dist/cjs/host/create-isolate-host.cjs.map +3 -3
  10. package/dist/cjs/host/nested-host-controller.cjs +369 -0
  11. package/dist/cjs/host/nested-host-controller.cjs.map +10 -0
  12. package/dist/cjs/index.cjs.map +1 -1
  13. package/dist/cjs/internal/browser-source.cjs +102 -0
  14. package/dist/cjs/internal/browser-source.cjs.map +10 -0
  15. package/dist/cjs/internal/client/connection.cjs +163 -172
  16. package/dist/cjs/internal/client/connection.cjs.map +3 -3
  17. package/dist/cjs/internal/daemon/callback-fs-handler.cjs +3 -3
  18. package/dist/cjs/internal/daemon/callback-fs-handler.cjs.map +3 -3
  19. package/dist/cjs/internal/daemon/connection.cjs +156 -13
  20. package/dist/cjs/internal/daemon/connection.cjs.map +3 -3
  21. package/dist/cjs/internal/playwright/client.cjs +4 -2
  22. package/dist/cjs/internal/playwright/client.cjs.map +3 -3
  23. package/dist/cjs/internal/playwright/handler.cjs +298 -25
  24. package/dist/cjs/internal/playwright/handler.cjs.map +3 -3
  25. package/dist/cjs/internal/playwright/index.cjs +54 -8
  26. package/dist/cjs/internal/playwright/index.cjs.map +3 -3
  27. package/dist/cjs/internal/playwright/types.cjs +3 -1
  28. package/dist/cjs/internal/playwright/types.cjs.map +3 -3
  29. package/dist/cjs/internal/protocol/codec.cjs +16 -5
  30. package/dist/cjs/internal/protocol/codec.cjs.map +3 -3
  31. package/dist/cjs/internal/protocol/marshalValue.cjs +37 -6
  32. package/dist/cjs/internal/protocol/marshalValue.cjs.map +3 -3
  33. package/dist/cjs/internal/protocol/types.cjs +2 -1
  34. package/dist/cjs/internal/protocol/types.cjs.map +3 -3
  35. package/dist/cjs/internal/runtime/index.cjs +377 -22
  36. package/dist/cjs/internal/runtime/index.cjs.map +3 -3
  37. package/dist/cjs/internal/typecheck/index.cjs +2 -1
  38. package/dist/cjs/internal/typecheck/index.cjs.map +3 -3
  39. package/dist/cjs/internal/typecheck/isolate-types.cjs +218 -13
  40. package/dist/cjs/internal/typecheck/isolate-types.cjs.map +3 -3
  41. package/dist/cjs/internal/typecheck/typecheck.cjs +2 -3
  42. package/dist/cjs/internal/typecheck/typecheck.cjs.map +3 -3
  43. package/dist/cjs/package.json +1 -1
  44. package/dist/cjs/playwright.cjs +76 -0
  45. package/dist/cjs/playwright.cjs.map +10 -0
  46. package/dist/cjs/runtime/namespaced-runtime.cjs +181 -0
  47. package/dist/cjs/runtime/namespaced-runtime.cjs.map +10 -0
  48. package/dist/cjs/runtime/script-runtime.cjs +14 -12
  49. package/dist/cjs/runtime/script-runtime.cjs.map +3 -3
  50. package/dist/cjs/runtime/test-runtime.cjs +113 -0
  51. package/dist/cjs/runtime/test-runtime.cjs.map +10 -0
  52. package/dist/cjs/server/app-server.cjs +16 -9
  53. package/dist/cjs/server/app-server.cjs.map +3 -3
  54. package/dist/cjs/typecheck/index.cjs +2 -1
  55. package/dist/cjs/typecheck/index.cjs.map +3 -3
  56. package/dist/mjs/bridge/diagnostics.mjs +37 -2
  57. package/dist/mjs/bridge/diagnostics.mjs.map +3 -3
  58. package/dist/mjs/bridge/runtime-bindings.mjs +233 -51
  59. package/dist/mjs/bridge/runtime-bindings.mjs.map +3 -3
  60. package/dist/mjs/bridge/sandbox-isolate.mjs +424 -0
  61. package/dist/mjs/bridge/sandbox-isolate.mjs.map +10 -0
  62. package/dist/mjs/host/create-isolate-host.mjs +132 -25
  63. package/dist/mjs/host/create-isolate-host.mjs.map +3 -3
  64. package/dist/mjs/host/nested-host-controller.mjs +333 -0
  65. package/dist/mjs/host/nested-host-controller.mjs.map +10 -0
  66. package/dist/mjs/index.mjs.map +1 -1
  67. package/dist/mjs/internal/browser-source.mjs +62 -0
  68. package/dist/mjs/internal/browser-source.mjs.map +10 -0
  69. package/dist/mjs/internal/client/connection.mjs +165 -173
  70. package/dist/mjs/internal/client/connection.mjs.map +3 -3
  71. package/dist/mjs/internal/daemon/callback-fs-handler.mjs +3 -3
  72. package/dist/mjs/internal/daemon/callback-fs-handler.mjs.map +3 -3
  73. package/dist/mjs/internal/daemon/connection.mjs +156 -13
  74. package/dist/mjs/internal/daemon/connection.mjs.map +3 -3
  75. package/dist/mjs/internal/playwright/client.mjs +7 -3
  76. package/dist/mjs/internal/playwright/client.mjs.map +3 -3
  77. package/dist/mjs/internal/playwright/handler.mjs +300 -26
  78. package/dist/mjs/internal/playwright/handler.mjs.map +3 -3
  79. package/dist/mjs/internal/playwright/index.mjs +59 -9
  80. package/dist/mjs/internal/playwright/index.mjs.map +3 -3
  81. package/dist/mjs/internal/playwright/types.mjs +3 -1
  82. package/dist/mjs/internal/playwright/types.mjs.map +3 -3
  83. package/dist/mjs/internal/protocol/codec.mjs +16 -5
  84. package/dist/mjs/internal/protocol/codec.mjs.map +3 -3
  85. package/dist/mjs/internal/protocol/marshalValue.mjs +38 -6
  86. package/dist/mjs/internal/protocol/marshalValue.mjs.map +3 -3
  87. package/dist/mjs/internal/protocol/types.mjs +2 -1
  88. package/dist/mjs/internal/protocol/types.mjs.map +3 -3
  89. package/dist/mjs/internal/runtime/index.mjs +377 -22
  90. package/dist/mjs/internal/runtime/index.mjs.map +3 -3
  91. package/dist/mjs/internal/typecheck/index.mjs +3 -1
  92. package/dist/mjs/internal/typecheck/index.mjs.map +3 -3
  93. package/dist/mjs/internal/typecheck/isolate-types.mjs +218 -13
  94. package/dist/mjs/internal/typecheck/isolate-types.mjs.map +3 -3
  95. package/dist/mjs/internal/typecheck/typecheck.mjs +2 -3
  96. package/dist/mjs/internal/typecheck/typecheck.mjs.map +3 -3
  97. package/dist/mjs/package.json +1 -1
  98. package/dist/mjs/playwright.mjs +47 -0
  99. package/dist/mjs/playwright.mjs.map +10 -0
  100. package/dist/mjs/runtime/namespaced-runtime.mjs +143 -0
  101. package/dist/mjs/runtime/namespaced-runtime.mjs.map +10 -0
  102. package/dist/mjs/runtime/script-runtime.mjs +16 -12
  103. package/dist/mjs/runtime/script-runtime.mjs.map +3 -3
  104. package/dist/mjs/runtime/test-runtime.mjs +78 -0
  105. package/dist/mjs/runtime/test-runtime.mjs.map +10 -0
  106. package/dist/mjs/server/app-server.mjs +23 -11
  107. package/dist/mjs/server/app-server.mjs.map +3 -3
  108. package/dist/mjs/typecheck/index.mjs +2 -1
  109. package/dist/mjs/typecheck/index.mjs.map +3 -3
  110. package/dist/types/bridge/diagnostics.d.ts +6 -1
  111. package/dist/types/bridge/runtime-bindings.d.ts +5 -1
  112. package/dist/types/bridge/sandbox-isolate.d.ts +21 -0
  113. package/dist/types/host/nested-host-controller.d.ts +15 -0
  114. package/dist/types/index.d.ts +1 -1
  115. package/dist/types/internal/browser-source.d.ts +10 -0
  116. package/dist/types/internal/client/types.d.ts +9 -0
  117. package/dist/types/internal/daemon/types.d.ts +0 -2
  118. package/dist/types/internal/playwright/client.d.ts +2 -2
  119. package/dist/types/internal/playwright/handler.d.ts +27 -4
  120. package/dist/types/internal/playwright/index.d.ts +2 -2
  121. package/dist/types/internal/playwright/types.d.ts +33 -1
  122. package/dist/types/internal/protocol/codec.d.ts +12 -2
  123. package/dist/types/internal/protocol/marshalValue.d.ts +3 -2
  124. package/dist/types/internal/protocol/types.d.ts +33 -2
  125. package/dist/types/internal/runtime/index.d.ts +5 -0
  126. package/dist/types/internal/typecheck/index.d.ts +1 -1
  127. package/dist/types/internal/typecheck/isolate-types.d.ts +6 -4
  128. package/dist/types/internal/typecheck/typecheck.d.ts +1 -1
  129. package/dist/types/playwright.d.ts +26 -0
  130. package/dist/types/runtime/namespaced-runtime.d.ts +11 -0
  131. package/dist/types/runtime/script-runtime.d.ts +2 -1
  132. package/dist/types/runtime/test-runtime.d.ts +4 -0
  133. package/dist/types/server/app-server.d.ts +2 -1
  134. package/dist/types/types.d.ts +75 -33
  135. package/package.json +8 -3
  136. package/dist/cjs/browser/browser-runtime.cjs +0 -157
  137. package/dist/cjs/browser/browser-runtime.cjs.map +0 -10
  138. package/dist/mjs/browser/browser-runtime.mjs +0 -93
  139. package/dist/mjs/browser/browser-runtime.mjs.map +0 -10
  140. package/dist/types/browser/browser-runtime.d.ts +0 -3
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@ricsam/isolate",
3
- "version": "0.1.10",
3
+ "version": "0.1.12",
4
4
  "type": "commonjs"
5
5
  }
@@ -0,0 +1,76 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropNames = Object.getOwnPropertyNames;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ function __accessProp(key) {
6
+ return this[key];
7
+ }
8
+ var __toCommonJS = (from) => {
9
+ var entry = (__moduleCache ??= new WeakMap).get(from), desc;
10
+ if (entry)
11
+ return entry;
12
+ entry = __defProp({}, "__esModule", { value: true });
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (var key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(entry, key))
16
+ __defProp(entry, key, {
17
+ get: __accessProp.bind(from, key),
18
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
+ });
20
+ }
21
+ __moduleCache.set(from, entry);
22
+ return entry;
23
+ };
24
+ var __moduleCache;
25
+ var __returnValue = (v) => v;
26
+ function __exportSetter(name, newValue) {
27
+ this[name] = __returnValue.bind(null, newValue);
28
+ }
29
+ var __export = (target, all) => {
30
+ for (var name in all)
31
+ __defProp(target, name, {
32
+ get: all[name],
33
+ enumerable: true,
34
+ configurable: true,
35
+ set: __exportSetter.bind(all, name)
36
+ });
37
+ };
38
+
39
+ // src/playwright.ts
40
+ var exports_playwright = {};
41
+ __export(exports_playwright, {
42
+ getPlaywrightHandlerMetadata: () => import_client2.getPlaywrightHandlerMetadata,
43
+ getDefaultPlaywrightHandlerMetadata: () => import_client2.getDefaultPlaywrightHandlerMetadata,
44
+ defaultPlaywrightHandler: () => import_client2.defaultPlaywrightHandler,
45
+ createPlaywrightSessionHandler: () => createPlaywrightSessionHandler,
46
+ createPlaywrightHandler: () => import_client2.createPlaywrightHandler,
47
+ PLAYWRIGHT_HANDLER_META: () => import_types.PLAYWRIGHT_HANDLER_META,
48
+ DEFAULT_PLAYWRIGHT_HANDLER_META: () => import_types.DEFAULT_PLAYWRIGHT_HANDLER_META
49
+ });
50
+ module.exports = __toCommonJS(exports_playwright);
51
+ var import_client = require("./internal/playwright/client.cjs");
52
+ var import_types = require("./internal/playwright/types.cjs");
53
+ var import_client2 = require("./internal/playwright/client.cjs");
54
+ function createPlaywrightSessionHandler(options = {}) {
55
+ const handler = import_client.createPlaywrightFactoryHandler({
56
+ timeout: options.timeout,
57
+ createContext: options.createContext,
58
+ createPage: options.createPage,
59
+ readFile: options.readFile,
60
+ writeFile: options.writeFile,
61
+ evaluatePredicate: options.evaluatePredicate
62
+ });
63
+ const metadata = import_client.getPlaywrightHandlerMetadata(handler);
64
+ if (!metadata?.collector) {
65
+ throw new Error("Playwright session handler metadata is unavailable for the generated handler.");
66
+ }
67
+ return {
68
+ handler,
69
+ getCollectedData: () => metadata.collector.getCollectedData(),
70
+ getTrackedResources: () => metadata.collector.getTrackedResources(),
71
+ clearCollectedData: () => metadata.collector.clearCollectedData(),
72
+ onEvent: (callback) => metadata.collector.onEvent(callback)
73
+ };
74
+ }
75
+
76
+ //# debugId=E253F3040135B8E464756E2164756E21
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/playwright.ts"],
4
+ "sourcesContent": [
5
+ "import {\n createPlaywrightFactoryHandler,\n getPlaywrightHandlerMetadata,\n type PlaywrightCallback,\n} from \"./internal/playwright/client.cjs\";\nimport type {\n CollectedData,\n PlaywrightEvent,\n PlaywrightFileData,\n PlaywrightOperation,\n PlaywrightResult,\n} from \"./internal/protocol/index.cjs\";\n\nexport type PlaywrightSessionHandlerCallback = PlaywrightCallback;\n\nexport interface CreatePlaywrightSessionHandlerOptions<\n TContext = unknown,\n TPage = unknown,\n TContextOptions = unknown,\n> {\n timeout?: number;\n createContext?: (\n options?: TContextOptions,\n ) => Promise<TContext> | TContext;\n createPage?: (context: TContext) => Promise<TPage> | TPage;\n readFile?: (\n filePath: string,\n ) => Promise<PlaywrightFileData> | PlaywrightFileData;\n writeFile?: (\n filePath: string,\n data: Buffer,\n ) => Promise<void> | void;\n evaluatePredicate?: (predicateId: number, data: unknown) => boolean;\n}\n\nexport interface PlaywrightSessionHandler {\n handler: PlaywrightSessionHandlerCallback;\n getCollectedData(): CollectedData;\n getTrackedResources(): { contexts: string[]; pages: string[] };\n clearCollectedData(): void;\n onEvent(callback: (event: PlaywrightEvent) => void): () => void;\n}\n\nexport {\n DEFAULT_PLAYWRIGHT_HANDLER_META,\n PLAYWRIGHT_HANDLER_META,\n} from \"./internal/playwright/types.cjs\";\n\nexport type {\n BrowserConsoleLogEntry,\n DefaultPlaywrightHandler,\n DefaultPlaywrightHandlerMetadata,\n DefaultPlaywrightHandlerOptions,\n NetworkRequestInfo,\n NetworkResponseInfo,\n PageErrorInfo,\n PlaywrightCollector,\n PlaywrightHandlerMetadata,\n PlaywrightHandle,\n RequestFailureInfo,\n} from \"./internal/playwright/client.cjs\";\n\nexport type {\n CollectedData,\n PlaywrightEvent,\n PlaywrightFileData,\n PlaywrightOperation,\n PlaywrightResult,\n};\n\nexport {\n createPlaywrightHandler,\n defaultPlaywrightHandler,\n getDefaultPlaywrightHandlerMetadata,\n getPlaywrightHandlerMetadata,\n} from \"./internal/playwright/client.cjs\";\n\nexport function createPlaywrightSessionHandler<\n TContext = unknown,\n TPage = unknown,\n TContextOptions = unknown,\n>(\n options: CreatePlaywrightSessionHandlerOptions<\n TContext,\n TPage,\n TContextOptions\n > = {},\n): PlaywrightSessionHandler {\n const handler = createPlaywrightFactoryHandler({\n timeout: options.timeout,\n createContext: options.createContext,\n createPage: options.createPage,\n readFile: options.readFile,\n writeFile: options.writeFile,\n evaluatePredicate: options.evaluatePredicate,\n } as Parameters<typeof createPlaywrightFactoryHandler>[0]);\n const metadata = getPlaywrightHandlerMetadata(handler);\n\n if (!metadata?.collector) {\n throw new Error(\n \"Playwright session handler metadata is unavailable for the generated handler.\",\n );\n }\n\n return {\n handler: handler as (\n op: PlaywrightOperation,\n ) => Promise<PlaywrightResult>,\n getCollectedData: () => metadata.collector.getCollectedData(),\n getTrackedResources: () => metadata.collector.getTrackedResources(),\n clearCollectedData: () => metadata.collector.clearCollectedData(),\n onEvent: (callback) => metadata.collector.onEvent(callback),\n };\n}\n"
6
+ ],
7
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIO,IAJP;AA8CO,IAHP;AAgCO,IALP;AAOO,SAAS,8BAIf,CACC,UAII,CAAC,GACqB;AAAA,EAC1B,MAAM,UAAU,6CAA+B;AAAA,IAC7C,SAAS,QAAQ;AAAA,IACjB,eAAe,QAAQ;AAAA,IACvB,YAAY,QAAQ;AAAA,IACpB,UAAU,QAAQ;AAAA,IAClB,WAAW,QAAQ;AAAA,IACnB,mBAAmB,QAAQ;AAAA,EAC7B,CAAyD;AAAA,EACzD,MAAM,WAAW,2CAA6B,OAAO;AAAA,EAErD,IAAI,CAAC,UAAU,WAAW;AAAA,IACxB,MAAM,IAAI,MACR,+EACF;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,IAGA,kBAAkB,MAAM,SAAS,UAAU,iBAAiB;AAAA,IAC5D,qBAAqB,MAAM,SAAS,UAAU,oBAAoB;AAAA,IAClE,oBAAoB,MAAM,SAAS,UAAU,mBAAmB;AAAA,IAChE,SAAS,CAAC,aAAa,SAAS,UAAU,QAAQ,QAAQ;AAAA,EAC5D;AAAA;",
8
+ "debugId": "E253F3040135B8E464756E2164756E21",
9
+ "names": []
10
+ }
@@ -0,0 +1,181 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropNames = Object.getOwnPropertyNames;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ function __accessProp(key) {
6
+ return this[key];
7
+ }
8
+ var __toCommonJS = (from) => {
9
+ var entry = (__moduleCache ??= new WeakMap).get(from), desc;
10
+ if (entry)
11
+ return entry;
12
+ entry = __defProp({}, "__esModule", { value: true });
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (var key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(entry, key))
16
+ __defProp(entry, key, {
17
+ get: __accessProp.bind(from, key),
18
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
+ });
20
+ }
21
+ __moduleCache.set(from, entry);
22
+ return entry;
23
+ };
24
+ var __moduleCache;
25
+ var __returnValue = (v) => v;
26
+ function __exportSetter(name, newValue) {
27
+ this[name] = __returnValue.bind(null, newValue);
28
+ }
29
+ var __export = (target, all) => {
30
+ for (var name in all)
31
+ __defProp(target, name, {
32
+ get: all[name],
33
+ enumerable: true,
34
+ configurable: true,
35
+ set: __exportSetter.bind(all, name)
36
+ });
37
+ };
38
+
39
+ // src/runtime/namespaced-runtime.ts
40
+ var exports_namespaced_runtime = {};
41
+ __export(exports_namespaced_runtime, {
42
+ createNamespacedRuntimeAdapter: () => createNamespacedRuntimeAdapter
43
+ });
44
+ module.exports = __toCommonJS(exports_namespaced_runtime);
45
+ var import_diagnostics = require("../bridge/diagnostics.cjs");
46
+ var import_client = require("../internal/client/index.cjs");
47
+ function createStateError(state, reason) {
48
+ if (state === "invalidated") {
49
+ const error2 = new Error(reason && reason.length > 0 ? `Namespaced runtime is no longer available: ${reason}` : "Namespaced runtime is no longer available.");
50
+ error2.name = "NamespacedRuntimeInvalidatedError";
51
+ return error2;
52
+ }
53
+ const error = new Error("Namespaced runtime has already been disposed.");
54
+ error.name = "NamespacedRuntimeDisposedError";
55
+ return error;
56
+ }
57
+ function createNamespacedRuntimeAdapter(runtime, diagnostics, options) {
58
+ let state = "active";
59
+ let lastRun;
60
+ let invalidationReason;
61
+ let released = false;
62
+ const subscriptions = new Set;
63
+ const release = () => {
64
+ if (released) {
65
+ return;
66
+ }
67
+ released = true;
68
+ for (const unsubscribe of subscriptions) {
69
+ unsubscribe();
70
+ }
71
+ subscriptions.clear();
72
+ options?.onRelease?.();
73
+ };
74
+ const ensureActive = () => {
75
+ if (state !== "active") {
76
+ throw createStateError(state, invalidationReason);
77
+ }
78
+ };
79
+ return {
80
+ async eval(code, evalOptions) {
81
+ ensureActive();
82
+ diagnostics.lifecycleState = "active";
83
+ try {
84
+ await runtime.eval(code, {
85
+ filename: evalOptions?.filename,
86
+ executionTimeout: evalOptions?.executionTimeout
87
+ });
88
+ } catch (error) {
89
+ diagnostics.lastError = error instanceof Error ? error.message : String(error);
90
+ throw error;
91
+ } finally {
92
+ diagnostics.lifecycleState = "idle";
93
+ }
94
+ },
95
+ async runTests(code, runOptions) {
96
+ ensureActive();
97
+ diagnostics.lifecycleState = "active";
98
+ try {
99
+ await runtime.testEnvironment.reset();
100
+ await runtime.eval(code, {
101
+ filename: runOptions?.filename,
102
+ executionTimeout: runOptions?.timeoutMs
103
+ });
104
+ lastRun = await runtime.testEnvironment.runTests(runOptions?.timeoutMs);
105
+ return lastRun;
106
+ } catch (error) {
107
+ diagnostics.lastError = error instanceof Error ? error.message : String(error);
108
+ throw error;
109
+ } finally {
110
+ diagnostics.lifecycleState = "idle";
111
+ }
112
+ },
113
+ async diagnostics() {
114
+ ensureActive();
115
+ const runtimeDiagnostics = {
116
+ ...diagnostics,
117
+ reused: runtime.reused
118
+ };
119
+ const collectedData = options?.hasBrowser ? runtime.playwright.getCollectedData() : undefined;
120
+ const trackedResources = options?.hasBrowser ? runtime.playwright.getTrackedResources() : undefined;
121
+ return {
122
+ runtime: runtimeDiagnostics,
123
+ browser: collectedData ? import_diagnostics.createBrowserDiagnostics(collectedData, trackedResources) : undefined,
124
+ test: {
125
+ enabled: true,
126
+ registeredTests: await runtime.testEnvironment.getTestCount(),
127
+ lastRun
128
+ }
129
+ };
130
+ },
131
+ async dispose(disposeOptions) {
132
+ if (state === "invalidated" || state === "disposed") {
133
+ release();
134
+ return;
135
+ }
136
+ state = "disposed";
137
+ diagnostics.lifecycleState = "disposing";
138
+ try {
139
+ options?.abortBindings?.(disposeOptions?.reason);
140
+ await runtime.dispose(disposeOptions);
141
+ } catch (error) {
142
+ if (!import_client.isBenignDisposeError(error)) {
143
+ diagnostics.lastError = error instanceof Error ? error.message : String(error);
144
+ throw error;
145
+ }
146
+ } finally {
147
+ diagnostics.lifecycleState = "idle";
148
+ release();
149
+ }
150
+ },
151
+ invalidate(reason) {
152
+ if (state === "disposed" || state === "invalidated") {
153
+ release();
154
+ return;
155
+ }
156
+ state = "invalidated";
157
+ invalidationReason = reason;
158
+ diagnostics.lifecycleState = "idle";
159
+ options?.abortBindings?.(reason);
160
+ release();
161
+ },
162
+ events: {
163
+ on: (event, handler) => {
164
+ ensureActive();
165
+ const unsubscribe = runtime.on(event, handler);
166
+ subscriptions.add(unsubscribe);
167
+ return () => {
168
+ if (subscriptions.delete(unsubscribe)) {
169
+ unsubscribe();
170
+ }
171
+ };
172
+ },
173
+ emit: async (event, payload) => {
174
+ ensureActive();
175
+ runtime.emit(event, payload);
176
+ }
177
+ }
178
+ };
179
+ }
180
+
181
+ //# debugId=C53D7A15A7B0203A64756E2164756E21
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/runtime/namespaced-runtime.ts"],
4
+ "sourcesContent": [
5
+ "import {\n createBrowserDiagnostics,\n type MutableRuntimeDiagnostics,\n} from \"../bridge/diagnostics.cjs\";\nimport { isBenignDisposeError, type RemoteRuntime } from \"../internal/client/index.cjs\";\nimport type {\n NamespacedRuntime,\n RunResults,\n TestRuntimeDiagnostics,\n} from \"../types.cjs\";\n\ntype RuntimeState = \"active\" | \"disposed\" | \"invalidated\";\n\nexport interface NamespacedRuntimeAdapter extends NamespacedRuntime {\n invalidate(reason?: string): void;\n}\n\nfunction createStateError(state: RuntimeState, reason?: string): Error {\n if (state === \"invalidated\") {\n const error = new Error(\n reason && reason.length > 0\n ? `Namespaced runtime is no longer available: ${reason}`\n : \"Namespaced runtime is no longer available.\",\n );\n error.name = \"NamespacedRuntimeInvalidatedError\";\n return error;\n }\n\n const error = new Error(\"Namespaced runtime has already been disposed.\");\n error.name = \"NamespacedRuntimeDisposedError\";\n return error;\n}\n\nexport function createNamespacedRuntimeAdapter(\n runtime: RemoteRuntime,\n diagnostics: MutableRuntimeDiagnostics,\n options?: {\n hasBrowser?: boolean;\n abortBindings?: (reason?: string) => void;\n onRelease?: () => void;\n },\n): NamespacedRuntimeAdapter {\n let state: RuntimeState = \"active\";\n let lastRun: RunResults | undefined;\n let invalidationReason: string | undefined;\n let released = false;\n const subscriptions = new Set<() => void>();\n\n const release = () => {\n if (released) {\n return;\n }\n released = true;\n for (const unsubscribe of subscriptions) {\n unsubscribe();\n }\n subscriptions.clear();\n options?.onRelease?.();\n };\n\n const ensureActive = (): void => {\n if (state !== \"active\") {\n throw createStateError(state, invalidationReason);\n }\n };\n\n return {\n async eval(code, evalOptions) {\n ensureActive();\n diagnostics.lifecycleState = \"active\";\n try {\n await runtime.eval(code, {\n filename: evalOptions?.filename,\n executionTimeout: evalOptions?.executionTimeout,\n });\n } catch (error) {\n diagnostics.lastError = error instanceof Error ? error.message : String(error);\n throw error;\n } finally {\n diagnostics.lifecycleState = \"idle\";\n }\n },\n async runTests(code, runOptions) {\n ensureActive();\n diagnostics.lifecycleState = \"active\";\n try {\n await runtime.testEnvironment.reset();\n await runtime.eval(code, {\n filename: runOptions?.filename,\n executionTimeout: runOptions?.timeoutMs,\n });\n lastRun = await runtime.testEnvironment.runTests(runOptions?.timeoutMs);\n return lastRun;\n } catch (error) {\n diagnostics.lastError = error instanceof Error ? error.message : String(error);\n throw error;\n } finally {\n diagnostics.lifecycleState = \"idle\";\n }\n },\n async diagnostics(): Promise<TestRuntimeDiagnostics> {\n ensureActive();\n const runtimeDiagnostics = {\n ...diagnostics,\n reused: runtime.reused,\n };\n const collectedData = options?.hasBrowser\n ? runtime.playwright.getCollectedData()\n : undefined;\n const trackedResources = options?.hasBrowser\n ? runtime.playwright.getTrackedResources()\n : undefined;\n\n return {\n runtime: runtimeDiagnostics,\n browser: collectedData\n ? createBrowserDiagnostics(collectedData, trackedResources)\n : undefined,\n test: {\n enabled: true as const,\n registeredTests: await runtime.testEnvironment.getTestCount(),\n lastRun,\n },\n };\n },\n async dispose(disposeOptions) {\n if (state === \"invalidated\" || state === \"disposed\") {\n release();\n return;\n }\n\n state = \"disposed\";\n diagnostics.lifecycleState = \"disposing\";\n try {\n options?.abortBindings?.(disposeOptions?.reason);\n await runtime.dispose(disposeOptions);\n } catch (error) {\n if (!isBenignDisposeError(error)) {\n diagnostics.lastError = error instanceof Error ? error.message : String(error);\n throw error;\n }\n } finally {\n diagnostics.lifecycleState = \"idle\";\n release();\n }\n },\n invalidate(reason) {\n if (state === \"disposed\" || state === \"invalidated\") {\n release();\n return;\n }\n state = \"invalidated\";\n invalidationReason = reason;\n diagnostics.lifecycleState = \"idle\";\n options?.abortBindings?.(reason);\n release();\n },\n events: {\n on: (event, handler) => {\n ensureActive();\n const unsubscribe = runtime.on(event, handler);\n subscriptions.add(unsubscribe);\n return () => {\n if (subscriptions.delete(unsubscribe)) {\n unsubscribe();\n }\n };\n },\n emit: async (event, payload) => {\n ensureActive();\n runtime.emit(event, payload);\n },\n },\n };\n}\n"
6
+ ],
7
+ "mappings": "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",
8
+ "debugId": "C53D7A15A7B0203A64756E2164756E21",
9
+ "names": []
10
+ }
@@ -42,6 +42,7 @@ __export(exports_script_runtime, {
42
42
  createScriptRuntimeAdapter: () => createScriptRuntimeAdapter
43
43
  });
44
44
  module.exports = __toCommonJS(exports_script_runtime);
45
+ var import_diagnostics = require("../bridge/diagnostics.cjs");
45
46
  var import_client = require("../internal/client/index.cjs");
46
47
  function createScriptRuntimeAdapter(runtime, diagnostics, options) {
47
48
  return {
@@ -74,24 +75,25 @@ function createScriptRuntimeAdapter(runtime, diagnostics, options) {
74
75
  diagnostics.lifecycleState = "idle";
75
76
  }
76
77
  },
77
- diagnostics: async () => ({
78
- ...diagnostics,
79
- reused: runtime.reused
80
- }),
78
+ diagnostics: async () => {
79
+ const runtimeDiagnostics = {
80
+ ...diagnostics,
81
+ reused: runtime.reused
82
+ };
83
+ const collectedData = options?.hasBrowser ? runtime.playwright.getCollectedData() : undefined;
84
+ const trackedResources = options?.hasBrowser ? runtime.playwright.getTrackedResources() : undefined;
85
+ return {
86
+ runtime: runtimeDiagnostics,
87
+ browser: collectedData ? import_diagnostics.createBrowserDiagnostics(collectedData, trackedResources) : undefined
88
+ };
89
+ },
81
90
  events: {
82
91
  on: (event, handler) => runtime.on(event, handler),
83
92
  emit: async (event, payload) => {
84
93
  runtime.emit(event, payload);
85
94
  }
86
- },
87
- tests: {
88
- run: async (testOptions) => await runtime.testEnvironment.runTests(testOptions?.timeoutMs),
89
- hasTests: async () => await runtime.testEnvironment.hasTests(),
90
- reset: async () => {
91
- await runtime.testEnvironment.reset();
92
- }
93
95
  }
94
96
  };
95
97
  }
96
98
 
97
- //# debugId=D7BE104BFAFC624864756E2164756E21
99
+ //# debugId=2443EB52C7D4BB8864756E2164756E21
@@ -2,9 +2,9 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/runtime/script-runtime.ts"],
4
4
  "sourcesContent": [
5
- "import type { MutableRuntimeDiagnostics } from \"../bridge/diagnostics.cjs\";\nimport { isBenignDisposeError, type RemoteRuntime } from \"../internal/client/index.cjs\";\nimport type { ScriptRuntime } from \"../types.cjs\";\n\nexport function createScriptRuntimeAdapter(\n runtime: RemoteRuntime,\n diagnostics: MutableRuntimeDiagnostics,\n options?: { onBeforeDispose?: (reason?: string) => void },\n): ScriptRuntime {\n return {\n async eval(code, evalOptions) {\n const normalizedOptions = typeof evalOptions === \"string\"\n ? { filename: evalOptions }\n : evalOptions;\n diagnostics.lifecycleState = \"active\";\n try {\n await runtime.eval(code, {\n filename: normalizedOptions?.filename,\n executionTimeout: normalizedOptions?.executionTimeout,\n });\n } catch (error) {\n diagnostics.lastError = error instanceof Error ? error.message : String(error);\n throw error;\n } finally {\n diagnostics.lifecycleState = \"idle\";\n }\n },\n async dispose(disposeOptions) {\n diagnostics.lifecycleState = \"disposing\";\n try {\n options?.onBeforeDispose?.(disposeOptions?.reason);\n await runtime.dispose(disposeOptions);\n } catch (error) {\n if (!isBenignDisposeError(error)) {\n diagnostics.lastError = error instanceof Error ? error.message : String(error);\n throw error;\n }\n } finally {\n diagnostics.lifecycleState = \"idle\";\n }\n },\n diagnostics: async () => ({\n ...diagnostics,\n reused: runtime.reused,\n }),\n events: {\n on: (event, handler) => runtime.on(event, handler),\n emit: async (event, payload) => {\n runtime.emit(event, payload);\n },\n },\n tests: {\n run: async (testOptions) => await runtime.testEnvironment.runTests(testOptions?.timeoutMs),\n hasTests: async () => await runtime.testEnvironment.hasTests(),\n reset: async () => {\n await runtime.testEnvironment.reset();\n },\n },\n };\n}\n"
5
+ "import {\n createBrowserDiagnostics,\n type MutableRuntimeDiagnostics,\n} from \"../bridge/diagnostics.cjs\";\nimport { isBenignDisposeError, type RemoteRuntime } from \"../internal/client/index.cjs\";\nimport type { ScriptRuntime } from \"../types.cjs\";\n\nexport function createScriptRuntimeAdapter(\n runtime: RemoteRuntime,\n diagnostics: MutableRuntimeDiagnostics,\n options?: {\n hasBrowser?: boolean;\n onBeforeDispose?: (reason?: string) => void;\n },\n): ScriptRuntime {\n return {\n async eval(code, evalOptions) {\n const normalizedOptions = typeof evalOptions === \"string\"\n ? { filename: evalOptions }\n : evalOptions;\n diagnostics.lifecycleState = \"active\";\n try {\n await runtime.eval(code, {\n filename: normalizedOptions?.filename,\n executionTimeout: normalizedOptions?.executionTimeout,\n });\n } catch (error) {\n diagnostics.lastError = error instanceof Error ? error.message : String(error);\n throw error;\n } finally {\n diagnostics.lifecycleState = \"idle\";\n }\n },\n async dispose(disposeOptions) {\n diagnostics.lifecycleState = \"disposing\";\n try {\n options?.onBeforeDispose?.(disposeOptions?.reason);\n await runtime.dispose(disposeOptions);\n } catch (error) {\n if (!isBenignDisposeError(error)) {\n diagnostics.lastError = error instanceof Error ? error.message : String(error);\n throw error;\n }\n } finally {\n diagnostics.lifecycleState = \"idle\";\n }\n },\n diagnostics: async () => {\n const runtimeDiagnostics = {\n ...diagnostics,\n reused: runtime.reused,\n };\n const collectedData = options?.hasBrowser\n ? runtime.playwright.getCollectedData()\n : undefined;\n const trackedResources = options?.hasBrowser\n ? runtime.playwright.getTrackedResources()\n : undefined;\n return {\n runtime: runtimeDiagnostics,\n browser: collectedData\n ? createBrowserDiagnostics(collectedData, trackedResources)\n : undefined,\n };\n },\n events: {\n on: (event, handler) => runtime.on(event, handler),\n emit: async (event, payload) => {\n runtime.emit(event, payload);\n },\n },\n };\n}\n"
6
6
  ],
7
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACyD,IAAzD;AAGO,SAAS,0BAA0B,CACxC,SACA,aACA,SACe;AAAA,EACf,OAAO;AAAA,SACC,KAAI,CAAC,MAAM,aAAa;AAAA,MAC5B,MAAM,oBAAoB,OAAO,gBAAgB,WAC7C,EAAE,UAAU,YAAY,IACxB;AAAA,MACJ,YAAY,iBAAiB;AAAA,MAC7B,IAAI;AAAA,QACF,MAAM,QAAQ,KAAK,MAAM;AAAA,UACvB,UAAU,mBAAmB;AAAA,UAC7B,kBAAkB,mBAAmB;AAAA,QACvC,CAAC;AAAA,QACD,OAAO,OAAO;AAAA,QACd,YAAY,YAAY,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,QAC7E,MAAM;AAAA,gBACN;AAAA,QACA,YAAY,iBAAiB;AAAA;AAAA;AAAA,SAG3B,QAAO,CAAC,gBAAgB;AAAA,MAC5B,YAAY,iBAAiB;AAAA,MAC7B,IAAI;AAAA,QACF,SAAS,kBAAkB,gBAAgB,MAAM;AAAA,QACjD,MAAM,QAAQ,QAAQ,cAAc;AAAA,QACpC,OAAO,OAAO;AAAA,QACd,IAAI,CAAC,mCAAqB,KAAK,GAAG;AAAA,UAChC,YAAY,YAAY,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,UAC7E,MAAM;AAAA,QACR;AAAA,gBACA;AAAA,QACA,YAAY,iBAAiB;AAAA;AAAA;AAAA,IAGjC,aAAa,aAAa;AAAA,SACrB;AAAA,MACH,QAAQ,QAAQ;AAAA,IAClB;AAAA,IACA,QAAQ;AAAA,MACN,IAAI,CAAC,OAAO,YAAY,QAAQ,GAAG,OAAO,OAAO;AAAA,MACjD,MAAM,OAAO,OAAO,YAAY;AAAA,QAC9B,QAAQ,KAAK,OAAO,OAAO;AAAA;AAAA,IAE/B;AAAA,IACA,OAAO;AAAA,MACL,KAAK,OAAO,gBAAgB,MAAM,QAAQ,gBAAgB,SAAS,aAAa,SAAS;AAAA,MACzF,UAAU,YAAY,MAAM,QAAQ,gBAAgB,SAAS;AAAA,MAC7D,OAAO,YAAY;AAAA,QACjB,MAAM,QAAQ,gBAAgB,MAAM;AAAA;AAAA,IAExC;AAAA,EACF;AAAA;",
8
- "debugId": "D7BE104BFAFC624864756E2164756E21",
7
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,IAHP;AAIyD,IAAzD;AAGO,SAAS,0BAA0B,CACxC,SACA,aACA,SAIe;AAAA,EACf,OAAO;AAAA,SACC,KAAI,CAAC,MAAM,aAAa;AAAA,MAC5B,MAAM,oBAAoB,OAAO,gBAAgB,WAC7C,EAAE,UAAU,YAAY,IACxB;AAAA,MACJ,YAAY,iBAAiB;AAAA,MAC7B,IAAI;AAAA,QACF,MAAM,QAAQ,KAAK,MAAM;AAAA,UACvB,UAAU,mBAAmB;AAAA,UAC7B,kBAAkB,mBAAmB;AAAA,QACvC,CAAC;AAAA,QACD,OAAO,OAAO;AAAA,QACd,YAAY,YAAY,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,QAC7E,MAAM;AAAA,gBACN;AAAA,QACA,YAAY,iBAAiB;AAAA;AAAA;AAAA,SAG3B,QAAO,CAAC,gBAAgB;AAAA,MAC5B,YAAY,iBAAiB;AAAA,MAC7B,IAAI;AAAA,QACF,SAAS,kBAAkB,gBAAgB,MAAM;AAAA,QACjD,MAAM,QAAQ,QAAQ,cAAc;AAAA,QACpC,OAAO,OAAO;AAAA,QACd,IAAI,CAAC,mCAAqB,KAAK,GAAG;AAAA,UAChC,YAAY,YAAY,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,UAC7E,MAAM;AAAA,QACR;AAAA,gBACA;AAAA,QACA,YAAY,iBAAiB;AAAA;AAAA;AAAA,IAGjC,aAAa,YAAY;AAAA,MACvB,MAAM,qBAAqB;AAAA,WACtB;AAAA,QACH,QAAQ,QAAQ;AAAA,MAClB;AAAA,MACA,MAAM,gBAAgB,SAAS,aAC3B,QAAQ,WAAW,iBAAiB,IACpC;AAAA,MACJ,MAAM,mBAAmB,SAAS,aAC9B,QAAQ,WAAW,oBAAoB,IACvC;AAAA,MACJ,OAAO;AAAA,QACL,SAAS;AAAA,QACT,SAAS,gBACL,4CAAyB,eAAe,gBAAgB,IACxD;AAAA,MACN;AAAA;AAAA,IAEF,QAAQ;AAAA,MACN,IAAI,CAAC,OAAO,YAAY,QAAQ,GAAG,OAAO,OAAO;AAAA,MACjD,MAAM,OAAO,OAAO,YAAY;AAAA,QAC9B,QAAQ,KAAK,OAAO,OAAO;AAAA;AAAA,IAE/B;AAAA,EACF;AAAA;",
8
+ "debugId": "2443EB52C7D4BB8864756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,113 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropNames = Object.getOwnPropertyNames;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ function __accessProp(key) {
6
+ return this[key];
7
+ }
8
+ var __toCommonJS = (from) => {
9
+ var entry = (__moduleCache ??= new WeakMap).get(from), desc;
10
+ if (entry)
11
+ return entry;
12
+ entry = __defProp({}, "__esModule", { value: true });
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (var key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(entry, key))
16
+ __defProp(entry, key, {
17
+ get: __accessProp.bind(from, key),
18
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
+ });
20
+ }
21
+ __moduleCache.set(from, entry);
22
+ return entry;
23
+ };
24
+ var __moduleCache;
25
+ var __returnValue = (v) => v;
26
+ function __exportSetter(name, newValue) {
27
+ this[name] = __returnValue.bind(null, newValue);
28
+ }
29
+ var __export = (target, all) => {
30
+ for (var name in all)
31
+ __defProp(target, name, {
32
+ get: all[name],
33
+ enumerable: true,
34
+ configurable: true,
35
+ set: __exportSetter.bind(all, name)
36
+ });
37
+ };
38
+
39
+ // src/runtime/test-runtime.ts
40
+ var exports_test_runtime = {};
41
+ __export(exports_test_runtime, {
42
+ createTestRuntimeAdapter: () => createTestRuntimeAdapter
43
+ });
44
+ module.exports = __toCommonJS(exports_test_runtime);
45
+ var import_diagnostics = require("../bridge/diagnostics.cjs");
46
+ var import_runtime_bindings = require("../bridge/runtime-bindings.cjs");
47
+ var import_client = require("../internal/client/index.cjs");
48
+ async function createTestRuntimeAdapter(createRuntime, options, adapterOptions) {
49
+ const diagnostics = import_diagnostics.createRuntimeDiagnostics();
50
+ let runtimeId = options.key ?? "test-runtime";
51
+ const bindingsAdapter = import_runtime_bindings.createRuntimeBindingsAdapter(options.bindings, () => runtimeId, diagnostics, adapterOptions);
52
+ const runtime = await createRuntime({
53
+ ...bindingsAdapter.runtimeOptions,
54
+ cwd: options.cwd,
55
+ memoryLimitMB: options.memoryLimitMB,
56
+ executionTimeout: options.executionTimeout,
57
+ testEnvironment: true
58
+ });
59
+ runtimeId = runtime.id;
60
+ let lastRun;
61
+ return {
62
+ async run(code, runOptions) {
63
+ diagnostics.lifecycleState = "active";
64
+ try {
65
+ await runtime.testEnvironment.reset();
66
+ await runtime.eval(code, {
67
+ filename: runOptions?.filename,
68
+ executionTimeout: runOptions?.timeoutMs
69
+ });
70
+ lastRun = await runtime.testEnvironment.runTests(runOptions?.timeoutMs);
71
+ return lastRun;
72
+ } catch (error) {
73
+ diagnostics.lastError = error instanceof Error ? error.message : String(error);
74
+ throw error;
75
+ } finally {
76
+ diagnostics.lifecycleState = "idle";
77
+ }
78
+ },
79
+ async diagnostics() {
80
+ const runtimeDiagnostics = {
81
+ ...diagnostics,
82
+ reused: runtime.reused
83
+ };
84
+ const collectedData = options.bindings.browser ? runtime.playwright.getCollectedData() : undefined;
85
+ const trackedResources = options.bindings.browser ? runtime.playwright.getTrackedResources() : undefined;
86
+ return {
87
+ runtime: runtimeDiagnostics,
88
+ browser: collectedData ? import_diagnostics.createBrowserDiagnostics(collectedData, trackedResources) : undefined,
89
+ test: {
90
+ enabled: true,
91
+ registeredTests: await runtime.testEnvironment.getTestCount(),
92
+ lastRun
93
+ }
94
+ };
95
+ },
96
+ async dispose(disposeOptions) {
97
+ diagnostics.lifecycleState = "disposing";
98
+ try {
99
+ bindingsAdapter.abort(disposeOptions?.reason);
100
+ await runtime.dispose(disposeOptions);
101
+ } catch (error) {
102
+ if (!import_client.isBenignDisposeError(error)) {
103
+ diagnostics.lastError = error instanceof Error ? error.message : String(error);
104
+ throw error;
105
+ }
106
+ } finally {
107
+ diagnostics.lifecycleState = "idle";
108
+ }
109
+ }
110
+ };
111
+ }
112
+
113
+ //# debugId=C4A9F9798611162364756E2164756E21
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/runtime/test-runtime.ts"],
4
+ "sourcesContent": [
5
+ "import {\n createBrowserDiagnostics,\n createRuntimeDiagnostics,\n} from \"../bridge/diagnostics.cjs\";\nimport {\n createRuntimeBindingsAdapter,\n type RuntimeBindingsAdapterOptions,\n} from \"../bridge/runtime-bindings.cjs\";\nimport type { RemoteRuntime, RuntimeOptions } from \"../internal/client/index.cjs\";\nimport { isBenignDisposeError } from \"../internal/client/index.cjs\";\nimport type {\n CreateTestRuntimeOptions,\n RunResults,\n TestRuntime,\n} from \"../types.cjs\";\n\nexport async function createTestRuntimeAdapter(\n createRuntime: (options: RuntimeOptions) => Promise<RemoteRuntime>,\n options: CreateTestRuntimeOptions,\n adapterOptions?: RuntimeBindingsAdapterOptions,\n): Promise<TestRuntime> {\n const diagnostics = createRuntimeDiagnostics();\n let runtimeId = options.key ?? \"test-runtime\";\n const bindingsAdapter = createRuntimeBindingsAdapter(\n options.bindings,\n () => runtimeId,\n diagnostics,\n adapterOptions,\n );\n const runtime = await createRuntime({\n ...bindingsAdapter.runtimeOptions,\n cwd: options.cwd,\n memoryLimitMB: options.memoryLimitMB,\n executionTimeout: options.executionTimeout,\n testEnvironment: true,\n });\n runtimeId = runtime.id;\n\n let lastRun: RunResults | undefined;\n\n return {\n async run(code, runOptions) {\n diagnostics.lifecycleState = \"active\";\n try {\n await runtime.testEnvironment.reset();\n await runtime.eval(code, {\n filename: runOptions?.filename,\n executionTimeout: runOptions?.timeoutMs,\n });\n lastRun = await runtime.testEnvironment.runTests(runOptions?.timeoutMs);\n return lastRun;\n } catch (error) {\n diagnostics.lastError = error instanceof Error ? error.message : String(error);\n throw error;\n } finally {\n diagnostics.lifecycleState = \"idle\";\n }\n },\n async diagnostics() {\n const runtimeDiagnostics = {\n ...diagnostics,\n reused: runtime.reused,\n };\n const collectedData = options.bindings.browser\n ? runtime.playwright.getCollectedData()\n : undefined;\n const trackedResources = options.bindings.browser\n ? runtime.playwright.getTrackedResources()\n : undefined;\n return {\n runtime: runtimeDiagnostics,\n browser: collectedData\n ? createBrowserDiagnostics(collectedData, trackedResources)\n : undefined,\n test: {\n enabled: true as const,\n registeredTests: await runtime.testEnvironment.getTestCount(),\n lastRun,\n },\n };\n },\n async dispose(disposeOptions) {\n diagnostics.lifecycleState = \"disposing\";\n try {\n bindingsAdapter.abort(disposeOptions?.reason);\n await runtime.dispose(disposeOptions);\n } catch (error) {\n if (!isBenignDisposeError(error)) {\n diagnostics.lastError = error instanceof Error ? error.message : String(error);\n throw error;\n }\n } finally {\n diagnostics.lifecycleState = \"idle\";\n }\n },\n };\n}\n"
6
+ ],
7
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,IAHP;AAOO,IAHP;AAKqC,IAArC;AAOA,eAAsB,wBAAwB,CAC5C,eACA,SACA,gBACsB;AAAA,EACtB,MAAM,cAAc,4CAAyB;AAAA,EAC7C,IAAI,YAAY,QAAQ,OAAO;AAAA,EAC/B,MAAM,kBAAkB,qDACtB,QAAQ,UACR,MAAM,WACN,aACA,cACF;AAAA,EACA,MAAM,UAAU,MAAM,cAAc;AAAA,OAC/B,gBAAgB;AAAA,IACnB,KAAK,QAAQ;AAAA,IACb,eAAe,QAAQ;AAAA,IACvB,kBAAkB,QAAQ;AAAA,IAC1B,iBAAiB;AAAA,EACnB,CAAC;AAAA,EACD,YAAY,QAAQ;AAAA,EAEpB,IAAI;AAAA,EAEJ,OAAO;AAAA,SACC,IAAG,CAAC,MAAM,YAAY;AAAA,MAC1B,YAAY,iBAAiB;AAAA,MAC7B,IAAI;AAAA,QACF,MAAM,QAAQ,gBAAgB,MAAM;AAAA,QACpC,MAAM,QAAQ,KAAK,MAAM;AAAA,UACvB,UAAU,YAAY;AAAA,UACtB,kBAAkB,YAAY;AAAA,QAChC,CAAC;AAAA,QACD,UAAU,MAAM,QAAQ,gBAAgB,SAAS,YAAY,SAAS;AAAA,QACtE,OAAO;AAAA,QACP,OAAO,OAAO;AAAA,QACd,YAAY,YAAY,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,QAC7E,MAAM;AAAA,gBACN;AAAA,QACA,YAAY,iBAAiB;AAAA;AAAA;AAAA,SAG3B,YAAW,GAAG;AAAA,MAClB,MAAM,qBAAqB;AAAA,WACtB;AAAA,QACH,QAAQ,QAAQ;AAAA,MAClB;AAAA,MACA,MAAM,gBAAgB,QAAQ,SAAS,UACnC,QAAQ,WAAW,iBAAiB,IACpC;AAAA,MACJ,MAAM,mBAAmB,QAAQ,SAAS,UACtC,QAAQ,WAAW,oBAAoB,IACvC;AAAA,MACJ,OAAO;AAAA,QACL,SAAS;AAAA,QACT,SAAS,gBACL,4CAAyB,eAAe,gBAAgB,IACxD;AAAA,QACJ,MAAM;AAAA,UACJ,SAAS;AAAA,UACT,iBAAiB,MAAM,QAAQ,gBAAgB,aAAa;AAAA,UAC5D;AAAA,QACF;AAAA,MACF;AAAA;AAAA,SAEI,QAAO,CAAC,gBAAgB;AAAA,MAC5B,YAAY,iBAAiB;AAAA,MAC7B,IAAI;AAAA,QACF,gBAAgB,MAAM,gBAAgB,MAAM;AAAA,QAC5C,MAAM,QAAQ,QAAQ,cAAc;AAAA,QACpC,OAAO,OAAO;AAAA,QACd,IAAI,CAAC,mCAAqB,KAAK,GAAG;AAAA,UAChC,YAAY,YAAY,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,UAC7E,MAAM;AAAA,QACR;AAAA,gBACA;AAAA,QACA,YAAY,iBAAiB;AAAA;AAAA;AAAA,EAGnC;AAAA;",
8
+ "debugId": "C4A9F9798611162364756E2164756E21",
9
+ "names": []
10
+ }
@@ -46,14 +46,14 @@ var import_server = require("../internal/server/index.cjs");
46
46
  var import_diagnostics = require("../bridge/diagnostics.cjs");
47
47
  var import_runtime_bindings = require("../bridge/runtime-bindings.cjs");
48
48
  var import_request_context = require("../bridge/request-context.cjs");
49
- async function createAppServerAdapter(getConnection, options) {
49
+ async function createAppServerAdapter(getConnection, options, adapterOptions) {
50
50
  const diagnostics = import_diagnostics.createRuntimeDiagnostics();
51
51
  const server = new import_server.IsolateServer({
52
52
  namespaceId: options.key,
53
53
  getConnection
54
54
  });
55
55
  let runtimeId = options.key;
56
- const bindingsAdapter = import_runtime_bindings.createRuntimeBindingsAdapter(options.bindings, () => runtimeId, diagnostics);
56
+ const bindingsAdapter = import_runtime_bindings.createRuntimeBindingsAdapter(options.bindings, () => runtimeId, diagnostics, adapterOptions);
57
57
  await server.start({
58
58
  entry: options.entry,
59
59
  entryFilename: options.entryFilename,
@@ -61,8 +61,7 @@ async function createAppServerAdapter(getConnection, options) {
61
61
  ...bindingsAdapter.runtimeOptions,
62
62
  cwd: options.cwd,
63
63
  memoryLimitMB: options.memoryLimitMB,
64
- executionTimeout: options.executionTimeout,
65
- testEnvironment: options.features?.tests ?? false
64
+ executionTimeout: options.executionTimeout
66
65
  },
67
66
  onWebSocketCommand: (command) => {
68
67
  options.webSockets?.onCommand?.(command);
@@ -150,11 +149,19 @@ async function createAppServerAdapter(getConnection, options) {
150
149
  diagnostics.lifecycleState = "idle";
151
150
  }
152
151
  },
153
- diagnostics: async () => ({
154
- ...diagnostics,
155
- reused: server.getRuntime()?.reused
156
- })
152
+ diagnostics: async () => {
153
+ const runtimeDiagnostics = {
154
+ ...diagnostics,
155
+ reused: server.getRuntime()?.reused
156
+ };
157
+ const collectedData = options.bindings.browser && server.getRuntime() ? server.getRuntime().playwright.getCollectedData() : undefined;
158
+ const trackedResources = options.bindings.browser && server.getRuntime() ? server.getRuntime().playwright.getTrackedResources() : undefined;
159
+ return {
160
+ runtime: runtimeDiagnostics,
161
+ browser: collectedData ? import_diagnostics.createBrowserDiagnostics(collectedData, trackedResources) : undefined
162
+ };
163
+ }
157
164
  };
158
165
  }
159
166
 
160
- //# debugId=34E29BF0A88C356464756E2164756E21
167
+ //# debugId=0D5491EB1041EFC364756E2164756E21
@@ -2,9 +2,9 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/server/app-server.ts"],
4
4
  "sourcesContent": [
5
- "import { IsolateServer } from \"../internal/server/index.cjs\";\nimport type { DaemonConnection } from \"../internal/client/index.cjs\";\nimport { createRuntimeDiagnostics } from \"../bridge/diagnostics.cjs\";\nimport { createRuntimeBindingsAdapter } from \"../bridge/runtime-bindings.cjs\";\nimport { withRequestContext } from \"../bridge/request-context.cjs\";\nimport type { AppServer, CreateAppServerOptions, RequestResult } from \"../types.cjs\";\n\nexport async function createAppServerAdapter(\n getConnection: () => Promise<DaemonConnection>,\n options: CreateAppServerOptions,\n): Promise<AppServer> {\n const diagnostics = createRuntimeDiagnostics();\n const server = new IsolateServer({\n namespaceId: options.key,\n getConnection,\n });\n\n let runtimeId = options.key;\n const bindingsAdapter = createRuntimeBindingsAdapter(\n options.bindings,\n () => runtimeId,\n diagnostics,\n );\n await server.start({\n entry: options.entry,\n entryFilename: options.entryFilename,\n runtimeOptions: {\n ...bindingsAdapter.runtimeOptions,\n cwd: options.cwd,\n memoryLimitMB: options.memoryLimitMB,\n executionTimeout: options.executionTimeout,\n testEnvironment: options.features?.tests ?? false,\n },\n onWebSocketCommand: (command) => {\n options.webSockets?.onCommand?.(command);\n },\n });\n runtimeId = server.getRuntime()?.id ?? options.key;\n\n async function handleRequest(request: Request, handleOptions?: { requestId?: string; signal?: AbortSignal; metadata?: Record<string, string> }): Promise<RequestResult> {\n diagnostics.activeRequests += 1;\n diagnostics.lifecycleState = \"active\";\n try {\n return await withRequestContext(\n {\n requestId: handleOptions?.requestId,\n metadata: handleOptions?.metadata,\n signal: handleOptions?.signal ?? request.signal,\n },\n async () => {\n const response = await server.fetch.dispatchRequest(request, {\n signal: handleOptions?.signal,\n requestId: handleOptions?.requestId,\n metadata: handleOptions?.metadata,\n });\n const upgradeRequest = await server.fetch.getUpgradeRequest();\n if (upgradeRequest?.requested) {\n return {\n type: \"websocket\",\n upgradeData: {\n requested: upgradeRequest.requested,\n connectionId: upgradeRequest.connectionId,\n },\n };\n }\n\n return {\n type: \"response\",\n response,\n };\n },\n );\n } catch (error) {\n diagnostics.lastError = error instanceof Error ? error.message : String(error);\n throw error;\n } finally {\n diagnostics.activeRequests -= 1;\n diagnostics.lifecycleState = \"idle\";\n }\n }\n\n return {\n handle: handleRequest,\n ws: {\n open: async (connectionId) => {\n await server.fetch.dispatchWebSocketOpen(connectionId);\n },\n message: async (connectionId, data) => {\n await server.fetch.dispatchWebSocketMessage(connectionId, data);\n },\n close: async (connectionId, code, reason) => {\n await server.fetch.dispatchWebSocketClose(connectionId, code, reason);\n },\n error: async (connectionId, error) => {\n await server.fetch.dispatchWebSocketError(connectionId, error);\n },\n },\n reload: async (reason) => {\n diagnostics.lifecycleState = \"reloading\";\n try {\n bindingsAdapter.reset(reason ? `AppServer.reload(${reason})` : \"AppServer.reload()\");\n await server.reload(reason);\n runtimeId = server.getRuntime()?.id ?? options.key;\n } finally {\n diagnostics.lifecycleState = \"idle\";\n }\n },\n dispose: async (disposeOptions) => {\n diagnostics.lifecycleState = \"disposing\";\n try {\n if (disposeOptions?.hard) {\n const hardDisposeReason = disposeOptions?.reason\n ? `AppServer.dispose(hard): ${disposeOptions.reason}`\n : \"AppServer.dispose(hard)\";\n bindingsAdapter.reset(hardDisposeReason);\n await server.reload(hardDisposeReason);\n bindingsAdapter.abort(hardDisposeReason);\n await server.close(hardDisposeReason);\n return;\n }\n const disposeReason = disposeOptions?.reason\n ? `AppServer.dispose(): ${disposeOptions.reason}`\n : \"AppServer.dispose()\";\n bindingsAdapter.abort(disposeReason);\n await server.close(disposeReason);\n } finally {\n diagnostics.lifecycleState = \"idle\";\n }\n },\n diagnostics: async () => ({\n ...diagnostics,\n reused: server.getRuntime()?.reused,\n }),\n };\n}\n"
5
+ "import { IsolateServer } from \"../internal/server/index.cjs\";\nimport type { DaemonConnection } from \"../internal/client/index.cjs\";\nimport {\n createBrowserDiagnostics,\n createRuntimeDiagnostics,\n} from \"../bridge/diagnostics.cjs\";\nimport {\n createRuntimeBindingsAdapter,\n type RuntimeBindingsAdapterOptions,\n} from \"../bridge/runtime-bindings.cjs\";\nimport { withRequestContext } from \"../bridge/request-context.cjs\";\nimport type { AppServer, CreateAppServerOptions, RequestResult } from \"../types.cjs\";\n\nexport async function createAppServerAdapter(\n getConnection: () => Promise<DaemonConnection>,\n options: CreateAppServerOptions,\n adapterOptions?: RuntimeBindingsAdapterOptions,\n): Promise<AppServer> {\n const diagnostics = createRuntimeDiagnostics();\n const server = new IsolateServer({\n namespaceId: options.key,\n getConnection,\n });\n\n let runtimeId = options.key;\n const bindingsAdapter = createRuntimeBindingsAdapter(\n options.bindings,\n () => runtimeId,\n diagnostics,\n adapterOptions,\n );\n await server.start({\n entry: options.entry,\n entryFilename: options.entryFilename,\n runtimeOptions: {\n ...bindingsAdapter.runtimeOptions,\n cwd: options.cwd,\n memoryLimitMB: options.memoryLimitMB,\n executionTimeout: options.executionTimeout,\n },\n onWebSocketCommand: (command) => {\n options.webSockets?.onCommand?.(command);\n },\n });\n runtimeId = server.getRuntime()?.id ?? options.key;\n\n async function handleRequest(request: Request, handleOptions?: { requestId?: string; signal?: AbortSignal; metadata?: Record<string, string> }): Promise<RequestResult> {\n diagnostics.activeRequests += 1;\n diagnostics.lifecycleState = \"active\";\n try {\n return await withRequestContext(\n {\n requestId: handleOptions?.requestId,\n metadata: handleOptions?.metadata,\n signal: handleOptions?.signal ?? request.signal,\n },\n async () => {\n const response = await server.fetch.dispatchRequest(request, {\n signal: handleOptions?.signal,\n requestId: handleOptions?.requestId,\n metadata: handleOptions?.metadata,\n });\n const upgradeRequest = await server.fetch.getUpgradeRequest();\n if (upgradeRequest?.requested) {\n return {\n type: \"websocket\",\n upgradeData: {\n requested: upgradeRequest.requested,\n connectionId: upgradeRequest.connectionId,\n },\n };\n }\n\n return {\n type: \"response\",\n response,\n };\n },\n );\n } catch (error) {\n diagnostics.lastError = error instanceof Error ? error.message : String(error);\n throw error;\n } finally {\n diagnostics.activeRequests -= 1;\n diagnostics.lifecycleState = \"idle\";\n }\n }\n\n return {\n handle: handleRequest,\n ws: {\n open: async (connectionId) => {\n await server.fetch.dispatchWebSocketOpen(connectionId);\n },\n message: async (connectionId, data) => {\n await server.fetch.dispatchWebSocketMessage(connectionId, data);\n },\n close: async (connectionId, code, reason) => {\n await server.fetch.dispatchWebSocketClose(connectionId, code, reason);\n },\n error: async (connectionId, error) => {\n await server.fetch.dispatchWebSocketError(connectionId, error);\n },\n },\n reload: async (reason) => {\n diagnostics.lifecycleState = \"reloading\";\n try {\n bindingsAdapter.reset(reason ? `AppServer.reload(${reason})` : \"AppServer.reload()\");\n await server.reload(reason);\n runtimeId = server.getRuntime()?.id ?? options.key;\n } finally {\n diagnostics.lifecycleState = \"idle\";\n }\n },\n dispose: async (disposeOptions) => {\n diagnostics.lifecycleState = \"disposing\";\n try {\n if (disposeOptions?.hard) {\n const hardDisposeReason = disposeOptions?.reason\n ? `AppServer.dispose(hard): ${disposeOptions.reason}`\n : \"AppServer.dispose(hard)\";\n bindingsAdapter.reset(hardDisposeReason);\n await server.reload(hardDisposeReason);\n bindingsAdapter.abort(hardDisposeReason);\n await server.close(hardDisposeReason);\n return;\n }\n const disposeReason = disposeOptions?.reason\n ? `AppServer.dispose(): ${disposeOptions.reason}`\n : \"AppServer.dispose()\";\n bindingsAdapter.abort(disposeReason);\n await server.close(disposeReason);\n } finally {\n diagnostics.lifecycleState = \"idle\";\n }\n },\n diagnostics: async () => {\n const runtimeDiagnostics = {\n ...diagnostics,\n reused: server.getRuntime()?.reused,\n };\n const collectedData = options.bindings.browser && server.getRuntime()\n ? server.getRuntime()!.playwright.getCollectedData()\n : undefined;\n const trackedResources = options.bindings.browser && server.getRuntime()\n ? server.getRuntime()!.playwright.getTrackedResources()\n : undefined;\n return {\n runtime: runtimeDiagnostics,\n browser: collectedData\n ? createBrowserDiagnostics(collectedData, trackedResources)\n : undefined,\n };\n },\n };\n}\n"
6
6
  ],
7
- "mappings": "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",
8
- "debugId": "34E29BF0A88C356464756E2164756E21",
7
+ "mappings": "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",
8
+ "debugId": "0D5491EB1041EFC364756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -68,6 +68,7 @@ function getTypeProfile(input) {
68
68
  const capabilities = unique([...PROFILE_DEFAULTS[profile] ?? PROFILE_DEFAULTS.backend, ...input?.capabilities ?? []]);
69
69
  const include = unique([
70
70
  "core",
71
+ "sandboxIsolate",
71
72
  ...capabilities.flatMap((capability) => CAPABILITY_MAP[capability])
72
73
  ]);
73
74
  return {
@@ -93,4 +94,4 @@ function typecheck(request) {
93
94
  }
94
95
  var formatTypecheckErrors = import_typecheck.formatTypecheckErrors;
95
96
 
96
- //# debugId=93C4649E708D66AD64756E2164756E21
97
+ //# debugId=2BAE6265EC164B2164756E2164756E21