@isolated-vm/experimental 0.0.7 → 0.0.9

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 (72) hide show
  1. package/addon/resolve.js +2 -2
  2. package/backend/backend.cts +7 -0
  3. package/backend/backend.d.cts +87 -0
  4. package/backend/host.cts +41 -0
  5. package/backend/require.cts +17 -0
  6. package/dist/backend/backend.cjs +9 -0
  7. package/dist/backend/backend.cjs.map +1 -0
  8. package/dist/backend/backend.d.cts +2 -0
  9. package/dist/backend/backend.d.cts.map +1 -0
  10. package/dist/backend/host.cjs +41 -0
  11. package/dist/backend/host.cjs.map +1 -0
  12. package/dist/backend/host.d.cts +2 -0
  13. package/dist/backend/host.d.cts.map +1 -0
  14. package/dist/backend/require.cjs +19 -0
  15. package/dist/backend/require.cjs.map +1 -0
  16. package/dist/backend/require.d.cts +2 -0
  17. package/dist/backend/require.d.cts.map +1 -0
  18. package/dist/frontend/agent.d.ts +1 -2
  19. package/dist/frontend/agent.d.ts.map +1 -1
  20. package/dist/frontend/agent.js +2 -7
  21. package/dist/frontend/agent.js.map +1 -1
  22. package/dist/frontend/module.d.ts +1 -1
  23. package/dist/frontend/module.d.ts.map +1 -1
  24. package/dist/frontend/module.js +1 -1
  25. package/dist/frontend/module.js.map +1 -1
  26. package/dist/frontend/realm.d.ts +2 -2
  27. package/dist/frontend/realm.d.ts.map +1 -1
  28. package/dist/frontend/realm.js +2 -2
  29. package/dist/frontend/realm.js.map +1 -1
  30. package/dist/frontend/reference.d.ts +1 -1
  31. package/dist/frontend/reference.d.ts.map +1 -1
  32. package/dist/frontend/script.d.ts +1 -1
  33. package/dist/frontend/script.d.ts.map +1 -1
  34. package/dist/frontend/script.js +1 -1
  35. package/dist/frontend/script.js.map +1 -1
  36. package/dist/isolated-vm.d.ts +1 -1
  37. package/dist/isolated-vm.d.ts.map +1 -1
  38. package/dist/isolated-vm.js +1 -1
  39. package/dist/isolated-vm.js.map +1 -1
  40. package/dist/test/00.transfer.js +58 -26
  41. package/dist/test/00.transfer.js.map +1 -1
  42. package/dist/test/20.array_buffer.js +191 -81
  43. package/dist/test/20.array_buffer.js.map +1 -1
  44. package/dist/test/90.isolation/00.dispose.d.ts +2 -0
  45. package/dist/test/90.isolation/00.dispose.d.ts.map +1 -0
  46. package/dist/test/90.isolation/00.dispose.js +28 -0
  47. package/dist/test/90.isolation/00.dispose.js.map +1 -0
  48. package/dist/test/fixtures.js +0 -1
  49. package/dist/test/fixtures.js.map +1 -1
  50. package/dist/tsconfig.tsbuildinfo +1 -1
  51. package/dist/utility/linker.js +1 -1
  52. package/dist/utility/linker.js.map +1 -1
  53. package/frontend/agent.ts +3 -9
  54. package/frontend/module.ts +1 -1
  55. package/frontend/realm.ts +2 -2
  56. package/frontend/reference.ts +1 -1
  57. package/frontend/script.ts +1 -1
  58. package/isolated-vm.ts +1 -1
  59. package/package.json +29 -15
  60. package/test/00.random.ts +1 -1
  61. package/test/00.transfer.ts +30 -22
  62. package/test/20.array_buffer.ts +43 -29
  63. package/test/90.isolation/00.dispose.ts +15 -0
  64. package/test/fixtures.ts +1 -1
  65. package/utility/linker.ts +1 -1
  66. package/backend/backend_v8.d.ts +0 -88
  67. package/backend/backend_v8.js +0 -18
  68. package/backend/specifier.ts +0 -20
  69. package/dist/backend/specifier.d.ts +0 -3
  70. package/dist/backend/specifier.d.ts.map +0 -1
  71. package/dist/backend/specifier.js +0 -21
  72. package/dist/backend/specifier.js.map +0 -1
@@ -3,31 +3,58 @@ import * as assert from "node:assert/strict";
3
3
  import { describe, test } from "node:test";
4
4
  import * as ivm from "@isolated-vm/experimental";
5
5
  import { injectAssert, unsafeEvalAsString, unsafeEvalAsStringInRealm } from "./fixtures.js";
6
+ const hostSupportsSharedArraySupport =
6
7
  // @ts-expect-error
7
- const hostSupportsSharedArraySupport = process.isBun === undefined;
8
+ process.isBun === undefined && process.versions.deno === undefined;
8
9
  await describe("array buffer", async () => {
9
- const env_1 = { stack: [], error: void 0, hasError: false };
10
- try {
11
- const agent = __addDisposableResource(env_1, await ivm.Agent.create(), true);
12
- await describe("transfer out", async () => {
10
+ await describe("transfer out", async () => {
11
+ const env_1 = { stack: [], error: void 0, hasError: false };
12
+ try {
13
+ const agent = __addDisposableResource(env_1, await ivm.Agent.create(), true);
13
14
  const ab = await unsafeEvalAsString(agent, () => {
14
15
  const uint8 = new Uint8Array([1, 2, 3]);
15
16
  return uint8.buffer;
16
17
  });
17
18
  const uint8 = new Uint8Array(ab);
18
19
  assert.deepStrictEqual(uint8, new Uint8Array([1, 2, 3]));
19
- });
20
- if (hostSupportsSharedArraySupport) {
21
- await test("transfer out same reference", async () => {
20
+ }
21
+ catch (e_1) {
22
+ env_1.error = e_1;
23
+ env_1.hasError = true;
24
+ }
25
+ finally {
26
+ const result_1 = __disposeResources(env_1);
27
+ if (result_1)
28
+ await result_1;
29
+ }
30
+ });
31
+ if (hostSupportsSharedArraySupport) {
32
+ await test("transfer out same reference", async () => {
33
+ const env_2 = { stack: [], error: void 0, hasError: false };
34
+ try {
35
+ const agent = __addDisposableResource(env_2, await ivm.Agent.create(), true);
22
36
  const ab = await unsafeEvalAsString(agent, () => {
23
37
  // nb: also tests zero-length buffer
24
38
  const ab = new ArrayBuffer(0);
25
39
  return [ab, ab];
26
40
  });
27
41
  assert.strictEqual(ab[0], ab[1]);
28
- });
29
- }
30
- await test("transfer in", async () => {
42
+ }
43
+ catch (e_2) {
44
+ env_2.error = e_2;
45
+ env_2.hasError = true;
46
+ }
47
+ finally {
48
+ const result_2 = __disposeResources(env_2);
49
+ if (result_2)
50
+ await result_2;
51
+ }
52
+ });
53
+ }
54
+ await test("transfer in", async () => {
55
+ const env_3 = { stack: [], error: void 0, hasError: false };
56
+ try {
57
+ const agent = __addDisposableResource(env_3, await ivm.Agent.create(), true);
31
58
  const realm = await agent.createRealm();
32
59
  await injectAssert(agent, realm);
33
60
  const global = await realm.acquireGlobalObject();
@@ -37,8 +64,21 @@ await describe("array buffer", async () => {
37
64
  const uint8 = new Uint8Array(ab);
38
65
  assert.deepStrictEqual([...uint8], [1, 2, 3]);
39
66
  });
40
- });
41
- await test("transfer in same reference", async () => {
67
+ }
68
+ catch (e_3) {
69
+ env_3.error = e_3;
70
+ env_3.hasError = true;
71
+ }
72
+ finally {
73
+ const result_3 = __disposeResources(env_3);
74
+ if (result_3)
75
+ await result_3;
76
+ }
77
+ });
78
+ await test("transfer in same reference", async () => {
79
+ const env_4 = { stack: [], error: void 0, hasError: false };
80
+ try {
81
+ const agent = __addDisposableResource(env_4, await ivm.Agent.create(), true);
42
82
  const realm = await agent.createRealm();
43
83
  await injectAssert(agent, realm);
44
84
  const global = await realm.acquireGlobalObject();
@@ -49,24 +89,24 @@ await describe("array buffer", async () => {
49
89
  // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
50
90
  assert.strictEqual(abs[0], abs[1]);
51
91
  });
52
- });
53
- }
54
- catch (e_1) {
55
- env_1.error = e_1;
56
- env_1.hasError = true;
57
- }
58
- finally {
59
- const result_1 = __disposeResources(env_1);
60
- if (result_1)
61
- await result_1;
62
- }
92
+ }
93
+ catch (e_4) {
94
+ env_4.error = e_4;
95
+ env_4.hasError = true;
96
+ }
97
+ finally {
98
+ const result_4 = __disposeResources(env_4);
99
+ if (result_4)
100
+ await result_4;
101
+ }
102
+ });
63
103
  });
64
104
  await describe("shared array buffer", async () => {
65
- const env_2 = { stack: [], error: void 0, hasError: false };
66
- try {
67
- const agent = __addDisposableResource(env_2, await ivm.Agent.create(), true);
68
- if (hostSupportsSharedArraySupport) {
69
- await describe("transfer out", async () => {
105
+ if (hostSupportsSharedArraySupport) {
106
+ await describe("transfer out", async () => {
107
+ const env_5 = { stack: [], error: void 0, hasError: false };
108
+ try {
109
+ const agent = __addDisposableResource(env_5, await ivm.Agent.create(), true);
70
110
  const realm = await agent.createRealm();
71
111
  const sab = await unsafeEvalAsStringInRealm(agent, realm, () => {
72
112
  const sab = new SharedArrayBuffer(3);
@@ -87,66 +127,123 @@ await describe("shared array buffer", async () => {
87
127
  return [...uint8];
88
128
  });
89
129
  assert.deepStrictEqual(next, [3, 2, 1]);
90
- });
91
- await test("transfer out same reference", async () => {
130
+ }
131
+ catch (e_5) {
132
+ env_5.error = e_5;
133
+ env_5.hasError = true;
134
+ }
135
+ finally {
136
+ const result_5 = __disposeResources(env_5);
137
+ if (result_5)
138
+ await result_5;
139
+ }
140
+ });
141
+ await test("transfer out same reference", async () => {
142
+ const env_6 = { stack: [], error: void 0, hasError: false };
143
+ try {
144
+ const agent = __addDisposableResource(env_6, await ivm.Agent.create(), true);
92
145
  const ab = await unsafeEvalAsString(agent, () => {
93
146
  // nb: also tests zero-length buffer
94
147
  const sab = new SharedArrayBuffer(0);
95
148
  return [sab, sab];
96
149
  });
97
150
  assert.strictEqual(ab[0], ab[1]);
98
- });
99
- }
151
+ }
152
+ catch (e_6) {
153
+ env_6.error = e_6;
154
+ env_6.hasError = true;
155
+ }
156
+ finally {
157
+ const result_6 = __disposeResources(env_6);
158
+ if (result_6)
159
+ await result_6;
160
+ }
161
+ });
100
162
  await test("transfer in", async () => {
101
- const realm = await agent.createRealm();
102
- await injectAssert(agent, realm);
103
- const global = await realm.acquireGlobalObject();
104
- const sab = new SharedArrayBuffer(3);
105
- const uint8 = new Uint8Array(sab);
106
- uint8.set([1, 2, 3]);
107
- await global.set("sab", sab);
108
- await unsafeEvalAsStringInRealm(agent, realm, () => {
109
- // @ts-expect-error
110
- const uint8 = new Uint8Array(globalThis.sab);
111
- assert.deepStrictEqual([...uint8], [1, 2, 3]);
112
- });
163
+ const env_7 = { stack: [], error: void 0, hasError: false };
164
+ try {
165
+ const agent = __addDisposableResource(env_7, await ivm.Agent.create(), true);
166
+ const realm = await agent.createRealm();
167
+ await injectAssert(agent, realm);
168
+ const global = await realm.acquireGlobalObject();
169
+ const sab = new SharedArrayBuffer(3);
170
+ const uint8 = new Uint8Array(sab);
171
+ uint8.set([1, 2, 3]);
172
+ await global.set("sab", sab);
173
+ await unsafeEvalAsStringInRealm(agent, realm, () => {
174
+ // @ts-expect-error
175
+ const uint8 = new Uint8Array(globalThis.sab);
176
+ assert.ok(uint8.buffer instanceof SharedArrayBuffer);
177
+ assert.deepStrictEqual([...uint8], [1, 2, 3]);
178
+ });
179
+ }
180
+ catch (e_7) {
181
+ env_7.error = e_7;
182
+ env_7.hasError = true;
183
+ }
184
+ finally {
185
+ const result_7 = __disposeResources(env_7);
186
+ if (result_7)
187
+ await result_7;
188
+ }
113
189
  });
114
- await test("transfer in same reference", async () => {
190
+ }
191
+ await test("transfer in same reference", async () => {
192
+ const env_8 = { stack: [], error: void 0, hasError: false };
193
+ try {
194
+ const agent = __addDisposableResource(env_8, await ivm.Agent.create(), true);
115
195
  const realm = await agent.createRealm();
116
196
  await injectAssert(agent, realm);
117
197
  const global = await realm.acquireGlobalObject();
118
- const sab = new SharedArrayBuffer(0);
119
- await global.set("sabs", [sab, sab]);
198
+ const ab = new ArrayBuffer(0);
199
+ await global.set("abs", [ab, ab]);
120
200
  await unsafeEvalAsStringInRealm(agent, realm, () => {
121
201
  // @ts-expect-error
122
202
  // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
123
- assert.strictEqual(sabs[0], sabs[1]);
203
+ assert.strictEqual(`${abs[0]}`, "[object ArrayBuffer]");
204
+ // @ts-expect-error
205
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
206
+ assert.strictEqual(abs[0], abs[1]);
124
207
  });
208
+ }
209
+ catch (e_8) {
210
+ env_8.error = e_8;
211
+ env_8.hasError = true;
212
+ }
213
+ finally {
214
+ const result_8 = __disposeResources(env_8);
215
+ if (result_8)
216
+ await result_8;
217
+ }
218
+ });
219
+ });
220
+ // TODO: deno fails when this is in the `describe` (??)
221
+ await test("transfer out", async () => {
222
+ const env_9 = { stack: [], error: void 0, hasError: false };
223
+ try {
224
+ const agent = __addDisposableResource(env_9, await ivm.Agent.create(), true);
225
+ const [uint8, uint8_copy] = await unsafeEvalAsString(agent, () => {
226
+ const uint8 = new Uint8Array([1, 2, 3]);
227
+ return [uint8, new Uint8Array(uint8.buffer)];
125
228
  });
229
+ assert.deepStrictEqual(uint8, new Uint8Array([1, 2, 3]));
230
+ assert.strictEqual(uint8.buffer, uint8_copy.buffer);
126
231
  }
127
- catch (e_2) {
128
- env_2.error = e_2;
129
- env_2.hasError = true;
232
+ catch (e_9) {
233
+ env_9.error = e_9;
234
+ env_9.hasError = true;
130
235
  }
131
236
  finally {
132
- const result_2 = __disposeResources(env_2);
133
- if (result_2)
134
- await result_2;
237
+ const result_9 = __disposeResources(env_9);
238
+ if (result_9)
239
+ await result_9;
135
240
  }
136
241
  });
137
242
  await describe("typed array", async () => {
138
- const env_3 = { stack: [], error: void 0, hasError: false };
139
- try {
140
- const agent = __addDisposableResource(env_3, await ivm.Agent.create(), true);
141
- await test("transfer out", async () => {
142
- const [uint8, uint8_copy] = await unsafeEvalAsString(agent, () => {
143
- const uint8 = new Uint8Array([1, 2, 3]);
144
- return [uint8, new Uint8Array(uint8.buffer)];
145
- });
146
- assert.deepStrictEqual(uint8, new Uint8Array([1, 2, 3]));
147
- assert.strictEqual(uint8.buffer, uint8_copy.buffer);
148
- });
149
- await test("transfer in", async () => {
243
+ await test("transfer in", async () => {
244
+ const env_10 = { stack: [], error: void 0, hasError: false };
245
+ try {
246
+ const agent = __addDisposableResource(env_10, await ivm.Agent.create(), true);
150
247
  const realm = await agent.createRealm();
151
248
  await injectAssert(agent, realm);
152
249
  const global = await realm.acquireGlobalObject();
@@ -158,9 +255,22 @@ await describe("typed array", async () => {
158
255
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
159
256
  assert.deepStrictEqual([...globalThis.uint8], [1, 2, 3]);
160
257
  });
161
- });
162
- if (hostSupportsSharedArraySupport) {
163
- await test("shared transfer out", async () => {
258
+ }
259
+ catch (e_10) {
260
+ env_10.error = e_10;
261
+ env_10.hasError = true;
262
+ }
263
+ finally {
264
+ const result_10 = __disposeResources(env_10);
265
+ if (result_10)
266
+ await result_10;
267
+ }
268
+ });
269
+ if (hostSupportsSharedArraySupport) {
270
+ await test("shared transfer out", async () => {
271
+ const env_11 = { stack: [], error: void 0, hasError: false };
272
+ try {
273
+ const agent = __addDisposableResource(env_11, await ivm.Agent.create(), true);
164
274
  const [shared_uint8, shared_uint8_copy] = await unsafeEvalAsString(agent, () => {
165
275
  const sab = new SharedArrayBuffer(3);
166
276
  const uint8 = new Uint8Array(sab);
@@ -170,17 +280,17 @@ await describe("typed array", async () => {
170
280
  assert.ok(shared_uint8.buffer instanceof SharedArrayBuffer);
171
281
  assert.deepStrictEqual(shared_uint8, new Uint8Array([1, 2, 3]));
172
282
  assert.strictEqual(shared_uint8.buffer, shared_uint8_copy.buffer);
173
- });
174
- }
175
- }
176
- catch (e_3) {
177
- env_3.error = e_3;
178
- env_3.hasError = true;
179
- }
180
- finally {
181
- const result_3 = __disposeResources(env_3);
182
- if (result_3)
183
- await result_3;
283
+ }
284
+ catch (e_11) {
285
+ env_11.error = e_11;
286
+ env_11.hasError = true;
287
+ }
288
+ finally {
289
+ const result_11 = __disposeResources(env_11);
290
+ if (result_11)
291
+ await result_11;
292
+ }
293
+ });
184
294
  }
185
295
  });
186
296
  //# sourceMappingURL=20.array_buffer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"20.array_buffer.js","sourceRoot":"","sources":["../../test/20.array_buffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"20.array_buffer.js","sourceRoot":"","sources":["../../test/20.array_buffer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=00.dispose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"00.dispose.d.ts","sourceRoot":"","sources":["../../../test/90.isolation/00.dispose.ts"],"names":[],"mappings":""}
@@ -0,0 +1,28 @@
1
+ import { __addDisposableResource, __disposeResources } from "tslib";
2
+ import * as assert from "node:assert/strict";
3
+ import { test } from "node:test";
4
+ import * as ivm from "@isolated-vm/experimental";
5
+ import {} from "@isolated-vm/experimental/test/fixtures";
6
+ await test("dispose while running", async () => {
7
+ const result = async function () {
8
+ const env_1 = { stack: [], error: void 0, hasError: false };
9
+ try {
10
+ const agent = __addDisposableResource(env_1, await ivm.Agent.create(), true);
11
+ const realm = await agent.createRealm();
12
+ const script = ivm.expectComplete(await agent.compileScript("for(;;);"));
13
+ // eslint-disable-next-line @typescript-eslint/return-await
14
+ return script.run(realm);
15
+ }
16
+ catch (e_1) {
17
+ env_1.error = e_1;
18
+ env_1.hasError = true;
19
+ }
20
+ finally {
21
+ const result_1 = __disposeResources(env_1);
22
+ if (result_1)
23
+ await result_1;
24
+ }
25
+ }();
26
+ assert.strictEqual(await result, undefined);
27
+ });
28
+ //# sourceMappingURL=00.dispose.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"00.dispose.js","sourceRoot":"","sources":["../../../test/90.isolation/00.dispose.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,GAAG,MAAM,2BAA2B,CAAC;AACjD,OAAO,EAAE,MAAM,yCAAyC,CAAC;AAEzD,MAAM,IAAI,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;IAC9C,MAAM,MAAM,GAAG,KAAK;;;YACnB,MAAY,KAAK,kCAAG,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,OAAA,CAAC;YAC7C,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,GAAG,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;YACzE,2DAA2D;YAC3D,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;;;;;;;;;;;KACzB,EAAE,CAAC;IACJ,MAAM,CAAC,WAAW,CAAC,MAAM,MAAM,EAAE,SAAS,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import { afterEach } from "node:test";
2
- import { Agent, Realm } from "@isolated-vm/experimental";
3
2
  import { expectComplete } from "@isolated-vm/experimental/utility/completion";
4
3
  export { expectComplete, expectThrow } from "@isolated-vm/experimental/utility/completion";
5
4
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../test/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAE9E,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,8CAA8C,CAAC;AAE3F,gBAAgB;AAChB,MAAM,UAAU,YAAY,CAAC,KAAY,EAAE,KAAY;IACtD,OAAO,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE;QACnD,MAAM,MAAM,GAAG;YACd,EAAE,CAAC,KAAc,EAAE,OAAgB;gBAClC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YACjD,CAAC;YACD,eAAe,CAAC,MAAe,EAAE,QAAiB,EAAE,OAAgB;gBACnE,KAAK;gBACL,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACzD,4EAA4E;oBAC5E,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,YAAY,MAAM,oBAAoB,QAAQ,EAAE,CAAC,CAAC;gBAC9E,CAAC;YACF,CAAC;YACD,WAAW,CAAC,MAAe,EAAE,QAAiB,EAAE,OAAgB;gBAC/D,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;oBAClC,4EAA4E;oBAC5E,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,YAAY,MAAM,sBAAsB,QAAQ,EAAE,CAAC,CAAC;gBAChF,CAAC;YACF,CAAC;SACD,CAAC;QACF,mBAAmB;QACnB,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC;IAC5B,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,kBAAkB,CACjC,IAAmB;IAEnB,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;AAC9B,CAAC;AAED,gBAAgB;AAChB,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACvC,KAAY,EACZ,IAA6B,EAC7B,GAAG,IAAU;IAEb,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;IACxC,OAAO,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED,gBAAgB;AAChB,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC9C,KAAY,EACZ,KAAY,EACZ,IAA6B,EAC7B,GAAG,IAAU;IAEb,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,KAAK,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACjI,OAAO,cAAc,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAS,CAAC;AACxD,CAAC;AAED,kFAAkF;AAClF,SAAS,CAAC,GAAG,EAAE;IACd,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC;AACf,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../test/fixtures.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAE9E,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,8CAA8C,CAAC;AAE3F,gBAAgB;AAChB,MAAM,UAAU,YAAY,CAAC,KAAY,EAAE,KAAY;IACtD,OAAO,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE;QACnD,MAAM,MAAM,GAAG;YACd,EAAE,CAAC,KAAc,EAAE,OAAgB;gBAClC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YACjD,CAAC;YACD,eAAe,CAAC,MAAe,EAAE,QAAiB,EAAE,OAAgB;gBACnE,KAAK;gBACL,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACzD,4EAA4E;oBAC5E,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,YAAY,MAAM,oBAAoB,QAAQ,EAAE,CAAC,CAAC;gBAC9E,CAAC;YACF,CAAC;YACD,WAAW,CAAC,MAAe,EAAE,QAAiB,EAAE,OAAgB;gBAC/D,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;oBAClC,4EAA4E;oBAC5E,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,YAAY,MAAM,sBAAsB,QAAQ,EAAE,CAAC,CAAC;gBAChF,CAAC;YACF,CAAC;SACD,CAAC;QACF,mBAAmB;QACnB,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC;IAC5B,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,kBAAkB,CACjC,IAAmB;IAEnB,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;AAC9B,CAAC;AAED,gBAAgB;AAChB,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACvC,KAAY,EACZ,IAA6B,EAC7B,GAAG,IAAU;IAEb,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;IACxC,OAAO,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED,gBAAgB;AAChB,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC9C,KAAY,EACZ,KAAY,EACZ,IAA6B,EAC7B,GAAG,IAAU;IAEb,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,KAAK,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACjI,OAAO,cAAc,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAS,CAAC;AACxD,CAAC;AAED,kFAAkF;AAClF,SAAS,CAAC,GAAG,EAAE;IACd,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC;AACf,CAAC,CAAC,CAAC"}