You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					187 lines
				
				6.3 KiB
			
		
		
			
		
	
	
					187 lines
				
				6.3 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								### Made by [@kilianvalkhof](https://twitter.com/kilianvalkhof)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### Other projects:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								- 💻 [Polypane](https://polypane.app) - Develop responsive websites and apps twice as fast on multiple screens at once
							 | 
						||
| 
								 | 
							
								- 🖌️ [Superposition](https://superposition.design) - Kickstart your design system by extracting design tokens from your website
							 | 
						||
| 
								 | 
							
								- 🗒️ [FromScratch](https://fromscratch.rocks) - A smart but simple autosaving scratchpad
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								---
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Electron-to-Chromium [](https://www.npmjs.com/package/electron-to-chromium) [](https://travis-ci.org/Kilian/electron-to-chromium) [](https://www.npmjs.com/package/electron-to-chromium) [](https://codecov.io/gh/Kilian/electron-to-chromium)[](https://app.fossa.io/projects/git%2Bgithub.com%2FKilian%2Felectron-to-chromium?ref=badge_shield)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								This repository provides a mapping of Electron versions to the Chromium version that it uses.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								This package is used in [Browserslist](https://github.com/ai/browserslist), so you can use e.g. `electron >= 1.4` in [Autoprefixer](https://github.com/postcss/autoprefixer), [Stylelint](https://github.com/stylelint/stylelint), [babel-preset-env](https://github.com/babel/babel-preset-env) and [eslint-plugin-compat](https://github.com/amilajack/eslint-plugin-compat).
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								**Supported by:**
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  <a href="https://m.do.co/c/bb22ea58e765">
							 | 
						||
| 
								 | 
							
								    <img src="https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg" width="201px">
							 | 
						||
| 
								 | 
							
								  </a>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Install
							 | 
						||
| 
								 | 
							
								Install using `npm install electron-to-chromium`.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Usage
							 | 
						||
| 
								 | 
							
								To include Electron-to-Chromium, require it:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var e2c = require('electron-to-chromium');
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								### Properties
							 | 
						||
| 
								 | 
							
								The Electron-to-Chromium object has 4 properties to use:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### `versions`
							 | 
						||
| 
								 | 
							
								An object of key-value pairs with a _major_ Electron version as the key, and the corresponding major Chromium version as the value.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var versions = e2c.versions;
							 | 
						||
| 
								 | 
							
								console.log(versions['1.4']);
							 | 
						||
| 
								 | 
							
								// returns "53"
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### `fullVersions`
							 | 
						||
| 
								 | 
							
								An object of key-value pairs with a Electron version as the key, and the corresponding full Chromium version as the value.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var versions = e2c.fullVersions;
							 | 
						||
| 
								 | 
							
								console.log(versions['1.4.11']);
							 | 
						||
| 
								 | 
							
								// returns "53.0.2785.143"
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### `chromiumVersions`
							 | 
						||
| 
								 | 
							
								An object of key-value pairs with a _major_ Chromium version as the key, and the corresponding major Electron version as the value.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var versions = e2c.chromiumVersions;
							 | 
						||
| 
								 | 
							
								console.log(versions['54']);
							 | 
						||
| 
								 | 
							
								// returns "1.4"
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### `fullChromiumVersions`
							 | 
						||
| 
								 | 
							
								An object of key-value pairs with a Chromium version as the key, and an array of the corresponding major Electron versions as the value.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var versions = e2c.fullChromiumVersions;
							 | 
						||
| 
								 | 
							
								console.log(versions['54.0.2840.101']);
							 | 
						||
| 
								 | 
							
								// returns ["1.5.1", "1.5.0"]
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								### Functions
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### `electronToChromium(query)`
							 | 
						||
| 
								 | 
							
								Arguments:
							 | 
						||
| 
								 | 
							
								* Query: string or number, required. A major or full Electron version.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								A function that returns the corresponding Chromium version for a given Electron function. Returns a string.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								If you provide it with a major Electron version, it will return a major Chromium version:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var chromeVersion = e2c.electronToChromium('1.4');
							 | 
						||
| 
								 | 
							
								// chromeVersion is "53"
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								If you provide it with a full Electron version, it will return the full Chromium version.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var chromeVersion = e2c.electronToChromium('1.4.11');
							 | 
						||
| 
								 | 
							
								// chromeVersion is "53.0.2785.143"
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								If a query does not match a Chromium version, it will return `undefined`.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var chromeVersion = e2c.electronToChromium('9000');
							 | 
						||
| 
								 | 
							
								// chromeVersion is undefined
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### `chromiumToElectron(query)`
							 | 
						||
| 
								 | 
							
								Arguments:
							 | 
						||
| 
								 | 
							
								* Query: string or number, required. A major or full Chromium version.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Returns a string with the corresponding Electron version for a given Chromium query.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								If you provide it with a major Chromium version, it will return a major Electron version:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var electronVersion = e2c.chromiumToElectron('54');
							 | 
						||
| 
								 | 
							
								// electronVersion is "1.4"
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								If you provide it with a full Chrome version, it will return an array of full Electron versions.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var electronVersions = e2c.chromiumToElectron('56.0.2924.87');
							 | 
						||
| 
								 | 
							
								// electronVersions is ["1.6.3", "1.6.2", "1.6.1", "1.6.0"]
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								If a query does not match an Electron version, it will return `undefined`.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var electronVersion = e2c.chromiumToElectron('10');
							 | 
						||
| 
								 | 
							
								// electronVersion is undefined
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### `electronToBrowserList(query)` **DEPRECATED**
							 | 
						||
| 
								 | 
							
								Arguments:
							 | 
						||
| 
								 | 
							
								* Query: string or number, required. A major Electron version.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								_**Deprecated**: Browserlist already includes electron-to-chromium._
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								A function that returns a [Browserslist](https://github.com/ai/browserslist) query that matches the given major Electron version. Returns a string.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								If you provide it with a major Electron version, it will return a Browserlist query string that matches the Chromium capabilities:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var query = e2c.electronToBrowserList('1.4');
							 | 
						||
| 
								 | 
							
								// query is "Chrome >= 53"
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								If a query does not match a Chromium version, it will return `undefined`.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var query = e2c.electronToBrowserList('9000');
							 | 
						||
| 
								 | 
							
								// query is undefined
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								### Importing just versions, fullVersions, chromiumVersions and fullChromiumVersions
							 | 
						||
| 
								 | 
							
								All lists can be imported on their own, if file size is a concern.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### `versions`
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var versions = require('electron-to-chromium/versions');
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### `fullVersions`
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var fullVersions = require('electron-to-chromium/full-versions');
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### `chromiumVersions`
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var chromiumVersions = require('electron-to-chromium/chromium-versions');
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### `fullChromiumVersions`
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								var fullChromiumVersions = require('electron-to-chromium/full-chromium-versions');
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Updating
							 | 
						||
| 
								 | 
							
								This package will be updated with each new Electron release.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								To update the list, run `npm run build.js`. Requires internet access as it downloads from the canonical list of Electron versions.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								To verify correct behaviour, run `npm test`.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## License
							 | 
						||
| 
								 | 
							
								[](https://app.fossa.io/projects/git%2Bgithub.com%2FKilian%2Felectron-to-chromium?ref=badge_large)
							 |