Socket
Socket
Sign inDemoInstall

@edge-runtime/primitives

Package Overview
Dependencies
Maintainers
1
Versions
99
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@edge-runtime/primitives - npm Package Compare versions

Comparing version 2.2.0-beta.2 to 2.2.0-beta.3

dist/load.js

168

dist/index.js
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
// If the importer is in node compatibility mode or this is not an ESM
// file that has been converted to a CommonJS file using a Babel-
// compatible transform (i.e. "__esModule" has not been set), then set
// "default" to the CommonJS "module.exports" for node compatibility.
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
mod
));
// src/primitives/index.js
var import_module = __toESM(require("module"));
var import_path = require("path");
var import_fs = require("fs");
var path = require("path");
function load() {
const context = {};
const encodingImpl = require("./encoding");
Object.assign(context, {
TextDecoder: encodingImpl.TextDecoder,
TextEncoder: encodingImpl.TextEncoder,
atob: encodingImpl.atob,
btoa: encodingImpl.btoa
});
const consoleImpl = requireWithFakeGlobalScope({
context,
path: path.resolve(__dirname, "./console.js"),
scopedContext: {}
});
Object.assign(context, { console: consoleImpl.console });
const eventsImpl = require("./events");
Object.assign(context, {
Event: eventsImpl.Event,
EventTarget: eventsImpl.EventTarget,
FetchEvent: eventsImpl.FetchEvent,
PromiseRejectionEvent: eventsImpl.PromiseRejectionEvent
});
const streamsImpl = require("./streams");
const textEncodingStreamImpl = requireWithFakeGlobalScope({
context,
path: path.resolve(__dirname, "./text-encoding-streams.js"),
scopedContext: streamsImpl
});
Object.assign(context, {
ReadableStream: streamsImpl.ReadableStream,
ReadableStreamBYOBReader: streamsImpl.ReadableStreamBYOBReader,
ReadableStreamDefaultReader: streamsImpl.ReadableStreamDefaultReader,
TextDecoderStream: textEncodingStreamImpl.TextDecoderStream,
TextEncoderStream: textEncodingStreamImpl.TextEncoderStream,
TransformStream: streamsImpl.TransformStream,
WritableStream: streamsImpl.WritableStream,
WritableStreamDefaultWriter: streamsImpl.WritableStreamDefaultWriter
});
const abortControllerImpl = requireWithFakeGlobalScope({
context,
path: path.resolve(__dirname, "./abort-controller.js"),
scopedContext: eventsImpl
});
Object.assign(context, abortControllerImpl);
const urlImpl = require("./url");
Object.assign(context, {
URL: urlImpl.URL,
URLSearchParams: urlImpl.URLSearchParams,
URLPattern: urlImpl.URLPattern
});
const blobImpl = requireWithFakeGlobalScope({
context,
path: path.resolve(__dirname, "./blob.js"),
scopedContext: streamsImpl
});
Object.assign(context, {
Blob: blobImpl.Blob
});
const structuredCloneImpl = requireWithFakeGlobalScope({
path: path.resolve(__dirname, "./structured-clone.js"),
context,
scopedContext: streamsImpl
});
Object.assign(context, {
structuredClone: structuredCloneImpl.structuredClone
});
const fetchImpl = requireWithFakeGlobalScope({
context,
path: path.resolve(__dirname, "./fetch.js"),
cache: /* @__PURE__ */ new Map([
["abort-controller", { exports: abortControllerImpl }],
["streams", { exports: streamsImpl }]
]),
scopedContext: {
...streamsImpl,
...urlImpl,
...abortControllerImpl,
...eventsImpl,
structuredClone: context.structuredClone
}
});
Object.assign(context, {
fetch: fetchImpl.fetch,
File: fetchImpl.File,
FormData: fetchImpl.FormData,
Headers: fetchImpl.Headers,
Request: fetchImpl.Request,
Response: fetchImpl.Response,
WebSocket: fetchImpl.WebSocket
});
const cryptoImpl = require("./crypto");
Object.assign(context, {
crypto: cryptoImpl.crypto,
Crypto: cryptoImpl.Crypto,
CryptoKey: cryptoImpl.CryptoKey,
SubtleCrypto: cryptoImpl.SubtleCrypto
});
return context;
}
__name(load, "load");
module.exports = load();
function requireWithFakeGlobalScope(params) {
const resolved = path.resolve(params.path);
const getModuleCode = `(function(module,exports,require,__dirname,__filename,globalThis,${Object.keys(
params.scopedContext
).join(",")}) {${(0, import_fs.readFileSync)(resolved, "utf-8")}
})`;
const module = {
exports: {},
loaded: false,
id: resolved
};
const moduleRequire = (import_module.default.createRequire || import_module.default.createRequireFromPath)(
resolved
);
function throwingRequire(path2) {
if (path2.startsWith("./")) {
const moduleName = path2.replace(/^\.\//, "");
if (!params.cache || !params.cache.has(moduleName)) {
throw new Error(`Cannot find module '${moduleName}'`);
}
return params.cache.get(moduleName).exports;
}
return moduleRequire(path2);
}
__name(throwingRequire, "throwingRequire");
throwingRequire.resolve = moduleRequire.resolve.bind(moduleRequire);
eval(getModuleCode)(
module,
module.exports,
throwingRequire,
(0, import_path.dirname)(resolved),
resolved,
params.context,
...Object.values(params.scopedContext)
);
return module.exports;
}
__name(requireWithFakeGlobalScope, "requireWithFakeGlobalScope");
var import_load = require("./load");
module.exports = (0, import_load.load)({ WeakRef: global.WeakRef });

@@ -5,3 +5,3 @@ {

"homepage": "https://edge-runtime.vercel.app/packages/primitives",
"version": "2.2.0-beta.2",
"version": "2.2.0-beta.3",
"main": "dist/index.js",

@@ -8,0 +8,0 @@ "repository": {

@@ -7,2 +7,3 @@ declare class Headers extends globalThis.Headers {

readonly headers: Headers
readonly duplex: string
}

@@ -15,4 +16,4 @@

type RequestInfo = Parameters<typeof fetch>[0]
type RequestInit = Parameters<typeof fetch>[1]
type RequestInfo = string | Request | globalThis.Request
type RequestInit = globalThis.RequestInit
declare const fetchImplementation: (

@@ -19,0 +20,0 @@ info: RequestInfo,

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc