@poe-platform/safe-js 0.1.410 → 0.1.411

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.
@@ -27,7 +27,7 @@ import {
27
27
  validateMigrationSemantics,
28
28
  validateSnapshotData,
29
29
  validateSnapshotMigration
30
- } from "./chunk-I5MW527A.js";
30
+ } from "./chunk-RGBKZN3I.js";
31
31
 
32
32
  // packages/safe-js/src/migrate.ts
33
33
  import { createHash } from "node:crypto";
@@ -8249,4 +8249,4 @@ export {
8249
8249
  parseMcpConfig,
8250
8250
  makeMcpModule
8251
8251
  };
8252
- //# sourceMappingURL=chunk-CQVCWQYC.js.map
8252
+ //# sourceMappingURL=chunk-IXRABU5Q.js.map
@@ -8164,6 +8164,7 @@ var typedArrayPrototypes = /* @__PURE__ */ new WeakMap();
8164
8164
  var guestClosures = /* @__PURE__ */ new WeakSet();
8165
8165
  var functionProperties = /* @__PURE__ */ new WeakMap();
8166
8166
  var functionPropertyRevisions = /* @__PURE__ */ new WeakMap();
8167
+ var trackedIntrinsicObjects = /* @__PURE__ */ new WeakSet();
8167
8168
  var prototypes = /* @__PURE__ */ new WeakMap();
8168
8169
  var trackedPrototypes = /* @__PURE__ */ new WeakMap();
8169
8170
  function storePrototype(value, prototype) {
@@ -8225,6 +8226,20 @@ function materializeFunctionProperties(closure) {
8225
8226
  descriptorObjects.add(prototype);
8226
8227
  Object.defineProperty(properties, "prototype", { value: prototype, writable: true });
8227
8228
  }
8229
+ const tracked = trackPropertyTable(properties);
8230
+ descriptorObjects.add(tracked);
8231
+ functionProperties.set(closure, tracked);
8232
+ return tracked;
8233
+ }
8234
+ function createIntrinsicObject(initial = /* @__PURE__ */ Object.create(null)) {
8235
+ const tracked = trackPropertyTable(Object.create(Object.getPrototypeOf(initial), Object.getOwnPropertyDescriptors(initial)));
8236
+ trackedIntrinsicObjects.add(tracked);
8237
+ return tracked;
8238
+ }
8239
+ function isTrackedIntrinsicObject(value) {
8240
+ return trackedIntrinsicObjects.has(value);
8241
+ }
8242
+ function trackPropertyTable(properties) {
8228
8243
  const state = { revision: 0 };
8229
8244
  const tracked = new Proxy(properties, {
8230
8245
  defineProperty(target, key, descriptor) {
@@ -8239,8 +8254,6 @@ function materializeFunctionProperties(closure) {
8239
8254
  }
8240
8255
  });
8241
8256
  functionPropertyRevisions.set(tracked, state);
8242
- descriptorObjects.add(tracked);
8243
- functionProperties.set(closure, tracked);
8244
8257
  return tracked;
8245
8258
  }
8246
8259
  function getGuestFunctionProperty(closure, key) {
@@ -11872,7 +11885,7 @@ function allocateTypedArray(source, budget, Native) {
11872
11885
  return new Native(length);
11873
11886
  }
11874
11887
  function createNumericTypedArrayPrototypes(budget, bindings) {
11875
- const shared = /* @__PURE__ */ Object.create(null);
11888
+ const shared = createIntrinsicObject();
11876
11889
  const abstractCall = () => {
11877
11890
  throw new TypeError("Abstract TypedArray constructor cannot be called.");
11878
11891
  };
@@ -11989,7 +12002,7 @@ function createNumericTypedArrayPrototypes(budget, bindings) {
11989
12002
  const prototypes2 = /* @__PURE__ */ new Map();
11990
12003
  for (const [name, Native] of Object.entries(numericTypedArrayConstructors)) {
11991
12004
  const constructor = bindings[name];
11992
- const prototype = /* @__PURE__ */ Object.create(null);
12005
+ const prototype = createIntrinsicObject();
11993
12006
  Object.defineProperties(materializeFunctionProperties(constructor), {
11994
12007
  prototype: { value: prototype, writable: false },
11995
12008
  BYTES_PER_ELEMENT: { value: Native.BYTES_PER_ELEMENT, writable: false, enumerable: false, configurable: false }
@@ -26212,7 +26225,7 @@ function f16round(value) {
26212
26225
  function createMathGlobals(options = {}) {
26213
26226
  const random = options.random ?? Math.random;
26214
26227
  const budget = options.budget ?? new Budget();
26215
- const mathObject = {
26228
+ const mathObject = createIntrinsicObject({
26216
26229
  E: Math.E,
26217
26230
  LN2: Math.LN2,
26218
26231
  LN10: Math.LN10,
@@ -26229,7 +26242,7 @@ function createMathGlobals(options = {}) {
26229
26242
  length: 1,
26230
26243
  call: ([source], context) => sumPrecise(source, budget, context)
26231
26244
  })
26232
- };
26245
+ });
26233
26246
  for (const [name, method] of Object.entries(mathMethods)) {
26234
26247
  const variadic = method === Math.max || method === Math.min || method === Math.hypot;
26235
26248
  mathObject[name] = createSandboxClosure({
@@ -30990,7 +31003,7 @@ function copyFromSandbox(value, state, path = "<root>", options, depth = 0) {
30990
31003
  if (options.unwrapHostObject === void 0) throw new TypeError("Live capabilities require their owning realm bridge.");
30991
31004
  return options.unwrapHostObject(value);
30992
31005
  }
30993
- if (nodeTypes.isProxy(value) && !isNumericTypedArray(value)) throw new TypeError("Unsupported proxy sandbox value.");
31006
+ if (nodeTypes.isProxy(value) && !isNumericTypedArray(value) && !isTrackedIntrinsicObject(value)) throw new TypeError("Unsupported proxy sandbox value.");
30994
31007
  if (sandboxErrorTypes.has(value) && hasExplicitSandboxPrototype(value)) {
30995
31008
  const prototype = getSandboxPrototype(value);
30996
31009
  let nativePrototype = null;
@@ -45575,4 +45588,4 @@ export {
45575
45588
  FileSnapshotBackend,
45576
45589
  run
45577
45590
  };
45578
- //# sourceMappingURL=chunk-I5MW527A.js.map
45591
+ //# sourceMappingURL=chunk-RGBKZN3I.js.map