refactor(polyfill): replace `webextension-polyfill` with simple `browser` fallback to `chrome`
This commit is contained in:
parent
923a906a9e
commit
8023167072
|
@ -1,2 +1 @@
|
||||||
/web-ext-artifacts
|
/web-ext-artifacts
|
||||||
src/browser-polyfill.js
|
|
||||||
|
|
|
@ -31,6 +31,7 @@ All notable changes to this project will be documented in this file.
|
||||||
- Update dependencies
|
- Update dependencies
|
||||||
- Update dependencies
|
- Update dependencies
|
||||||
- Update `husky`
|
- Update `husky`
|
||||||
|
- Update dependencies
|
||||||
|
|
||||||
### ✳️ Other
|
### ✳️ Other
|
||||||
|
|
||||||
|
|
|
@ -43,10 +43,7 @@ Example: `npm run watch:firefox-android -- --firefox-apk=org.mozilla.fenix --fir
|
||||||
## Build
|
## Build
|
||||||
|
|
||||||
```ssh
|
```ssh
|
||||||
// For Firefox
|
$ npm run build
|
||||||
$ npm run build:firefox
|
|
||||||
// For Chromium
|
|
||||||
$ npm run build:chromium
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Release
|
## Release
|
||||||
|
|
|
@ -20,8 +20,7 @@
|
||||||
},
|
},
|
||||||
"excludes": [
|
"excludes": [
|
||||||
"**/node_modules",
|
"**/node_modules",
|
||||||
"**/*-lock.json",
|
"**/*-lock.json"
|
||||||
"src/browser-polyfill.js"
|
|
||||||
],
|
],
|
||||||
"plugins": [
|
"plugins": [
|
||||||
"https://plugins.dprint.dev/typescript-0.88.7.wasm",
|
"https://plugins.dprint.dev/typescript-0.88.7.wasm",
|
||||||
|
|
|
@ -7,7 +7,6 @@ const noUnsanitized = require('eslint-plugin-no-unsanitized');
|
||||||
module.exports = [
|
module.exports = [
|
||||||
{
|
{
|
||||||
files: ['**/*.js'],
|
files: ['**/*.js'],
|
||||||
ignores: ['src/browser-polyfill.js'],
|
|
||||||
languageOptions: {
|
languageOptions: {
|
||||||
globals: {
|
globals: {
|
||||||
...globals.browser,
|
...globals.browser,
|
||||||
|
|
|
@ -7,11 +7,7 @@
|
||||||
"": {
|
"": {
|
||||||
"name": "usrspace-browser-addon",
|
"name": "usrspace-browser-addon",
|
||||||
"version": "0.9.5",
|
"version": "0.9.5",
|
||||||
"hasInstallScript": true,
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
|
||||||
"webextension-polyfill": "^0.10.0"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@commitlint/cli": "^18.6.0",
|
"@commitlint/cli": "^18.6.0",
|
||||||
"@commitlint/config-conventional": "^18.6.0",
|
"@commitlint/config-conventional": "^18.6.0",
|
||||||
|
@ -8809,11 +8805,6 @@
|
||||||
"node": ">= 8"
|
"node": ">= 8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/webextension-polyfill": {
|
|
||||||
"version": "0.10.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/webextension-polyfill/-/webextension-polyfill-0.10.0.tgz",
|
|
||||||
"integrity": "sha512-c5s35LgVa5tFaHhrZDnr3FpQpjj1BB+RXhLTYUxGqBVN460HkbM8TBtEqdXWbpTKfzwCcjAZVF7zXCYSKtcp9g=="
|
|
||||||
},
|
|
||||||
"node_modules/webidl-conversions": {
|
"node_modules/webidl-conversions": {
|
||||||
"version": "3.0.1",
|
"version": "3.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
|
||||||
|
|
16
package.json
16
package.json
|
@ -2,9 +2,6 @@
|
||||||
"name": "usrspace-browser-addon",
|
"name": "usrspace-browser-addon",
|
||||||
"description": "WebExtension for the Hacker-/Maker-Space /usr/space",
|
"description": "WebExtension for the Hacker-/Maker-Space /usr/space",
|
||||||
"version": "0.9.5",
|
"version": "0.9.5",
|
||||||
"dependencies": {
|
|
||||||
"webextension-polyfill": "^0.10.0"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@commitlint/cli": "^18.6.0",
|
"@commitlint/cli": "^18.6.0",
|
||||||
"@commitlint/config-conventional": "^18.6.0",
|
"@commitlint/config-conventional": "^18.6.0",
|
||||||
|
@ -25,9 +22,6 @@
|
||||||
"web-ext": "^7.11.0"
|
"web-ext": "^7.11.0"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"copy-browser-polyfill": "cp node_modules/webextension-polyfill/dist/browser-polyfill.js src/browser-polyfill.js",
|
|
||||||
"inject-browser-polyfill": "sed -i -r \"s#// \\[INJECT-BROWSER-POLYFILL]#import '\\./browser-polyfill\\.js';#\" src/*.js",
|
|
||||||
"uninject-browser-polyfill": "sed -i -r \"s#import '\\./browser-polyfill\\.js';#// \\[INJECT-BROWSER-POLYFILL]#\" src/*.js",
|
|
||||||
"copy-version": "sed -i 's/^\t\"version\": \".*\",$/\t\"version\": \"'$(rg '^\t\"version\": \"(.+)\",$' -r '$1' < package.json)'\",/' src/manifest.json",
|
"copy-version": "sed -i 's/^\t\"version\": \".*\",$/\t\"version\": \"'$(rg '^\t\"version\": \"(.+)\",$' -r '$1' < package.json)'\",/' src/manifest.json",
|
||||||
"update-changelog": "npm exec git-cliff > CHANGELOG.md",
|
"update-changelog": "npm exec git-cliff > CHANGELOG.md",
|
||||||
"lint": "npm run lint:web-ext && npm run lint:js && npm run lint:css",
|
"lint": "npm run lint:web-ext && npm run lint:js && npm run lint:css",
|
||||||
|
@ -42,17 +36,11 @@
|
||||||
"watch:firefox-android": "web-ext run -t firefox-android",
|
"watch:firefox-android": "web-ext run -t firefox-android",
|
||||||
"watch:chromium": "web-ext run -t chromium",
|
"watch:chromium": "web-ext run -t chromium",
|
||||||
"prebuild": "cp LICENSE.txt src/",
|
"prebuild": "cp LICENSE.txt src/",
|
||||||
"prebuild:firefox": "npm run prebuild",
|
"build": "web-ext build",
|
||||||
"prebuild:chromium": "npm run prebuild && npm run inject-browser-polyfill",
|
|
||||||
"build:firefox": "web-ext build -i browser-polyfill.js",
|
|
||||||
"build:chromium": "web-ext build",
|
|
||||||
"postbuild": "rm src/LICENSE.txt",
|
"postbuild": "rm src/LICENSE.txt",
|
||||||
"postbuild:firefox": "npm run postbuild",
|
|
||||||
"postbuild:chromium": "npm run postbuild && npm run uninject-browser-polyfill",
|
|
||||||
"postinstall": "npm run copy-browser-polyfill",
|
|
||||||
"preversion": "npm run fmt:check && npm run lint && npm test",
|
"preversion": "npm run fmt:check && npm run lint && npm test",
|
||||||
"version": "npm run copy-version && npm run update-changelog && git add CHANGELOG.md src/manifest.json",
|
"version": "npm run copy-version && npm run update-changelog && git add CHANGELOG.md src/manifest.json",
|
||||||
"postversion": "npm run build:firefox",
|
"postversion": "npm run build",
|
||||||
"prepare": "husky",
|
"prepare": "husky",
|
||||||
"commit": "git-cz"
|
"commit": "git-cz"
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { REFRESH_TIMEOUT, HOMEPAGE, API_URLS, BADGE_COLORS } from './config.js';
|
import { REFRESH_TIMEOUT, HOMEPAGE, API_URLS, BADGE_COLORS } from './config.js';
|
||||||
// [INJECT-BROWSER-POLYFILL]
|
|
||||||
|
globalThis.browser ??= chrome;
|
||||||
|
|
||||||
browser.runtime.onInstalled.addListener(async (details) => {
|
browser.runtime.onInstalled.addListener(async (details) => {
|
||||||
init();
|
init();
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { QUICK_LINKS } from './config.js';
|
import { QUICK_LINKS } from './config.js';
|
||||||
// [INJECT-BROWSER-POLYFILL]
|
|
||||||
|
globalThis.browser ??= chrome;
|
||||||
|
|
||||||
const dateTimeFormat = Intl.DateTimeFormat([], { dateStyle: 'medium', timeStyle: 'short' });
|
const dateTimeFormat = Intl.DateTimeFormat([], { dateStyle: 'medium', timeStyle: 'short' });
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue