@poe-platform/safe-js 0.1.320 → 0.1.321

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.
@@ -6886,14 +6886,14 @@ var createValuesIterator = Object.getOwnPropertyDescriptor(typedArrayPrototype,
6886
6886
  var bufferLength = Object.getOwnPropertyDescriptor(ArrayBuffer.prototype, "byteLength").get;
6887
6887
  var bufferResizable = Object.getOwnPropertyDescriptor(ArrayBuffer.prototype, "resizable")?.get;
6888
6888
  var float32ViewLayouts = /* @__PURE__ */ new WeakMap();
6889
- var resizeBuffer = Object.getOwnPropertyDescriptor(ArrayBuffer.prototype, "resize").value;
6889
+ var resizeBuffer = Object.getOwnPropertyDescriptor(ArrayBuffer.prototype, "resize")?.value;
6890
6890
  function restoreFloat32View(buffer, byteOffset, length, budget) {
6891
6891
  const originalLength = arrayBufferLength(buffer);
6892
6892
  const required = byteOffset + (length ?? 0) * 4;
6893
6893
  const options = arrayBufferOptions(buffer);
6894
6894
  const grow = required > originalLength;
6895
6895
  if (grow) {
6896
- if (options === void 0 || required > options.maxByteLength)
6896
+ if (resizeBuffer === void 0 || options === void 0 || required > options.maxByteLength)
6897
6897
  throw new RangeError("Float32Array layout exceeds backing capacity.");
6898
6898
  budget?.allocateArrayLength(Math.ceil(required / 4));
6899
6899
  budget?.provisionDataUsage(required - originalLength)();
@@ -25122,8 +25122,7 @@ function createBigIntGlobal(budget) {
25122
25122
  }
25123
25123
 
25124
25124
  // packages/safe-js/src/interp/globals/array-buffer.ts
25125
- var resizeBuffer2 = Object.getOwnPropertyDescriptor(ArrayBuffer.prototype, "resize").value;
25126
- var detachedBuffer = Object.getOwnPropertyDescriptor(ArrayBuffer.prototype, "detached").get;
25125
+ var resizeBuffer2 = Object.getOwnPropertyDescriptor(ArrayBuffer.prototype, "resize")?.value;
25127
25126
  function createArrayBufferGlobal(budget) {
25128
25127
  const prototype = /* @__PURE__ */ Object.create(null);
25129
25128
  const constructor = createSandboxClosure({
@@ -25164,6 +25163,8 @@ function createArrayBufferGlobal(budget) {
25164
25163
  }
25165
25164
  const target = context?.newTarget ?? constructor;
25166
25165
  selected = await bridge.getProperty(target, "prototype");
25166
+ if (maxByteLength !== void 0 && resizeBuffer2 === void 0)
25167
+ throw new TypeError("Resizable ArrayBuffer requires host runtime support.");
25167
25168
  budget.allocateArrayLength(maxByteLength ?? length);
25168
25169
  budget.provisionDataUsage(length + 1)();
25169
25170
  const result = Reflect.construct(ArrayBuffer, [length, maxByteLength === void 0 ? void 0 : { maxByteLength }]);
@@ -25214,7 +25215,7 @@ function createArrayBufferGlobal(budget) {
25214
25215
  call: async (args, context) => {
25215
25216
  const receiver = context?.thisValue;
25216
25217
  if (!isSandboxArrayBuffer(receiver)) throw new TypeError("ArrayBuffer slice requires a buffer receiver.");
25217
- if (Reflect.apply(detachedBuffer, receiver, [])) throw new TypeError("Cannot slice a detached ArrayBuffer.");
25218
+ new Uint8Array(receiver, 0, 0);
25218
25219
  const length = arrayBufferLength(receiver);
25219
25220
  let candidate;
25220
25221
  let result;
@@ -25251,9 +25252,10 @@ function createArrayBufferGlobal(budget) {
25251
25252
  result = new ArrayBuffer(size);
25252
25253
  setSandboxPrototype(result, prototype, budget);
25253
25254
  } else result = await invokeBuiltinClosure(candidate, [size], budget, bridge, void 0, true);
25254
- if (!isSandboxArrayBuffer(result) || Reflect.apply(detachedBuffer, result, []) || result === receiver || arrayBufferLength(result) < size)
25255
+ if (!isSandboxArrayBuffer(result) || result === receiver || arrayBufferLength(result) < size)
25255
25256
  throw new TypeError("ArrayBuffer species must return distinct sufficient buffer storage.");
25256
- if (Reflect.apply(detachedBuffer, receiver, [])) throw new TypeError("Cannot slice a detached ArrayBuffer.");
25257
+ new Uint8Array(result, 0, 0);
25258
+ new Uint8Array(receiver, 0, 0);
25257
25259
  const count = Math.min(size, Math.max(arrayBufferLength(receiver) - start, 0));
25258
25260
  if (count > 0) new Uint8Array(result, 0, count).set(new Uint8Array(receiver, start, count));
25259
25261
  return result;
@@ -25273,7 +25275,7 @@ function createArrayBufferGlobal(budget) {
25273
25275
  length: 1,
25274
25276
  call: async (args, context) => {
25275
25277
  const receiver = context?.thisValue;
25276
- if (!isSandboxArrayBuffer(receiver) || arrayBufferOptions(receiver) === void 0)
25278
+ if (resizeBuffer2 === void 0 || !isSandboxArrayBuffer(receiver) || arrayBufferOptions(receiver) === void 0)
25277
25279
  throw new TypeError("ArrayBuffer resize requires a resizable buffer receiver.");
25278
25280
  const release = retainValues(budget, () => [receiver, ...args]);
25279
25281
  try {
@@ -42338,4 +42340,4 @@ export {
42338
42340
  FileSnapshotBackend,
42339
42341
  run
42340
42342
  };
42341
- //# sourceMappingURL=chunk-J5UIUYUC.js.map
42343
+ //# sourceMappingURL=chunk-6SSHJVLI.js.map