@poe-platform/safe-js 0.1.261 → 0.1.263

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-F4OZBPVV.js";
30
+ } from "./chunk-ATYG2NJO.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-5YWY6ZXP.js.map
8252
+ //# sourceMappingURL=chunk-22FQB7VW.js.map
@@ -8004,7 +8004,7 @@ function setSandboxPrototype(value, prototype, budget) {
8004
8004
  if (budget !== void 0 && intrinsicPrototypes.get(budget) === value && prototype !== null) {
8005
8005
  throw new TypeError("Object.prototype has an immutable null prototype.");
8006
8006
  }
8007
- if (!Array.isArray(value) && !isSandboxRegex(value) && !isSandboxMap(value) && !isSandboxSet(value) && !isPrototypeRecord(value) || prototype !== null && !Array.isArray(prototype) && !isSandboxMap(prototype) && !isSandboxSet(prototype) && !isPrototypeRecord(prototype)) {
8007
+ if (!Array.isArray(value) && !isSandboxRegex(value) && !isSandboxMap(value) && !isSandboxSet(value) && !isPrototypeRecord(value) || prototype !== null && !Array.isArray(prototype) && !isSandboxRegex(prototype) && !isSandboxMap(prototype) && !isSandboxSet(prototype) && !isPrototypeRecord(prototype)) {
8008
8008
  throw new TypeError(
8009
8009
  "Prototype links require supported sandbox objects."
8010
8010
  );
@@ -13656,6 +13656,11 @@ function createObjectArrayGlobals(options) {
13656
13656
  setPrototypeOf: createSandboxClosure({
13657
13657
  sandbox: true,
13658
13658
  call: ([value, prototype]) => {
13659
+ if (value === null || value === void 0)
13660
+ throw new TypeError("Cannot set the prototype of null or undefined.");
13661
+ if (prototype !== null && typeof prototype !== "object")
13662
+ throw new TypeError("Prototype must be an object or null.");
13663
+ if (typeof value !== "object") return value;
13659
13664
  objectProperties(value, true);
13660
13665
  if (prototype !== null) objectProperties(prototype);
13661
13666
  setSandboxPrototype(value, prototype, options.budget);
@@ -17450,7 +17455,7 @@ function forInKeys(object, budget) {
17450
17455
  for (let current = object; current !== null; current = getSandboxPrototype(current, budget)) {
17451
17456
  if (depth > 0) budget.visitNode();
17452
17457
  assertSandboxDataDepth(depth++);
17453
- const properties = isGuestClosure(current) ? materializeFunctionProperties(current) : isSandboxClosure(current) ? current.properties ?? {} : isSandboxMap(current) || isSandboxSet(current) ? getCollectionProperties(current) : current;
17458
+ const properties = isGuestClosure(current) ? materializeFunctionProperties(current) : isSandboxClosure(current) ? current.properties ?? {} : isSandboxRegex(current) ? getRegexProperties(current) : isSandboxMap(current) || isSandboxSet(current) ? getCollectionProperties(current) : current;
17454
17459
  for (const key of Object.getOwnPropertyNames(properties)) {
17455
17460
  if (seen.has(key)) continue;
17456
17461
  seen.add(key);
@@ -17466,7 +17471,7 @@ function hasForInProperty(object, key, budget) {
17466
17471
  for (let current = object; current !== null; current = getSandboxPrototype(current, budget)) {
17467
17472
  if (depth > 0) budget.visitNode();
17468
17473
  assertSandboxDataDepth(depth++);
17469
- const properties = isGuestClosure(current) ? materializeFunctionProperties(current) : isSandboxClosure(current) ? current.properties ?? {} : isSandboxMap(current) || isSandboxSet(current) ? getCollectionProperties(current) : current;
17474
+ const properties = isGuestClosure(current) ? materializeFunctionProperties(current) : isSandboxClosure(current) ? current.properties ?? {} : isSandboxRegex(current) ? getRegexProperties(current) : isSandboxMap(current) || isSandboxSet(current) ? getCollectionProperties(current) : current;
17470
17475
  if (Object.hasOwn(properties, key)) return true;
17471
17476
  }
17472
17477
  return false;
@@ -40036,4 +40041,4 @@ export {
40036
40041
  FileSnapshotBackend,
40037
40042
  run
40038
40043
  };
40039
- //# sourceMappingURL=chunk-F4OZBPVV.js.map
40044
+ //# sourceMappingURL=chunk-ATYG2NJO.js.map