You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP →
Socket
Book a DemoInstallSign in
Socket

@electron/fiddle-core

Package Overview
Dependencies
Maintainers
1
Versions
19
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@electron/fiddle-core - npm Package Compare versions

Comparing version

to
1.4.0

dist/tsconfig.tsbuildinfo

3

dist/command-line.js

@@ -6,3 +6,3 @@ "use strict";

Object.defineProperty(exports, "__esModule", { value: true });
exports.runFromCommandLine = void 0;
exports.runFromCommandLine = runFromCommandLine;
const util_1 = require("util");

@@ -71,2 +71,1 @@ const debug_1 = __importDefault(require("debug"));

}
exports.runFromCommandLine = runFromCommandLine;

@@ -15,2 +15,5 @@ export declare class Fiddle {

export type FiddleSource = Fiddle | string | Iterable<[string, string]>;
export interface FiddleFactoryCreateOptions {
packAsAsar?: boolean;
}
export declare class FiddleFactory {

@@ -23,3 +26,4 @@ private readonly fiddles;

fromEntries(src: Iterable<[string, string]>): Promise<Fiddle>;
create(src: FiddleSource): Promise<Fiddle | undefined>;
create(src: FiddleSource, options?: FiddleFactoryCreateOptions): Promise<Fiddle | undefined>;
private packageFiddleAsAsar;
}

@@ -32,2 +32,3 @@ "use strict";

const path = __importStar(require("path"));
const asar = __importStar(require("@electron/asar"));
const debug_1 = __importDefault(require("debug"));

@@ -102,17 +103,40 @@ const simple_git_1 = __importDefault(require("simple-git"));

}
async create(src) {
if (src instanceof Fiddle)
return src;
if (typeof src === 'string') {
if (fs.existsSync(src))
return this.fromFolder(src);
if (/^[0-9A-Fa-f]{32}$/.test(src))
return this.fromGist(src);
if (/^https:/.test(src) || /\.git$/.test(src))
return this.fromRepo(src);
return;
async create(src, options) {
let fiddle;
if (src instanceof Fiddle) {
fiddle = src;
}
return this.fromEntries(src);
else if (typeof src === 'string') {
if (fs.existsSync(src)) {
fiddle = await this.fromFolder(src);
}
else if (/^[0-9A-Fa-f]{32}$/.test(src)) {
fiddle = await this.fromGist(src);
}
else if (/^https:/.test(src) || /\.git$/.test(src)) {
fiddle = await this.fromRepo(src);
}
else {
return;
}
}
else {
fiddle = await this.fromEntries(src);
}
const { packAsAsar } = options || {};
if (packAsAsar) {
fiddle = await this.packageFiddleAsAsar(fiddle);
}
return fiddle;
}
async packageFiddleAsAsar(fiddle) {
const sourceDir = path.dirname(fiddle.mainPath);
const asarOutputDir = path.join(this.fiddles, hashString(sourceDir));
const asarFilePath = path.join(asarOutputDir, 'app.asar');
await asar.createPackage(sourceDir, asarFilePath);
const packagedFiddle = new Fiddle(asarFilePath, fiddle.source);
await fs.remove(sourceDir);
return packagedFiddle;
}
}
exports.FiddleFactory = FiddleFactory;
#!/usr/bin/env node
import { DefaultPaths, Paths } from './paths';
import { ElectronBinary, Installer, InstallerParams, InstallState, InstallStateEvent, Mirrors, ProgressObject } from './installer';
import { Fiddle, FiddleFactory, FiddleSource } from './fiddle';
import { Fiddle, FiddleFactory, FiddleSource, FiddleFactoryCreateOptions } from './fiddle';
import { BisectResult, Runner, RunnerOptions, RunnerSpawnOptions, TestResult } from './runner';
import { BaseVersions, ElectronVersions, ElectronVersionsCreateOptions, ReleaseInfo, SemOrStr, SemVer, Versions, compareVersions } from './versions';
import { runFromCommandLine } from './command-line';
export { BaseVersions, BisectResult, DefaultPaths, ElectronBinary, ElectronVersions, ElectronVersionsCreateOptions, Fiddle, FiddleFactory, FiddleSource, InstallState, InstallStateEvent, Installer, InstallerParams, Mirrors, Paths, ProgressObject, ReleaseInfo, Runner, RunnerOptions, RunnerSpawnOptions, SemOrStr, SemVer, TestResult, Versions, compareVersions, runFromCommandLine, };
export { BaseVersions, BisectResult, DefaultPaths, ElectronBinary, ElectronVersions, ElectronVersionsCreateOptions, Fiddle, FiddleFactory, FiddleFactoryCreateOptions, FiddleSource, InstallState, InstallStateEvent, Installer, InstallerParams, Mirrors, Paths, ProgressObject, ReleaseInfo, Runner, RunnerOptions, RunnerSpawnOptions, SemOrStr, SemVer, TestResult, Versions, compareVersions, runFromCommandLine, };

@@ -1,2 +0,1 @@

/// <reference types="node" />
import { EventEmitter } from 'events';

@@ -3,0 +2,0 @@ import { Paths } from './paths';

@@ -55,3 +55,3 @@ "use strict";

InstallState["installed"] = "installed";
})(InstallState = exports.InstallState || (exports.InstallState = {}));
})(InstallState || (exports.InstallState = InstallState = {}));
/**

@@ -58,0 +58,0 @@ * Manage downloading and installing Electron versions.

@@ -1,3 +0,1 @@

/// <reference types="node" />
/// <reference types="node" />
import { Writable } from 'stream';

@@ -15,2 +13,3 @@ import { ChildProcess, SpawnOptions } from 'child_process';

showConfig?: boolean;
runFromAsar?: boolean;
}

@@ -17,0 +16,0 @@ export type RunnerSpawnOptions = SpawnOptions & RunnerOptions;

@@ -129,3 +129,5 @@ "use strict";

const version = versionIn instanceof semver_1.SemVer ? versionIn.version : versionIn;
const fiddle = await this.fiddleFactory.create(fiddleIn);
const fiddle = await this.fiddleFactory.create(fiddleIn, {
packAsAsar: opts.runFromAsar,
});
if (!fiddle)

@@ -132,0 +134,0 @@ throw new Error(`Invalid fiddle: "${(0, util_1.inspect)(fiddleIn)}"`);

@@ -29,3 +29,4 @@ "use strict";

Object.defineProperty(exports, "__esModule", { value: true });
exports.ElectronVersions = exports.BaseVersions = exports.compareVersions = exports.SemVer = void 0;
exports.ElectronVersions = exports.BaseVersions = exports.SemVer = void 0;
exports.compareVersions = compareVersions;
const fs = __importStar(require("fs-extra"));

@@ -51,3 +52,2 @@ const semver_1 = require("semver");

}
exports.compareVersions = compareVersions;
// ts type guards

@@ -54,0 +54,0 @@ function hasVersion(val) {

@@ -7,3 +7,3 @@ {

"name": "@electron/fiddle-core",
"version": "1.3.4",
"version": "1.4.0",
"description": "Run fiddles from anywhere, on any Electron release",

@@ -18,2 +18,5 @@ "main": "dist/index.js",

],
"publishConfig": {
"provenance": true
},
"scripts": {

@@ -36,2 +39,3 @@ "build": "tsc -b",

"dependencies": {
"@electron/asar": "^3.3.1",
"@electron/get": "^2.0.0",

@@ -61,9 +65,9 @@ "debug": "^4.3.3",

"eslint-config-prettier": "^8.8.0",
"eslint-plugin-prettier": "^4.2.1",
"eslint-plugin-prettier": "^5.2.1",
"jest": "^29.7.0",
"nock": "^13.3.8",
"npm-run-all": "^4.1.5",
"prettier": "^2.5.1",
"prettier": "^3.4.2",
"ts-jest": "^29.1.1",
"typescript": "^4.9.5"
"typescript": "^5.6.3"
},

@@ -70,0 +74,0 @@ "engines": {

# @electron/fiddle-core
[![CircleCI](https://circleci.com/gh/electron/fiddle-core.svg?style=svg)](https://circleci.com/gh/electron/fiddle-core)
[![Test](https://github.com/electron/fiddle-core/actions/workflows/test.yml/badge.svg)](https://github.com/electron/fiddle-core/actions/workflows/test.yml)
[![NPM](https://img.shields.io/npm/v/@electron/fiddle-core.svg?style=flat)](https://npmjs.org/package/@electron/fiddle-core)

@@ -5,0 +5,0 @@