3 Commits

Author SHA1 Message Date
91f1833534 Migrate to manifest v3 2023-12-10 11:15:53 +03:00
Anatoly Kopyl
4089f640ea Merge pull request #25 from anatolykopyl/dependabot/npm_and_yarn/postcss-8.4.31
Bump postcss from 8.4.20 to 8.4.31
2023-12-09 13:15:20 +03:00
dependabot[bot]
bc49282b62 Bump postcss from 8.4.20 to 8.4.31
Bumps [postcss](https://github.com/postcss/postcss) from 8.4.20 to 8.4.31.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.20...8.4.31)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-07 10:53:05 +00:00
18 changed files with 1165 additions and 1152 deletions

View File

@@ -1,3 +1,3 @@
{ {
"presets": ["@babel/preset-env"] "presets": ["@babel/preset-env"]
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

File diff suppressed because one or more lines are too long

1224
extension/dist/dom.js vendored

File diff suppressed because one or more lines are too long

View File

@@ -2,12 +2,11 @@
<html> <html>
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
</head> <script defer src="popup.js"></script></head>
<body> <body>
<div class="header"> <div class="header">
<h3 align="center">VK Mute</h3> <h3 align="center">VK Mute</h3>
</div> </div>
<!--<button id="disableButton">Toggle</button>-->
<div style="text-align: center;"> <div style="text-align: center;">
<label class="switch"> <label class="switch">
<input type="checkbox" id="disableCheckbox"> <input type="checkbox" id="disableCheckbox">
@@ -19,5 +18,5 @@
<div class="donation_btn"> <div class="donation_btn">
<a href="./donate.html" title="Пожертвовать" target="_blank">💸</a> <a href="./donate.html" title="Пожертвовать" target="_blank">💸</a>
</div> </div>
<script src="popup.js"></script></body> </body>
</html> </html>

File diff suppressed because one or more lines are too long

View File

@@ -6,20 +6,21 @@
"128": "assets/icons/icon128.png", "128": "assets/icons/icon128.png",
"48": "assets/icons/icon48.png" "48": "assets/icons/icon48.png"
}, },
"version": "1.4", "version": "1.5.0",
"description": "Позволяет заглушить нежелаемых собеседников", "description": "Позволяет заглушить нежелаемых собеседников",
"permissions": [ "permissions": [
"declarativeContent",
"storage" "storage"
], ],
"background": { "action": {
"scripts": ["dist/background.js"], "default_icon": {
"persistent": false "140": "assets/icons/icon140.png",
}, "128": "assets/icons/icon128.png",
"page_action": { "48": "assets/icons/icon48.png"
},
"default_title": "VK Mute",
"default_popup": "dist/popup.html" "default_popup": "dist/popup.html"
}, },
"manifest_version": 2, "manifest_version": 3,
"content_scripts": [ "content_scripts": [
{ {
"matches": ["https://*.vk.com/*"], "matches": ["https://*.vk.com/*"],
@@ -27,6 +28,9 @@
} }
], ],
"web_accessible_resources": [ "web_accessible_resources": [
"assets/mute.png" {
"resources": ["assets/mute.png"],
"matches": ["https://*.vk.com/*"]
}
] ]
} }

372
package-lock.json generated
View File

@@ -5,6 +5,7 @@
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "vk-mute",
"version": "1.0.0", "version": "1.0.0",
"license": "ISC", "license": "ISC",
"devDependencies": { "devDependencies": {
@@ -13,6 +14,7 @@
"babel-loader": "^8.3.0", "babel-loader": "^8.3.0",
"css-loader": "^6.7.3", "css-loader": "^6.7.3",
"html-webpack-plugin": "^5.5.0", "html-webpack-plugin": "^5.5.0",
"raw-loader": "^4.0.2",
"style-loader": "^1.1.4", "style-loader": "^1.1.4",
"webpack": "^5.76.0", "webpack": "^5.76.0",
"webpack-cli": "^4.7.2" "webpack-cli": "^4.7.2"
@@ -1399,16 +1401,29 @@
"dev": true "dev": true
}, },
"node_modules/browserslist": { "node_modules/browserslist": {
"version": "4.16.6", "version": "4.22.2",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz",
"integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==", "integrity": "sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==",
"dev": true, "dev": true,
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/browserslist"
},
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/browserslist"
},
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"dependencies": { "dependencies": {
"caniuse-lite": "^1.0.30001219", "caniuse-lite": "^1.0.30001565",
"colorette": "^1.2.2", "electron-to-chromium": "^1.4.601",
"electron-to-chromium": "^1.3.723", "node-releases": "^2.0.14",
"escalade": "^3.1.1", "update-browserslist-db": "^1.0.13"
"node-releases": "^1.1.71"
}, },
"bin": { "bin": {
"browserslist": "cli.js" "browserslist": "cli.js"
@@ -1417,24 +1432,6 @@
"node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
} }
}, },
"node_modules/browserslist/node_modules/caniuse-lite": {
"version": "1.0.30001230",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001230.tgz",
"integrity": "sha512-5yBd5nWCBS+jWKTcHOzXwo5xzcj4ePE/yjtkZyUV1BTUmrBaA9MRGC+e7mxnqXSA90CmCA8L3eKLaSUkt099IQ==",
"dev": true
},
"node_modules/browserslist/node_modules/electron-to-chromium": {
"version": "1.3.739",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.739.tgz",
"integrity": "sha512-+LPJVRsN7hGZ9EIUUiWCpO7l4E3qBYHNadazlucBfsXBbccDFNKUBAgzE68FnkWGJPwD/AfKhSzL+G+Iqb8A4A==",
"dev": true
},
"node_modules/browserslist/node_modules/node-releases": {
"version": "1.1.72",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.72.tgz",
"integrity": "sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw==",
"dev": true
},
"node_modules/buffer-from": { "node_modules/buffer-from": {
"version": "1.1.2", "version": "1.1.2",
"resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
@@ -1457,6 +1454,26 @@
"integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==",
"dev": true "dev": true
}, },
"node_modules/caniuse-lite": {
"version": "1.0.30001566",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001566.tgz",
"integrity": "sha512-ggIhCsTxmITBAMmK8yZjEhCO5/47jKXPu6Dha/wuCS4JePVL+3uiDEBuhu2aIoT+bqTOR8L76Ip1ARL9xYsEJA==",
"dev": true,
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/browserslist"
},
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/caniuse-lite"
},
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
]
},
"node_modules/chalk": { "node_modules/chalk": {
"version": "2.4.2", "version": "2.4.2",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
@@ -1564,22 +1581,16 @@
} }
}, },
"node_modules/core-js-compat": { "node_modules/core-js-compat": {
"version": "3.6.5", "version": "3.34.0",
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.34.0.tgz",
"integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", "integrity": "sha512-4ZIyeNbW/Cn1wkMMDy+mvrRUxrwFNjKwbhCfQpDd+eLgYipDqp8oGFGtLmhh18EDPKA0g3VUBYOxQGGwvWLVpA==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"browserslist": "^4.8.5", "browserslist": "^4.22.2"
"semver": "7.0.0" },
} "funding": {
}, "type": "opencollective",
"node_modules/core-js-compat/node_modules/semver": { "url": "https://opencollective.com/core-js"
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz",
"integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==",
"dev": true,
"bin": {
"semver": "bin/semver.js"
} }
}, },
"node_modules/cross-spawn": { "node_modules/cross-spawn": {
@@ -1623,9 +1634,9 @@
} }
}, },
"node_modules/css-loader/node_modules/semver": { "node_modules/css-loader/node_modules/semver": {
"version": "7.3.8", "version": "7.5.4",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
"integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"lru-cache": "^6.0.0" "lru-cache": "^6.0.0"
@@ -1678,12 +1689,20 @@
} }
}, },
"node_modules/debug": { "node_modules/debug": {
"version": "4.1.1", "version": "4.3.4",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
"integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"ms": "^2.1.1" "ms": "2.1.2"
},
"engines": {
"node": ">=6.0"
},
"peerDependenciesMeta": {
"supports-color": {
"optional": true
}
} }
}, },
"node_modules/define-properties": { "node_modules/define-properties": {
@@ -1778,6 +1797,12 @@
"integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==",
"dev": true "dev": true
}, },
"node_modules/electron-to-chromium": {
"version": "1.4.609",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.609.tgz",
"integrity": "sha512-ihiCP7PJmjoGNuLpl7TjNA8pCQWu09vGyjlPYw1Rqww4gvNuCcmvl+44G+2QyJ6S2K4o+wbTS++Xz0YN8Q9ERw==",
"dev": true
},
"node_modules/emojis-list": { "node_modules/emojis-list": {
"version": "3.0.0", "version": "3.0.0",
"resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
@@ -2421,9 +2446,9 @@
} }
}, },
"node_modules/make-dir/node_modules/semver": { "node_modules/make-dir/node_modules/semver": {
"version": "6.3.0", "version": "6.3.1",
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"dev": true, "dev": true,
"bin": { "bin": {
"semver": "bin/semver.js" "semver": "bin/semver.js"
@@ -2472,10 +2497,16 @@
"dev": true "dev": true
}, },
"node_modules/nanoid": { "node_modules/nanoid": {
"version": "3.3.4", "version": "3.3.6",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
"integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
"dev": true, "dev": true,
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"bin": { "bin": {
"nanoid": "bin/nanoid.cjs" "nanoid": "bin/nanoid.cjs"
}, },
@@ -2505,6 +2536,12 @@
"integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==",
"dev": true "dev": true
}, },
"node_modules/node-releases": {
"version": "2.0.14",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
"integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==",
"dev": true
},
"node_modules/npm-run-path": { "node_modules/npm-run-path": {
"version": "4.0.1", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
@@ -2670,9 +2707,9 @@
} }
}, },
"node_modules/postcss": { "node_modules/postcss": {
"version": "8.4.20", "version": "8.4.31",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.20.tgz", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
"integrity": "sha512-6Q04AXR1212bXr5fh03u8aAwbLxAQNGQ/Q1LNa0VfOI06ZAlhPHtQvE4OIdpj4kLThXilalPnmDSOD65DcHt+g==", "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
"dev": true, "dev": true,
"funding": [ "funding": [
{ {
@@ -2682,10 +2719,14 @@
{ {
"type": "tidelift", "type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/postcss" "url": "https://tidelift.com/funding/github/npm/postcss"
},
{
"type": "github",
"url": "https://github.com/sponsors/ai"
} }
], ],
"dependencies": { "dependencies": {
"nanoid": "^3.3.4", "nanoid": "^3.3.6",
"picocolors": "^1.0.0", "picocolors": "^1.0.0",
"source-map-js": "^1.0.2" "source-map-js": "^1.0.2"
}, },
@@ -2808,6 +2849,44 @@
"safe-buffer": "^5.1.0" "safe-buffer": "^5.1.0"
} }
}, },
"node_modules/raw-loader": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz",
"integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==",
"dev": true,
"dependencies": {
"loader-utils": "^2.0.0",
"schema-utils": "^3.0.0"
},
"engines": {
"node": ">= 10.13.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/webpack"
},
"peerDependencies": {
"webpack": "^4.0.0 || ^5.0.0"
}
},
"node_modules/raw-loader/node_modules/schema-utils": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
"integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
"dev": true,
"dependencies": {
"@types/json-schema": "^7.0.8",
"ajv": "^6.12.5",
"ajv-keywords": "^3.5.2"
},
"engines": {
"node": ">= 10.13.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/webpack"
}
},
"node_modules/rechoir": { "node_modules/rechoir": {
"version": "0.7.0", "version": "0.7.0",
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz", "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz",
@@ -2970,9 +3049,9 @@
} }
}, },
"node_modules/semver": { "node_modules/semver": {
"version": "5.7.1", "version": "5.7.2",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
"dev": true, "dev": true,
"bin": { "bin": {
"semver": "bin/semver" "semver": "bin/semver"
@@ -3249,6 +3328,36 @@
"node": ">=4" "node": ">=4"
} }
}, },
"node_modules/update-browserslist-db": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz",
"integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==",
"dev": true,
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/browserslist"
},
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/browserslist"
},
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"dependencies": {
"escalade": "^3.1.1",
"picocolors": "^1.0.0"
},
"bin": {
"update-browserslist-db": "cli.js"
},
"peerDependencies": {
"browserslist": ">= 4.21.0"
}
},
"node_modules/uri-js": { "node_modules/uri-js": {
"version": "4.2.2", "version": "4.2.2",
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
@@ -4736,36 +4845,15 @@
"dev": true "dev": true
}, },
"browserslist": { "browserslist": {
"version": "4.16.6", "version": "4.22.2",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz",
"integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==", "integrity": "sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==",
"dev": true, "dev": true,
"requires": { "requires": {
"caniuse-lite": "^1.0.30001219", "caniuse-lite": "^1.0.30001565",
"colorette": "^1.2.2", "electron-to-chromium": "^1.4.601",
"electron-to-chromium": "^1.3.723", "node-releases": "^2.0.14",
"escalade": "^3.1.1", "update-browserslist-db": "^1.0.13"
"node-releases": "^1.1.71"
},
"dependencies": {
"caniuse-lite": {
"version": "1.0.30001230",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001230.tgz",
"integrity": "sha512-5yBd5nWCBS+jWKTcHOzXwo5xzcj4ePE/yjtkZyUV1BTUmrBaA9MRGC+e7mxnqXSA90CmCA8L3eKLaSUkt099IQ==",
"dev": true
},
"electron-to-chromium": {
"version": "1.3.739",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.739.tgz",
"integrity": "sha512-+LPJVRsN7hGZ9EIUUiWCpO7l4E3qBYHNadazlucBfsXBbccDFNKUBAgzE68FnkWGJPwD/AfKhSzL+G+Iqb8A4A==",
"dev": true
},
"node-releases": {
"version": "1.1.72",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.72.tgz",
"integrity": "sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw==",
"dev": true
}
} }
}, },
"buffer-from": { "buffer-from": {
@@ -4792,6 +4880,12 @@
} }
} }
}, },
"caniuse-lite": {
"version": "1.0.30001566",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001566.tgz",
"integrity": "sha512-ggIhCsTxmITBAMmK8yZjEhCO5/47jKXPu6Dha/wuCS4JePVL+3uiDEBuhu2aIoT+bqTOR8L76Ip1ARL9xYsEJA==",
"dev": true
},
"chalk": { "chalk": {
"version": "2.4.2", "version": "2.4.2",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
@@ -4883,21 +4977,12 @@
} }
}, },
"core-js-compat": { "core-js-compat": {
"version": "3.6.5", "version": "3.34.0",
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.34.0.tgz",
"integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", "integrity": "sha512-4ZIyeNbW/Cn1wkMMDy+mvrRUxrwFNjKwbhCfQpDd+eLgYipDqp8oGFGtLmhh18EDPKA0g3VUBYOxQGGwvWLVpA==",
"dev": true, "dev": true,
"requires": { "requires": {
"browserslist": "^4.8.5", "browserslist": "^4.22.2"
"semver": "7.0.0"
},
"dependencies": {
"semver": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz",
"integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==",
"dev": true
}
} }
}, },
"cross-spawn": { "cross-spawn": {
@@ -4928,9 +5013,9 @@
}, },
"dependencies": { "dependencies": {
"semver": { "semver": {
"version": "7.3.8", "version": "7.5.4",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
"integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
"dev": true, "dev": true,
"requires": { "requires": {
"lru-cache": "^6.0.0" "lru-cache": "^6.0.0"
@@ -4964,12 +5049,12 @@
"dev": true "dev": true
}, },
"debug": { "debug": {
"version": "4.1.1", "version": "4.3.4",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
"integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"ms": "^2.1.1" "ms": "2.1.2"
} }
}, },
"define-properties": { "define-properties": {
@@ -5045,6 +5130,12 @@
} }
} }
}, },
"electron-to-chromium": {
"version": "1.4.609",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.609.tgz",
"integrity": "sha512-ihiCP7PJmjoGNuLpl7TjNA8pCQWu09vGyjlPYw1Rqww4gvNuCcmvl+44G+2QyJ6S2K4o+wbTS++Xz0YN8Q9ERw==",
"dev": true
},
"emojis-list": { "emojis-list": {
"version": "3.0.0", "version": "3.0.0",
"resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
@@ -5515,9 +5606,9 @@
}, },
"dependencies": { "dependencies": {
"semver": { "semver": {
"version": "6.3.0", "version": "6.3.1",
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"dev": true "dev": true
} }
} }
@@ -5556,9 +5647,9 @@
"dev": true "dev": true
}, },
"nanoid": { "nanoid": {
"version": "3.3.4", "version": "3.3.6",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
"integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
"dev": true "dev": true
}, },
"neo-async": { "neo-async": {
@@ -5585,6 +5676,12 @@
} }
} }
}, },
"node-releases": {
"version": "2.0.14",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
"integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==",
"dev": true
},
"npm-run-path": { "npm-run-path": {
"version": "4.0.1", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
@@ -5718,12 +5815,12 @@
} }
}, },
"postcss": { "postcss": {
"version": "8.4.20", "version": "8.4.31",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.20.tgz", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
"integrity": "sha512-6Q04AXR1212bXr5fh03u8aAwbLxAQNGQ/Q1LNa0VfOI06ZAlhPHtQvE4OIdpj4kLThXilalPnmDSOD65DcHt+g==", "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"nanoid": "^3.3.4", "nanoid": "^3.3.6",
"picocolors": "^1.0.0", "picocolors": "^1.0.0",
"source-map-js": "^1.0.2" "source-map-js": "^1.0.2"
} }
@@ -5811,6 +5908,29 @@
"safe-buffer": "^5.1.0" "safe-buffer": "^5.1.0"
} }
}, },
"raw-loader": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz",
"integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==",
"dev": true,
"requires": {
"loader-utils": "^2.0.0",
"schema-utils": "^3.0.0"
},
"dependencies": {
"schema-utils": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
"integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
"dev": true,
"requires": {
"@types/json-schema": "^7.0.8",
"ajv": "^6.12.5",
"ajv-keywords": "^3.5.2"
}
}
}
},
"rechoir": { "rechoir": {
"version": "0.7.0", "version": "0.7.0",
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz", "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz",
@@ -5948,9 +6068,9 @@
} }
}, },
"semver": { "semver": {
"version": "5.7.1", "version": "5.7.2",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
"dev": true "dev": true
}, },
"serialize-javascript": { "serialize-javascript": {
@@ -6148,6 +6268,16 @@
"integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==",
"dev": true "dev": true
}, },
"update-browserslist-db": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz",
"integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==",
"dev": true,
"requires": {
"escalade": "^3.1.1",
"picocolors": "^1.0.0"
}
},
"uri-js": { "uri-js": {
"version": "4.2.2", "version": "4.2.2",
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",

View File

@@ -1,6 +1,6 @@
{ {
"name": "vk-mute", "name": "vk-mute",
"version": "1.0.0", "version": "1.5.0",
"description": "Заглушить собеседника в беседе в ВК. 🔇", "description": "Заглушить собеседника в беседе в ВК. 🔇",
"main": "src/dom/main.js", "main": "src/dom/main.js",
"scripts": { "scripts": {
@@ -11,8 +11,8 @@
"type": "git", "type": "git",
"url": "git+https://github.com/anatolykopyl/vk-mute.git" "url": "git+https://github.com/anatolykopyl/vk-mute.git"
}, },
"author": "", "author": "Anatoly Kopyl <hi@kopyl.dev>",
"license": "ISC", "license": "GPL-3.0",
"bugs": { "bugs": {
"url": "https://github.com/anatolykopyl/vk-mute/issues" "url": "https://github.com/anatolykopyl/vk-mute/issues"
}, },
@@ -23,6 +23,7 @@
"babel-loader": "^8.3.0", "babel-loader": "^8.3.0",
"css-loader": "^6.7.3", "css-loader": "^6.7.3",
"html-webpack-plugin": "^5.5.0", "html-webpack-plugin": "^5.5.0",
"raw-loader": "^4.0.2",
"style-loader": "^1.1.4", "style-loader": "^1.1.4",
"webpack": "^5.76.0", "webpack": "^5.76.0",
"webpack-cli": "^4.7.2" "webpack-cli": "^4.7.2"

View File

@@ -1,14 +0,0 @@
chrome.runtime.onInstalled.addListener(function () {
chrome.storage.sync.set({ isExtensionOn: true }, function () {
console.log('isExtensionOn: ' + true);
});
chrome.declarativeContent.onPageChanged.removeRules(undefined, function () {
chrome.declarativeContent.onPageChanged.addRules([{
conditions: [new chrome.declarativeContent.PageStateMatcher({
pageUrl: { hostEquals: 'vk.com' },
})],
actions: [new chrome.declarativeContent.ShowPageAction()]
}]);
});
});

66
src/dom/controls.js vendored
View File

@@ -1,20 +1,24 @@
import {getChatBody} from "../utils/getChatBody";
import muteSvg from "./mute.svg";
/** /**
* *
* @param id {String} * @param id {String}
* @return {HTMLSpanElement} * @return {HTMLSpanElement}
*/ */
import {getChatBody} from "../utils/getChatBody";
function muteBtnHTML(id) { function muteBtnHTML(id) {
const element = document.createElement('span'); const element = document.createElement('span');
element.setAttribute('class', 'mute_message'); element.setAttribute('class', 'im-mess--mute');
element.setAttribute('id', `mute${id}`); element.setAttribute('id', `mute${id}`);
element.setAttribute('label', 'Заглушить'); element.setAttribute('label', 'Заглушить');
element.style.background = `url(${chrome.runtime.getURL("assets/mute.png")}) center no-repeat`; element.innerHTML = muteSvg + '<div class="mute_tooltip tt_w tt_black tt_down"><div class="tt_text">Заглушить</div></div>';
element.innerHTML = '<div class="mute_tooltip tt_w tt_black tt_down"><div class="tt_text">Заглушить</div></div>';
return element; return element;
} }
/**
*
* @param target {HTMLElenemt}
*/
export function tryToAddControls(target) { export function tryToAddControls(target) {
if (target.className === 'im-mess--check fl_l') { if (target.className === 'im-mess--check fl_l') {
const message = target.parentElement; const message = target.parentElement;
@@ -31,7 +35,7 @@ export function tryToAddControls(target) {
function addMuteButton(actionArea, senderId) { function addMuteButton(actionArea, senderId) {
const muteButton = muteBtnHTML(senderId); const muteButton = muteBtnHTML(senderId);
actionArea.appendChild(muteButton); actionArea.appendChild(muteButton);
muteButton.style.display = "none"; muteButton.style.visibility = "hidden";
return muteButton; return muteButton;
} }
@@ -41,41 +45,39 @@ function addMuteButton(actionArea, senderId) {
*/ */
function addActionAreaEvents(actionsArea) { function addActionAreaEvents(actionsArea) {
actionsArea.parentElement.addEventListener("mouseenter", function (event) { actionsArea.parentElement.addEventListener("mouseenter", function (event) {
event.target.getElementsByClassName("mute_message")[0].style.display = "inline-block"; event.target.getElementsByClassName("im-mess--mute")[0].style.visibility = "visible";
}); });
actionsArea.parentElement.addEventListener("mouseleave", function (event) { actionsArea.parentElement.addEventListener("mouseleave", function (event) {
event.target.getElementsByClassName("mute_message")[0].style.display = "none"; event.target.getElementsByClassName("im-mess--mute")[0].style.visibility = "hidden";
}); });
} }
/** /**
* *
* @return {function(...[]=)} * @this {HTMLElement}
*/ */
function setIdToHideHandle() { function setIdToHideHandle() {
return function (event) { const clickedId = this.id.substring(4);
const clickedId = event.target.id.substr(4); // get id of sender from element id let clickedName = this.parentElement.parentElement.parentElement.parentElement;
let clickedName = event.target.parentElement.parentElement.parentElement.parentElement; clickedName = clickedName.children[0].children[0].children[0].innerText;
clickedName = clickedName.children[0].children[0].children[0].innerText;
chrome.storage.sync.get('idsToHide', function(data) { chrome.storage.sync.get('idsToHide', function(data) {
let idsToHide = data.idsToHide || []; let idsToHide = data.idsToHide || [];
if (idsToHide.filter(user => user.id == clickedId).length === 0) { if (idsToHide.filter(user => user.id == clickedId).length === 0) {
idsToHide.push({ idsToHide.push({
id: clickedId, id: clickedId,
name: clickedName name: clickedName
});
chrome.storage.sync.set({idsToHide: idsToHide}, function () {
chrome.storage.sync.get('isExtensionOn', function(data) {
if (data.isExtensionOn) {
hideExistingMessages();
}
}); });
chrome.storage.sync.set({idsToHide: idsToHide}, function () { });
chrome.storage.sync.get('isExtensionOn', function(data) { }
if (data.isExtensionOn) { });
hideExistingMessages();
}
});
});
}
});
}
} }
export function hideExistingMessages() { export function hideExistingMessages() {
@@ -107,11 +109,11 @@ function addControlButton(message) {
// Check if message is not an outgoing one // Check if message is not an outgoing one
if (!message.classList.contains('im-mess_out')) { if (!message.classList.contains('im-mess_out')) {
const actionsArea = message.getElementsByClassName("im-mess--actions")[0]; const actionsArea = message.getElementsByClassName("im-mess--actions")[0];
if (actionsArea && actionsArea.lastChild.className !== "mute_message") { if (actionsArea && actionsArea.lastChild.className !== "im-mess--mute") {
const senderId = message.parentElement.parentElement.parentElement["dataset"].peer; const senderId = message.parentElement.parentElement.parentElement["dataset"].peer;
const muteBtn = addMuteButton(actionsArea, senderId); const muteBtn = addMuteButton(actionsArea, senderId);
addActionAreaEvents(actionsArea); addActionAreaEvents(actionsArea);
muteBtn.addEventListener("click", setIdToHideHandle()); muteBtn.addEventListener("click", setIdToHideHandle);
return true; return true;
} else { } else {
return false; return false;
@@ -132,4 +134,4 @@ export function tryToInitControls() {
} }
} }
return status; return status;
} }

View File

@@ -10,19 +10,24 @@
} }
/* Show the tooltip text when you mouse over the tooltip container */ /* Show the tooltip text when you mouse over the tooltip container */
.mute_message:hover .mute_tooltip { .im-mess--mute:hover .mute_tooltip {
display: block !important; display: block !important;
opacity: 1; opacity: 1;
} }
.mute_message { .im-mess--mute {
position: relative; position: relative;
display: inline-block; display: inline-flex;
vertical-align: top; align-items: center;
padding-top: 2px; justify-content: center;
width: 24px; width: 24px;
height: 24px; height: 24px;
background-size: 11px !important; opacity: .5;
color: var(--vkui--color_icon_secondary);
}
.im-mess--mute:hover {
opacity: 1;
} }
.im-mess--actions { .im-mess--actions {

9
src/dom/mute.svg Normal file
View File

@@ -0,0 +1,9 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="16"
height="16"
fill="currentColor"
viewBox="2 1 13 13"
>
<path d="M4.69 5.5 11 11.8v1.7c0 .3-.23.47-.49.5l-3.63-3.5H4a1 1 0 0 1-1-1v-3a1 1 0 0 1 1-1h.69Zm.77-2.85 2.2 2.19L10.5 2.5c.27.02.49.2.49.48v5.2l2.6 2.6a.75.75 0 0 1-1.06 1.06L4.4 3.71a.75.75 0 0 1 1.06-1.06Z"></path>
</svg>

After

Width:  |  Height:  |  Size: 348 B

View File

@@ -7,7 +7,6 @@
<div class="header"> <div class="header">
<h3 align="center">VK Mute</h3> <h3 align="center">VK Mute</h3>
</div> </div>
<!--<button id="disableButton">Toggle</button>-->
<div style="text-align: center;"> <div style="text-align: center;">
<label class="switch"> <label class="switch">
<input type="checkbox" id="disableCheckbox"> <input type="checkbox" id="disableCheckbox">

View File

@@ -1,9 +1,9 @@
import './popup.css' import './popup.css'
//let disableButton = document.getElementById('disableButton'); //let disableButton = document.getElementById('disableButton');
let disableCheckbox = document.getElementById('disableCheckbox'); const disableCheckbox = document.getElementById('disableCheckbox');
let idsToHideElements = document.getElementsByClassName('idToHide'); const idsToHideElements = document.getElementsByClassName('idToHide');
let idList = document.getElementById("id_list"); const idList = document.getElementById("id_list");
let isExtensionOn; let isExtensionOn;
let idsToHide = []; let idsToHide = [];
@@ -51,4 +51,4 @@ disableCheckbox.addEventListener('change', (event) => {
chrome.storage.sync.set({isExtensionOn}, function() { chrome.storage.sync.set({isExtensionOn}, function() {
console.log('isExtensionOn: '+isExtensionOn); console.log('isExtensionOn: '+isExtensionOn);
}); });
}); });

View File

@@ -43,5 +43,4 @@ export class UrlController {
clearInterval(this.interval) clearInterval(this.interval)
this.interval = null this.interval = null
} }
}
}

View File

@@ -1,3 +1,3 @@
export function getChatBody() { export function getChatBody() {
return document.getElementsByClassName("_im_peer_history im-page-chat-contain")[0]; return document.getElementsByClassName("_im_peer_history im-page-chat-contain")[0];
} }

View File

@@ -6,7 +6,6 @@ module.exports = {
devtool: "inline-source-map", devtool: "inline-source-map",
entry: { entry: {
dom: './src/dom/main.js', dom: './src/dom/main.js',
background: './src/background/background.js',
popup: './src/popup/popup.js' popup: './src/popup/popup.js'
}, },
output: { output: {
@@ -28,18 +27,23 @@ module.exports = {
{ {
test: /\.css$/i, test: /\.css$/i,
use: ['style-loader', 'css-loader'], use: ['style-loader', 'css-loader'],
} },
{
test: /\.svg$/i,
use: 'raw-loader',
},
] ]
}, },
plugins: [new HtmlWebpackPlugin({ plugins: [
template: "./src/popup/popup.html", new HtmlWebpackPlugin({
filename: "popup.html", template: "./src/popup/popup.html",
chunks: ['popup'] filename: "popup.html",
}), chunks: ['popup']
new HtmlWebpackPlugin({ }),
template: "./src/donate.html", new HtmlWebpackPlugin({
filename: "donate.html", template: "./src/donate.html",
chunks: ['donate'] filename: "donate.html",
})] chunks: ['donate']
})
]
} }