Skip to content

Commit 5873528

Browse files
whizzzkidSgtPookiBigLeplidel
committed
feat(MV3)!: MV3 Implementation Collector Branch (#1182)
BREAKING CHANGE: Implements the new MV3 standard for browser extensions. * feat(mv3): Manifest V3 Migration Checklist (#1170) * feat(mv3): :sparkles: MV3 Manifest Migration * fix(mv3): :wastebasket: No longer needed * fix(mv3): :wrench: Corresponding MV3 Changes * feat(mv3): :package: Adding deps * feat(telemetry): Refactor Metrics Tracking from background service_worker (#1172) * feat(telemetry): :recycle: Init Telemetry away from background service_worker. * feat(telemetry): :recycle: Track metrics from page context instead of service_worker context * feat(mv3): :adhesive_bandage: Patch @protobufjs/inquire to not have eval * fix(mv3): :alien: Fixing contextMenus API changes (#1177) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): webpack configs (#1178) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): :wrench: Fixing webpack config * fix(mv3): :adhesive_bandage: Patching debug package and making background sw work. * feat(mv3): ✨ XHR to Fetch Migration (#1179) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): :wrench: Fixing webpack config * fix(mv3): :adhesive_bandage: Patching debug package and making background sw work. * feat(mv3): :sparkles: XMLHttpRequest => fetch * fix(mv3): :construction: Related changes to ipfs-path * fix(mv3): :construction: Other Related changes * fix(mv3): :construction: Changes to companion * fix(mv3): :white_check_mark: Fixing tests to account for async code. * Fix(mv3): Popup Was Broken (#1180) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): :wrench: Fixing webpack config * fix(mv3): :adhesive_bandage: Patching debug package and making background sw work. * feat(mv3): :sparkles: XMLHttpRequest => fetch * fix(mv3): :construction: Related changes to ipfs-path * fix(mv3): :construction: Other Related changes * fix(mv3): :construction: Changes to companion * fix(mv3): :white_check_mark: Fixing tests to account for async code. * feat(mv3): :recycle: Implementing a non-windowed companion instance * fix(mv3): :wastebasket: Removing calls to background page. * fix: :wastebasket: Unneeded debug statement * fix(mv3): :passport_control: Limiting permissions to chrome-extension * Update add-on/src/lib/ipfs-companion.js Co-authored-by: Russell Dempsey <[email protected]> --------- Co-authored-by: Russell Dempsey <[email protected]> * fix(mv3): CI Builds 🏗️ (#1183) * fix(mv3): :adhesive_bandage: package.json * fix(mv3): :rotating_light: Fix Lint * fix(mv3): :green_heart: Manifest version * feat: :adhesive_bandage: temporary building from rc-branch * feat(mv3): blocking by observing (#1181) * feat(mv3): :sparkles: MV3 Manifest Migration * fix(mv3): :wastebasket: No longer needed * fix(mv3): :wrench: Corresponding MV3 Changes * feat(mv3): :package: Adding deps * feat(telemetry): Refactor Metrics Tracking from background service_worker (#1172) * feat(telemetry): :recycle: Init Telemetry away from background service_worker. * feat(telemetry): :recycle: Track metrics from page context instead of service_worker context * feat(mv3): :adhesive_bandage: Patch @protobufjs/inquire to not have eval * fix(mv3): :alien: Fixing contextMenus API changes (#1177) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): webpack configs (#1178) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): :wrench: Fixing webpack config * fix(mv3): :adhesive_bandage: Patching debug package and making background sw work. * feat(mv3): ✨ XHR to Fetch Migration (#1179) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): :wrench: Fixing webpack config * fix(mv3): :adhesive_bandage: Patching debug package and making background sw work. * feat(mv3): :sparkles: XMLHttpRequest => fetch * fix(mv3): :construction: Related changes to ipfs-path * fix(mv3): :construction: Other Related changes * fix(mv3): :construction: Changes to companion * fix(mv3): :white_check_mark: Fixing tests to account for async code. * Fix(mv3): Popup Was Broken (#1180) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): :wrench: Fixing webpack config * fix(mv3): :adhesive_bandage: Patching debug package and making background sw work. * feat(mv3): :sparkles: XMLHttpRequest => fetch * fix(mv3): :construction: Related changes to ipfs-path * fix(mv3): :construction: Other Related changes * fix(mv3): :construction: Changes to companion * fix(mv3): :white_check_mark: Fixing tests to account for async code. * feat(mv3): :recycle: Implementing a non-windowed companion instance * fix(mv3): :wastebasket: Removing calls to background page. * fix: :wastebasket: Unneeded debug statement * fix(mv3): :passport_control: Limiting permissions to chrome-extension * Update add-on/src/lib/ipfs-companion.js Co-authored-by: Russell Dempsey <[email protected]> * fix(types): :label: Refactoring existing type declaration * fix(types): :label: Moving to new types path * feat(types): :sparkles: Adding typescript support for transpilation * feat(mv3): :sparkles: Adding blocking request tester * fix(mv3): :adhesive_bandage: package.json * fix(mv3): :rotating_light: Fix Lint * fix: :rotating_light: fix lint * fix(mv3): :adhesive_bandage: temp fix to build background context * fix(mv3): :necktie: Detection Logic for MV3 world. * feat(mv3): :sparkles: Dynamic RegexSubstitution * fix(types): :arrow_up: Adding .mocharc.json to fix mocha for TS. * fix: :rotating_light: Lint Fix * fix(mv3): :recycle: refactor background.service_worker * feat(mv3): :sparkles: Passing state to BlockOrObserve * fix(recovery): :bug: conditional for recovery * fix: :wastebasket: unneeded @ts-ignore * fix: :bulb: Adding comments * fix: fixing string method. * fix: removing extra space. * fix: removing @ts-nocheck --------- Co-authored-by: Russell Dempsey <[email protected]> * feat(mv3): adding dynamicNetRequest rule reconciliation logic + Firefox Builds (#1186) * feat(mv3): :sparkles: MV3 Manifest Migration * fix(mv3): :wastebasket: No longer needed * fix(mv3): :wrench: Corresponding MV3 Changes * feat(mv3): :package: Adding deps * feat(telemetry): Refactor Metrics Tracking from background service_worker (#1172) * feat(telemetry): :recycle: Init Telemetry away from background service_worker. * feat(telemetry): :recycle: Track metrics from page context instead of service_worker context * feat(mv3): :adhesive_bandage: Patch @protobufjs/inquire to not have eval * fix(mv3): :alien: Fixing contextMenus API changes (#1177) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): webpack configs (#1178) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): :wrench: Fixing webpack config * fix(mv3): :adhesive_bandage: Patching debug package and making background sw work. * feat(mv3): ✨ XHR to Fetch Migration (#1179) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): :wrench: Fixing webpack config * fix(mv3): :adhesive_bandage: Patching debug package and making background sw work. * feat(mv3): :sparkles: XMLHttpRequest => fetch * fix(mv3): :construction: Related changes to ipfs-path * fix(mv3): :construction: Other Related changes * fix(mv3): :construction: Changes to companion * fix(mv3): :white_check_mark: Fixing tests to account for async code. * Fix(mv3): Popup Was Broken (#1180) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): :wrench: Fixing webpack config * fix(mv3): :adhesive_bandage: Patching debug package and making background sw work. * feat(mv3): :sparkles: XMLHttpRequest => fetch * fix(mv3): :construction: Related changes to ipfs-path * fix(mv3): :construction: Other Related changes * fix(mv3): :construction: Changes to companion * fix(mv3): :white_check_mark: Fixing tests to account for async code. * feat(mv3): :recycle: Implementing a non-windowed companion instance * fix(mv3): :wastebasket: Removing calls to background page. * fix: :wastebasket: Unneeded debug statement * fix(mv3): :passport_control: Limiting permissions to chrome-extension * Update add-on/src/lib/ipfs-companion.js Co-authored-by: Russell Dempsey <[email protected]> * fix(types): :label: Refactoring existing type declaration * fix(types): :label: Moving to new types path * feat(types): :sparkles: Adding typescript support for transpilation * feat(mv3): :sparkles: Adding blocking request tester * fix(mv3): :adhesive_bandage: package.json * fix(mv3): :rotating_light: Fix Lint * fix: :rotating_light: fix lint * fix(mv3): :adhesive_bandage: temp fix to build background context * fix(mv3): :necktie: Detection Logic for MV3 world. * feat(mv3): :sparkles: Dynamic RegexSubstitution * fix(types): :arrow_up: Adding .mocharc.json to fix mocha for TS. * fix: :rotating_light: Lint Fix * fix(mv3): :recycle: refactor background.service_worker * feat(mv3): :sparkles: Passing state to BlockOrObserve * fix(recovery): :bug: conditional for recovery * fix: :wastebasket: unneeded @ts-ignore * fix: :bulb: Adding comments * fix: fixing string method. * fix: removing extra space. * fix: removing @ts-nocheck * no longer needed * fix(mv3): :recycle: Refactor * feat(mv3): :sparkles: Adding rule-recon logic * saving state * fix(mv3): :wrench: Manifest * fix(mv3): :wrench: Fixing firefox webpack config * fix(mv3): :adhesive_bandage: Patching debug to use in memory store instead of browser.storage.local * fix: :rotating_light: fixing lint and moving from record type to map type. * fix: :memo: Adding docstrings. * fix(mv3): :poop: web-ext making things harder than it needs to be. * fix(mv3): :rewind: no more debug patching * fix(mv3): :poop: improved recon logic * fix: :memo: adding comments regarding debug. * fix: :rotating_light: Fix lint * fix(mv3): :passport_control: manifest perms * fix: :wastebasket: unnecessary blank line * feat(mv3): :test_tube: Adding initial tests * feat(mv3): :clown_face: Adding Mock DeclarativeNetRequest Implementation * nits * fix: adding more test examples * fix: self-documenting code. * fix: unneeded comment * Update test/functional/lib/redirect-handler/blockOrObserve.test.ts --------- Co-authored-by: Russell Dempsey <[email protected]> * Chore(mv3-release): Publishing RC releases (#1192) * feat(mv3): :sparkles: MV3 Manifest Migration * fix(mv3): :wastebasket: No longer needed * fix(mv3): :wrench: Corresponding MV3 Changes * feat(mv3): :package: Adding deps * feat(telemetry): Refactor Metrics Tracking from background service_worker (#1172) * feat(telemetry): :recycle: Init Telemetry away from background service_worker. * feat(telemetry): :recycle: Track metrics from page context instead of service_worker context * feat(mv3): :adhesive_bandage: Patch @protobufjs/inquire to not have eval * fix(mv3): :alien: Fixing contextMenus API changes (#1177) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): webpack configs (#1178) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): :wrench: Fixing webpack config * fix(mv3): :adhesive_bandage: Patching debug package and making background sw work. * feat(mv3): ✨ XHR to Fetch Migration (#1179) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): :wrench: Fixing webpack config * fix(mv3): :adhesive_bandage: Patching debug package and making background sw work. * feat(mv3): :sparkles: XMLHttpRequest => fetch * fix(mv3): :construction: Related changes to ipfs-path * fix(mv3): :construction: Other Related changes * fix(mv3): :construction: Changes to companion * fix(mv3): :white_check_mark: Fixing tests to account for async code. * Fix(mv3): Popup Was Broken (#1180) * fix(mv3): :alien: Fixing contextMenus API changes * fix(mv3): :adhesive_bandage: Fixing the browser.action api * fix(mv3): :wrench: Fixing webpack config * fix(mv3): :adhesive_bandage: Patching debug package and making background sw work. * feat(mv3): :sparkles: XMLHttpRequest => fetch * fix(mv3): :construction: Related changes to ipfs-path * fix(mv3): :construction: Other Related changes * fix(mv3): :construction: Changes to companion * fix(mv3): :white_check_mark: Fixing tests to account for async code. * feat(mv3): :recycle: Implementing a non-windowed companion instance * fix(mv3): :wastebasket: Removing calls to background page. * fix: :wastebasket: Unneeded debug statement * fix(mv3): :passport_control: Limiting permissions to chrome-extension * Update add-on/src/lib/ipfs-companion.js Co-authored-by: Russell Dempsey <[email protected]> * fix(types): :label: Refactoring existing type declaration * fix(types): :label: Moving to new types path * feat(types): :sparkles: Adding typescript support for transpilation * feat(mv3): :sparkles: Adding blocking request tester * fix(mv3): :adhesive_bandage: package.json * fix(mv3): :rotating_light: Fix Lint * fix: :rotating_light: fix lint * fix(mv3): :adhesive_bandage: temp fix to build background context * fix(mv3): :necktie: Detection Logic for MV3 world. * feat(mv3): :sparkles: Dynamic RegexSubstitution * fix(types): :arrow_up: Adding .mocharc.json to fix mocha for TS. * fix: :rotating_light: Lint Fix * fix(mv3): :recycle: refactor background.service_worker * feat(mv3): :sparkles: Passing state to BlockOrObserve * fix(recovery): :bug: conditional for recovery * fix: :wastebasket: unneeded @ts-ignore * fix: :bulb: Adding comments * fix: fixing string method. * fix: removing extra space. * fix: removing @ts-nocheck * no longer needed * fix(mv3): :recycle: Refactor * feat(mv3): :sparkles: Adding rule-recon logic * saving state * fix(mv3): :wrench: Manifest * fix(mv3): :wrench: Fixing firefox webpack config * fix(mv3): :adhesive_bandage: Patching debug to use in memory store instead of browser.storage.local * fix: :rotating_light: fixing lint and moving from record type to map type. * fix: :memo: Adding docstrings. * fix(mv3): :poop: web-ext making things harder than it needs to be. * fix(mv3): :rewind: no more debug patching * fix(mv3): :poop: improved recon logic * fix: :memo: adding comments regarding debug. * fix: :rotating_light: Fix lint * fix(mv3): :passport_control: manifest perms * fix: :wastebasket: unnecessary blank line * feat(mv3): :test_tube: Adding initial tests * feat(mv3): :clown_face: Adding Mock DeclarativeNetRequest Implementation * nits * fix: adding more test examples * fix: self-documenting code. * fix: unneeded comment * Creating RC Releases --------- Co-authored-by: Russell Dempsey <[email protected]> * fix(mv3): ref_name (#1193) * Fix/mv3 release (#1194) * fix(mv3): ref_name * fix: this is hard to test * Fixing beta builds * fix(mv3): :bug: Bad Regex for DNS links (#1198) * fix(mv3): :bug: Fixing copy functionality for MV3 (#1197) * fix(mv3): :bug: Fixing copy functionality for MV3 * fix: * Update add-on/src/lib/copier.js * feat(mv3): Handle State Changes (#1200) * fix(mv3): Add support for global toggle on/off * feat(mv3): Handle State Changes * fix(mv3): :recycle: Refactoring code to only message self in observation mode. * Fix/1202 first page is missing content (#1208) * fix: :arrow_up: package-lock * feat(mv3): :recycle: Reload tabs with request url. * fix(mv3): 👔 Adding better regex replace to remove infinite redirects. (#1210) * fix(mv3): :necktie: Adding better regex replace to remove infinite redirects. * fix(mv3): :test_tube: Adding more tests to account for local redirects * fix: :rotating_light: Linter * feat(mv3): :clown_face: DeclarativeNetRequestMock (#1211) * fix(mv3): :necktie: Adding better regex replace to remove infinite redirects. * fix(mv3): :test_tube: Adding more tests to account for local redirects * feat(mv3): :clown_face: DeclarativeNetRequestMock * fix: :rotating_light: Linter * feat(mv3): Adding ContextMenus MV3 Style (#1213) * feat(mv3): :sparkles: ContextMenus MV3 Style * feat(mv3): :test_tube: Adding tests * fix: test case * fix (quick-import): Duplicate behaviour in MV3 (#1215) * feat(mv3): :sparkles: ContextMenus MV3 Style * feat(mv3): :test_tube: Adding tests * fix: test case * fix(mv3): :bug: Quick Import * fix(mv3): :wastebasket: Removing Unnecessary Listener (#1219) * fix: Automatic Mode Description (#1224) * fix: :adhesive_bandage: Adding Automatic Mode Description * Update add-on/_locales/en/messages.json Co-authored-by: Steve Loeppky <[email protected]> * Update add-on/_locales/en/messages.json Co-authored-by: Steve Loeppky <[email protected]> --------- Co-authored-by: Steve Loeppky <[email protected]> * fix: 🗑️ Remove Embedded Node Type (#1225) * fix: :wastebasket: no longer needed Signed-off-by: Nishant Arora <[email protected]> * fix: :wastebasket: unneeded messages Signed-off-by: Nishant Arora <[email protected]> * fix: :wastebasket: Removing unneeded test Signed-off-by: Nishant Arora <[email protected]> * fix: :necktie: Update logic or add todos to fix this later. Signed-off-by: Nishant Arora <[email protected]> * fix: :wastebasket: remove logos Signed-off-by: Nishant Arora <[email protected]> * fix: lint warning Signed-off-by: Nishant Arora <[email protected]> * fix: :alien: no idea why this is a problem now. Signed-off-by: Nishant Arora <[email protected]> * fix: :wastebasket: irrelevant Signed-off-by: Nishant Arora <[email protected]> * fix: quick-import Signed-off-by: Nishant Arora <[email protected]> * fix: Fixing quick-import Signed-off-by: Nishant Arora <[email protected]> * fix: Fixing Tools Signed-off-by: Nishant Arora <[email protected]> * fix: fixing gateway-form Signed-off-by: Nishant Arora <[email protected]> * fix: content-action Signed-off-by: Nishant Arora <[email protected]> * fix: store Signed-off-by: Nishant Arora <[email protected]> * fix: Fixing state Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> * Fix(docs): ✏️ Adding/Updating docs (#1230) * fix(docs): :pencil2: Api -> kubo rpc api Signed-off-by: Nishant Arora <[email protected]> * fix(docs): :pencil2: reword Signed-off-by: Nishant Arora <[email protected]> * fix(docs): :heavy_plus_sign: Adding MV3 Migration Docs and Assets. Signed-off-by: Nishant Arora <[email protected]> * Update docs/MV3.md Co-authored-by: Russell Dempsey <[email protected]> * Update docs/MV3.md Co-authored-by: Russell Dempsey <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> Co-authored-by: Russell Dempsey <[email protected]> * feat(metrics): ✨ Adding patched analytics. (#1232) * feat(mv3): :sparkles: Patching countly-sdk-web Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): :sparkles: Implementing Custom Async Store. Signed-off-by: Nishant Arora <[email protected]> * chore(mv3): :adhesive_bandage: Hooking everything up together. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): Countly Patching + [email protected] Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :adhesive_bandage: Patching the Patch Signed-off-by: Nishant Arora <[email protected]> * fix: tests Signed-off-by: Nishant Arora <[email protected]> * fix: lint Signed-off-by: Nishant Arora <[email protected]> * fix: :adhesive_bandage: Patching error messages Signed-off-by: Nishant Arora <[email protected]> * fix(patch): countly-web-sdk * fix(patch): :pin: Pinning countly-web-sdk to 23.2.2 --------- Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :art: Replacing Static Images with Mermaid Diagrams (#1233) * fic(mv3): :art: Replacing Static Images with Mermaid Diagrams * fix(mv3): :pencil2: Improving Grammar Signed-off-by: Nishant Arora <[email protected]> * Adding Colors Co-authored-by: Russell Dempsey <[email protected]> * Update docs/MV3.md --------- Signed-off-by: Nishant Arora <[email protected]> Co-authored-by: Russell Dempsey <[email protected]> * feat(mv3): Faster Redirects During The First Page Load in main_frame (#1239) * feat(mv3): :zap: Faster redirects for the first time. Signed-off-by: Nishant Arora <[email protected]> * fix: removing only from the tests Signed-off-by: Nishant Arora <[email protected]> * test(mv3): Adding removing rule example. Signed-off-by: Nishant Arora <[email protected]> * test(mv3): :test_tube: Added test regarding removal of rules Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> * fix(telemetry): Reverting to old state of things (#1242) * fix(mv3): Reverting Telemetry Changes To Use PatchedCountlySDK Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): metrics build Signed-off-by: Nishant Arora <[email protected]> * fix: more reverts + fixing patch Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :adhesive_bandage: Patching the Patch Signed-off-by: Nishant Arora <[email protected]> * fix(countly): :adhesive_bandage: don't look for debug, just log it. Signed-off-by: Nishant Arora <[email protected]> * fix(countly): removing session start/end. Signed-off-by: Nishant Arora <[email protected]> * fix: unused var Signed-off-by: Nishant Arora <[email protected]> * fix(countly): patch * revert * fix(countly): repatch, old one seems to be failing. * fix(countly): bad patch * revert * retrying patch * fix: patch files should not be cached. Signed-off-by: Nishant Arora <[email protected]> * fix: fixing cache keys Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): ✨ Introduces Redirect Rule Management (#1240) * feat: exporting rules ending regex Signed-off-by: Nishant Arora <[email protected]> * feat: :sparkles: Adding Rule Management UI Signed-off-by: Nishant Arora <[email protected]> * feat: :sparkles: hooking up with background worker. Signed-off-by: Nishant Arora <[email protected]> * fix: lint Signed-off-by: Nishant Arora <[email protected]> * fix: :art: button styling Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :lipstick: Making UI a bit better Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): Tracking URL resolved/observed count. (#1245) * fix(mv3): Reverting Telemetry Changes To Use PatchedCountlySDK Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): metrics build Signed-off-by: Nishant Arora <[email protected]> * fix: more reverts + fixing patch Signed-off-by: Nishant Arora <[email protected]> * feat: adding request view. Signed-off-by: Nishant Arora <[email protected]> * Reverting to mainline rc patch * Reverting to mainline rc add-on/src/lib/ipfs-companion.js * feat(telemetry): Signed-off-by: Nishant Arora <[email protected]> * feat(telemetry): Implementing RequestTracker Event Handler Signed-off-by: Nishant Arora <[email protected]> * feat(telemetry): hooking up events. Signed-off-by: Nishant Arora <[email protected]> * fix(types): annotations * fix(telemetry): :wastebasket: returning to previous state Signed-off-by: Nishant Arora <[email protected]> * fix(telemetry): :recycle: Refactor Request Tracker Signed-off-by: Nishant Arora <[email protected]> * fix(telemetry): hooking up requests Signed-off-by: Nishant Arora <[email protected]> * fix(telemetry): better types Signed-off-by: Nishant Arora <[email protected]> * fix(countly): :wastebasket: more stuff goes, because test need to pass. Signed-off-by: Nishant Arora <[email protected]> * fix(lint): fixed * feat(test): test tracker. * fix: remove only Signed-off-by: Nishant Arora <[email protected]> * fix: :lipstick: line break Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): Ask for Host Permissions if not exist. (#1250) * feat(mv3): :sparkles: Requesting Host Permissions Explicitly Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): :bug: Adding perms step on installed. Signed-off-by: Nishant Arora <[email protected]> * fix: request-permission-view tracking Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): Making permissions agnostic to browser Signed-off-by: Nishant Arora <[email protected]> * docs: clarify why we need host permission making prompt less scary, shorter, and informative * Update add-on/src/lib/ipfs-request.js Co-authored-by: Marcin Rataj <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> Co-authored-by: Marcin Rataj <[email protected]> * feat(mv3): Redirection Tests (#1236) * feat(mv3): :sparkles: Patching countly-sdk-web Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): :sparkles: Implementing Custom Async Store. Signed-off-by: Nishant Arora <[email protected]> * chore(mv3): :adhesive_bandage: Hooking everything up together. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): Countly Patching + [email protected] Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :adhesive_bandage: Patching the Patch Signed-off-by: Nishant Arora <[email protected]> * fix: tests Signed-off-by: Nishant Arora <[email protected]> * fix: lint Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :recycle: Refactoring `supportsBlock` Checks. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): Regex Bug Signed-off-by: Nishant Arora <[email protected]> * feat: Migrating blocking redirection test to observing redirection test Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :wrench: Fixing the mocha-setup. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :recycle: Moving Setup Files. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): gateway-redirect tests now fixed. Signed-off-by: Nishant Arora <[email protected]> * fix: :adhesive_bandage: Patching error messages Signed-off-by: Nishant Arora <[email protected]> * fix(patch): countly-web-sdk * fix(patch): :pin: Pinning countly-web-sdk to 23.2.2 * fix(mv3): :lipstick: Fixing Lint Signed-off-by: Nishant Arora <[email protected]> * feat: protocol-handler-redirection-tests Signed-off-by: Nishant Arora <[email protected]> * feat: more tests fixed Signed-off-by: Nishant Arora <[email protected]> * fix: More tests Signed-off-by: Nishant Arora <[email protected]> * fix: lint fix Signed-off-by: Nishant Arora <[email protected]> * test: merge mocha-setup files (#1246) * test: merge mocha-setup files * test(helper): add mv3-test-enabled helper * test(setup): remove duplicate setup for mv3/mv2 * test(mv3): merge mv3 tests into mv2 test files (#1247) * test(mv3): merge mv3 tests into mv2 test files * chore(lint): fix lint failures * test(supportsBlock): cleanup test * test: migrating some tests * test(redirect): mv3 tests use same code as mv2 * test(redirect): mv3 test cleanup * test(protohandler): mv3 tests use same code as mv2 * test(helper): make isMv3 flag a boolean * test: fix after merge * test: fix after merge * fix: typerrors for localstorage Signed-off-by: Nishant Arora <[email protected]> * fix: Updating test:functional_MV3 command. Signed-off-by: Nishant Arora <[email protected]> * fix: setup Signed-off-by: Nishant Arora <[email protected]> * fix(test): Fixing tests Signed-off-by: Nishant Arora <[email protected]> * fix(lint): Becuase Ofcourse * feat(test): scaffolding mv3 + mv2 calls in a single check. Signed-off-by: Nishant Arora <[email protected]> * feat(test): unskipping and upgrading dnslink tests to mv3 Signed-off-by: Nishant Arora <[email protected]> * feat(test): Upgrading workaround tests to MV3 Signed-off-by: Nishant Arora <[email protected]> * fix(test): removing all skips with better checks. Signed-off-by: Nishant Arora <[email protected]> * fix(test): :recycle: Refactoring tests and removing redundant calls. Signed-off-by: Nishant Arora <[email protected]> * fix(test): More Dryer Signed-off-by: Nishant Arora <[email protected]> * fix(test): one more Signed-off-by: Nishant Arora <[email protected]> * fix(test): :pencil2: Renaming isMv3TestingEnabled -> isManifestV3 Signed-off-by: Nishant Arora <[email protected]> * fix(test): refactor expectNoRedirect Signed-off-by: Nishant Arora <[email protected]> * fix(test): :recycle: Refactoring more. Signed-off-by: Nishant Arora <[email protected]> * fix: replacing checks to undefined Signed-off-by: Nishant Arora <[email protected]> * fix: renaming expectNoRedirect -> ensureNoRedirect Signed-off-by: Nishant Arora <[email protected]> * fix(test): Adding missing JSDoc Signed-off-by: Nishant Arora <[email protected]> * fix(test): :shrug: how did this get removed. Signed-off-by: Nishant Arora <[email protected]> * fix(test): :wastebasket: removed. Signed-off-by: Nishant Arora <[email protected]> * fix(test): Suggestion * fix(test): :adhesive_bandage: Bad Merge Signed-off-by: Nishant Arora <[email protected]> * fix(test): sequential expectNoRedirect * Update add-on/src/lib/redirect-handler/blockOrObserve.ts Co-authored-by: Marcin Rataj <[email protected]> * fix(rules): Better Redirect Rules (#1256) * fix(mv3): :wrench: Modifying the default local redirect behaviour. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :wrench: Modifying the default local redirect behaviour. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :bug: Making rules less greedy Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :sparkles: Dynamic Rules for subdomain gateways. Signed-off-by: Nishant Arora <[email protected]> * fix(types): Adding ambient types for is-ipfs. Signed-off-by: Nishant Arora <[email protected]> * fix(test): Signed-off-by: Nishant Arora <[email protected]> * fix(test): helper Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): less greedy rules Signed-off-by: Nishant Arora <[email protected]> * feat: Adding simpler regex for redirects from similar namespaces. Signed-off-by: Nishant Arora <[email protected]> * fix(lint): :rotating_light: Warnings Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): Better Default Rules (#1260) * refactor(mv3): blockOrRequest code Signed-off-by: Nishant Arora <[email protected]> * refactor(mv3): Port Logic for Default Rules is more robust. Signed-off-by: Nishant Arora <[email protected]> * feat(test): Adding tests for default rule logic. Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> * Update add-on/src/lib/redirect-handler/blockOrObserve.ts * fix(docs): :pencil2: Adding comments Signed-off-by: Nishant Arora <[email protected]> * refactor(regexfilters): Better Structure and Readability (#1261) * refactor(regexFilters): :sparkles: Adding a base class for regexFilters. Signed-off-by: Nishant Arora <[email protected]> * refactor(regexFilters): :recycle: Moving subdomain filter to a subclass Signed-off-by: Nishant Arora <[email protected]> * refactor(regexFilters): :recycle: Moving namespace filter to a subclass Signed-off-by: Nishant Arora <[email protected]> * refactor(regexFilters): :recycle: Moving common filter to a subclass Signed-off-by: Nishant Arora <[email protected]> * feat(regexFilters): :sparkles: Hooking Up All together Signed-off-by: Nishant Arora <[email protected]> * fix(lint): :pencil2: Lint Signed-off-by: Nishant Arora <[email protected]> * fix(regexFilters): :pencil2: Updating message. Signed-off-by: Nishant Arora <[email protected]> * fix(rename): :pencil2: CommonPatterRedirectRegexFilter -> CommonPatternRedirectRegexFilter Signed-off-by: Nishant Arora <[email protected]> * fix(regexFilters): :recycle: Refactor to remove call to super Signed-off-by: Nishant Arora <[email protected]> * fix: make _canHandle private Signed-off-by: Nishant Arora <[email protected]> * fix: :zap: Fix math.min on every loop. Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): no blanket redirect for subdomains without namespaces. Signed-off-by: Nishant Arora <[email protected]> * fix(lint): unused import Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> Co-authored-by: Russell Dempsey <[email protected]> Co-authored-by: Marcin Rataj <[email protected]> * fix(recovery): Recovery Rules should reset (#1266) * feat(mv3): :sparkles: Patching countly-sdk-web Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): :sparkles: Implementing Custom Async Store. Signed-off-by: Nishant Arora <[email protected]> * chore(mv3): :adhesive_bandage: Hooking everything up together. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): Countly Patching + [email protected] Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :adhesive_bandage: Patching the Patch Signed-off-by: Nishant Arora <[email protected]> * fix: tests Signed-off-by: Nishant Arora <[email protected]> * fix: lint Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :recycle: Refactoring `supportsBlock` Checks. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): Regex Bug Signed-off-by: Nishant Arora <[email protected]> * feat: Migrating blocking redirection test to observing redirection test Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :wrench: Fixing the mocha-setup. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :recycle: Moving Setup Files. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): gateway-redirect tests now fixed. Signed-off-by: Nishant Arora <[email protected]> * fix: :adhesive_bandage: Patching error messages Signed-off-by: Nishant Arora <[email protected]> * fix(patch): countly-web-sdk * fix(patch): :pin: Pinning countly-web-sdk to 23.2.2 * fix(mv3): :lipstick: Fixing Lint Signed-off-by: Nishant Arora <[email protected]> * feat: protocol-handler-redirection-tests Signed-off-by: Nishant Arora <[email protected]> * feat: more tests fixed Signed-off-by: Nishant Arora <[email protected]> * fix: More tests Signed-off-by: Nishant Arora <[email protected]> * fix: lint fix Signed-off-by: Nishant Arora <[email protected]> * test: merge mocha-setup files (#1246) * test: merge mocha-setup files * test(helper): add mv3-test-enabled helper * test(setup): remove duplicate setup for mv3/mv2 * test(mv3): merge mv3 tests into mv2 test files (#1247) * test(mv3): merge mv3 tests into mv2 test files * chore(lint): fix lint failures * test(supportsBlock): cleanup test * test: migrating some tests * test(redirect): mv3 tests use same code as mv2 * test(redirect): mv3 test cleanup * test(protohandler): mv3 tests use same code as mv2 * test(helper): make isMv3 flag a boolean * test: fix after merge * test: fix after merge * fix: typerrors for localstorage Signed-off-by: Nishant Arora <[email protected]> * fix: Updating test:functional_MV3 command. Signed-off-by: Nishant Arora <[email protected]> * fix: setup Signed-off-by: Nishant Arora <[email protected]> * fix(test): Fixing tests Signed-off-by: Nishant Arora <[email protected]> * fix(lint): Becuase Ofcourse * feat(test): scaffolding mv3 + mv2 calls in a single check. Signed-off-by: Nishant Arora <[email protected]> * feat(test): unskipping and upgrading dnslink tests to mv3 Signed-off-by: Nishant Arora <[email protected]> * feat(test): Upgrading workaround tests to MV3 Signed-off-by: Nishant Arora <[email protected]> * fix(test): removing all skips with better checks. Signed-off-by: Nishant Arora <[email protected]> * fix(test): :recycle: Refactoring tests and removing redundant calls. Signed-off-by: Nishant Arora <[email protected]> * fix(test): More Dryer Signed-off-by: Nishant Arora <[email protected]> * fix(test): one more Signed-off-by: Nishant Arora <[email protected]> * fix(test): :pencil2: Renaming isMv3TestingEnabled -> isManifestV3 Signed-off-by: Nishant Arora <[email protected]> * fix(test): refactor expectNoRedirect Signed-off-by: Nishant Arora <[email protected]> * fix(test): :recycle: Refactoring more. Signed-off-by: Nishant Arora <[email protected]> * fix: replacing checks to undefined Signed-off-by: Nishant Arora <[email protected]> * fix: renaming expectNoRedirect -> ensureNoRedirect Signed-off-by: Nishant Arora <[email protected]> * fix(test): Adding missing JSDoc Signed-off-by: Nishant Arora <[email protected]> * fix(test): :shrug: how did this get removed. Signed-off-by: Nishant Arora <[email protected]> * fix(test): :wastebasket: removed. Signed-off-by: Nishant Arora <[email protected]> * fix(test): Suggestion * fix(test): :adhesive_bandage: Bad Merge Signed-off-by: Nishant Arora <[email protected]> * fix(test): sequential expectNoRedirect * Update add-on/src/lib/redirect-handler/blockOrObserve.ts Co-authored-by: Marcin Rataj <[email protected]> * fix(mv3): :wrench: Modifying the default local redirect behaviour. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :wrench: Modifying the default local redirect behaviour. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :bug: Making rules less greedy Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :sparkles: Dynamic Rules for subdomain gateways. Signed-off-by: Nishant Arora <[email protected]> * fix(types): Adding ambient types for is-ipfs. Signed-off-by: Nishant Arora <[email protected]> * fix(test): Signed-off-by: Nishant Arora <[email protected]> * fix(test): helper Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): less greedy rules Signed-off-by: Nishant Arora <[email protected]> * feat: Adding simpler regex for redirects from similar namespaces. Signed-off-by: Nishant Arora <[email protected]> * fix(lint): :rotating_light: Warnings Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): Better Default Rules (#1260) * refactor(mv3): blockOrRequest code Signed-off-by: Nishant Arora <[email protected]> * refactor(mv3): Port Logic for Default Rules is more robust. Signed-off-by: Nishant Arora <[email protected]> * feat(test): Adding tests for default rule logic. Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> * Update add-on/src/lib/redirect-handler/blockOrObserve.ts * fix(docs): :pencil2: Adding comments Signed-off-by: Nishant Arora <[email protected]> * refactor(regexFilters): :sparkles: Adding a base class for regexFilters. Signed-off-by: Nishant Arora <[email protected]> * refactor(regexFilters): :recycle: Moving subdomain filter to a subclass Signed-off-by: Nishant Arora <[email protected]> * refactor(regexFilters): :recycle: Moving namespace filter to a subclass Signed-off-by: Nishant Arora <[email protected]> * refactor(regexFilters): :recycle: Moving common filter to a subclass Signed-off-by: Nishant Arora <[email protected]> * feat(regexFilters): :sparkles: Hooking Up All together Signed-off-by: Nishant Arora <[email protected]> * fix(lint): :pencil2: Lint Signed-off-by: Nishant Arora <[email protected]> * fix(regexFilters): :pencil2: Updating message. Signed-off-by: Nishant Arora <[email protected]> * fix(rename): :pencil2: CommonPatterRedirectRegexFilter -> CommonPatternRedirectRegexFilter Signed-off-by: Nishant Arora <[email protected]> * fix(regexFilters): :recycle: Refactor to remove call to super Signed-off-by: Nishant Arora <[email protected]> * fix: make _canHandle private Signed-off-by: Nishant Arora <[email protected]> * fix: :zap: Fix math.min on every loop. Signed-off-by: Nishant Arora <[email protected]> * fix(recovery): reset rules Signed-off-by: Nishant Arora <[email protected]> * fix(recovery): :recycle: Refactor messaging logic Signed-off-by: Nishant Arora <[email protected]> * fix(recovery): :bug: Cleanup Logic Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :bug: fix toggle site integration. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :adhesive_bandage: Hard coding wait as the browser is not cooperative. Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> Co-authored-by: Russell Dempsey <[email protected]> Co-authored-by: Marcin Rataj <[email protected]> * fix(mv3): :bug: rules section visible. (#1271) Signed-off-by: Nishant Arora <[email protected]> * fix(brave): Fix Brave UX (#1270) * fix(options): fixing options menu Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): Adding brave specific redirects. Signed-off-by: Nishant Arora <[email protected]> * fix: lint Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> * feat(e2e): Request Handling Tests (#1272) * fix(test): :recycle: simplify scaffolding Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): :test_tube: Adding a final resolution check Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> * Update add-on/_locales/en/messages.json Co-authored-by: Marcin Rataj <[email protected]> * Update add-on/src/options/forms/api-form.js Co-authored-by: Marcin Rataj <[email protected]> * Update add-on/_locales/en/messages.json Co-authored-by: Marcin Rataj <[email protected]> * Update test/functional/lib/redirect-handler/blockOrObserve.test.ts Co-authored-by: Marcin Rataj <[email protected]> * Update README.md Co-authored-by: Marcin Rataj <[email protected]> * fix(test): Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :see_no_evil: Don't interrupt websockets and webtransports. Signed-off-by: Nishant Arora <[email protected]> * fix: :pencil2: Rename: ensureDeclrativeNetRequetRuleIsAdded -> ensureDeclarativeNetRequestRuleIsAdded Signed-off-by: Nishant Arora <[email protected]> * fix: :pencil2: Rename: ensureTabRedirected -> ensureTabUpdatedTo Signed-off-by: Nishant Arora <[email protected]> * fix(language): :pencil2: Rewrite Signed-off-by: Nishant Arora <[email protected]> * fix(test): :test_tube: Add a failing test. Signed-off-by: Nishant Arora <[email protected]> * Update add-on/_locales/en/messages.json Co-authored-by: Russell Dempsey <[email protected]> * Update ci/update-manifest.sh Co-authored-by: Russell Dempsey <[email protected]> * fix: :pencil2: Beta naming Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): FF Browser Action (#1275) Signed-off-by: Nishant Arora <[email protected]> * test(import): :test_tube: Backfill Tests (#1276) * test(import): :test_tube: Backfill Tests Signed-off-by: Nishant Arora <[email protected]> * Update test/functional/lib/ipfs-import.test.js Co-authored-by: Marcin Rataj <[email protected]> * Update test/functional/lib/ipfs-import.test.js Co-authored-by: Marcin Rataj <[email protected]> * test(import): :test_tube: Backfilling tests for copyImportResultsToFiles Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> Co-authored-by: Marcin Rataj <[email protected]> * feat(mv3): :heavy_plus_sign: Adding hash function to generate predict… (#1273) feat(mv3): :heavy_plus_sign: Adding hash function to generate predictable ids. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :wastebasket: Remove redundant lines. Signed-off-by: Nishant Arora <[email protected]> * fix(mv3): :recycle: opposite functionality `supportsBlock` -> `supportsDeclarativeNetRequest` Signed-off-by: Nishant Arora <[email protected]> * feat(mv3): :twisted_rightwards_arrows: Adding migrations for embedded to external. Signed-off-by: Nishant Arora <[email protected]> --------- Signed-off-by: Nishant Arora <[email protected]> Co-authored-by: Russell Dempsey <[email protected]> Co-authored-by: Steve Loeppky <[email protected]> Co-authored-by: Marcin Rataj <[email protected]>
1 parent 76a38f3 commit 5873528

File tree

110 files changed

+8698
-11693
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

110 files changed

+8698
-11693
lines changed

.github/workflows/ci.yml

+10-7
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ on:
99
pull_request:
1010
branches:
1111
- main
12+
- rc/3.0-mv3
1213

1314
env:
1415
XDG_CACHE_HOME: ${{ github.workspace }}/.cache
@@ -43,17 +44,17 @@ jobs:
4344
id: cache
4445
with:
4546
path: ${{ github.workspace }}/.cache
46-
key: ${{ runner.os }}-${{ hashFiles('package*json', 'package-lock.json', '*config.js') }}
47+
key: ${{ runner.os }}-${{ hashFiles('**/package*json', '**/package-lock.json', '**/*config.js', '**/*.patch') }}
4748
restore-keys: |
48-
${{ runner.os }}-${{ hashFiles('package*json', 'package-lock.json', '*config.js') }}
49+
${{ runner.os }}-${{ hashFiles('**/package*json', '**/package-lock.json', '**/*config.js', '**/*.patch') }}
4950
${{ runner.os }}-
5051
5152
- name: Restore node_modules
5253
id: yarn-cache
5354
uses: actions/[email protected]
5455
with:
5556
path: node_modules
56-
key: ${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}
57+
key: ${{ runner.os }}-${{ hashFiles('**/package*json', '**/package-lock.json', '**/*config.js', '**/*.patch') }}
5758

5859
- name: Install dependencies
5960
if: steps.yarn-cache.outputs.cache-hit != 'true'
@@ -106,7 +107,9 @@ jobs:
106107
release-assets:
107108
runs-on: ubuntu-latest
108109
needs: [test]
109-
if: contains(github.ref, 'refs/tags/') && (github.event_name == 'push' || github.event_name == 'workflow_dispatch')
110+
if: |
111+
(contains(github.ref, 'refs/tags/') || github.ref == 'refs/heads/rc/3.0-mv3') &&
112+
(github.event_name == 'push' || github.event_name == 'workflow_dispatch')
110113
steps:
111114
- name: Check out Git repository
112115
uses: actions/[email protected]
@@ -121,17 +124,17 @@ jobs:
121124
id: cache
122125
with:
123126
path: ${{ github.workspace }}/.cache
124-
key: ${{ runner.os }}-${{ hashFiles('package*json', 'package-lock.json', '*config.js') }}
127+
key: ${{ runner.os }}-${{ hashFiles('**/package*json', '**/package-lock.json', '**/*config.js', '**/*.patch') }}
125128
restore-keys: |
126-
${{ runner.os }}-${{ hashFiles('package*json', 'package-lock.json', '*config.js') }}
129+
${{ runner.os }}-${{ hashFiles('**/package*json', '**/package-lock.json', '**/*config.js', '**/*.patch') }}
127130
${{ runner.os }}-
128131
129132
- name: Restore node_modules
130133
id: yarn-cache
131134
uses: actions/[email protected]
132135
with:
133136
path: node_modules
134-
key: ${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}
137+
key: ${{ runner.os }}-${{ hashFiles('**/package*json', '**/package-lock.json', '**/*config.js', '**/*.patch') }}
135138

136139
- name: Install dependencies
137140
if: steps.yarn-cache.outputs.cache-hit != 'true'

.mocharc.json

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"diff": true,
3+
"extensions": [".js", ".ts"],
4+
"package": "./package.json",
5+
"require": [
6+
"ignore-styles",
7+
"ts-node/register",
8+
"tsconfig-paths/register"
9+
],
10+
"exit": true,
11+
"recursive": true,
12+
"node-option": [
13+
"es-module-specifier-resolution=node",
14+
"experimental-specifier-resolution=node",
15+
"loader=ts-node/esm"
16+
]
17+
}

.nvmrc

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
v18.14.0

Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM node:18.12.1
1+
FROM node:18.14.0
22

33
ARG USER_ID
44
ARG GROUP_ID

README.md

-14
Original file line numberDiff line numberDiff line change
@@ -63,15 +63,6 @@ You can disable and re-enable local gateway redirects by several means:
6363
- Suspend redirects **per site** using the toggle under "Current tab" ([illustrated below](#toggle-gateway-redirects-on-a-per-website-basis)) or in IPFS Companion's preferences
6464
- Add `x-ipfs-companion-no-redirect` to the URL itself as a hash ([example](https://ipfs.io/ipfs/QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR#x-ipfs-companion-no-redirect)) or query parameter ([example](https://ipfs.io/ipfs/QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR?x-ipfs-companion-no-redirect))
6565

66-
<!-- TODO: restore after https://github.com/ipfs-shipyard/ipfs-companion/issues/843 is closed
67-
### IPFS API as `window.ipfs`
68-
69-
Your IPFS node is exposed as `window.ipfs` on every web page.
70-
Websites can detect if `window.ipfs` exists and opt-in to use it instead of creating their own `js-ipfs` node.
71-
It saves system resources and battery (on mobile), avoids the overhead of peer discovery/connection, enables shared repository access and more!
72-
Make sure to read our [notes on `window.ipfs`](https://github.com/ipfs-shipyard/ipfs-companion/blob/main/docs/window.ipfs.md), where we explain it in-depth and provide examples on how to use it your own dapp.
73-
-->
74-
7566
### Access frequently-used IPFS actions from your browser bar
7667

7768
IPFS Companion enables you to quickly and easily access common actions from your browser bar with just a few clicks:
@@ -105,11 +96,6 @@ IPFS Companion ships with a variety of experimental features. Some are disabled
10596
- Re-route requests made via the following [experimental protocols](https://github.com/ipfs/ipfs-companion/issues/164) to an HTTP gateway (public or custom):
10697
- `ipfs://$cid`
10798
- `ipns://$cid_or_fqdn`
108-
- `dweb:/ipfs/$cid`
109-
- `dweb:/ipns/$cid_or_fqdn`
110-
111-
- Switch between the external HTTP API of your local IPFS node (default setting) and a js-ipfs node embedded in your browser (note that this has some [functionality limitations](https://docs.ipfs.io/how-to/companion-node-types/))
112-
[![screenshot of node type switch](https://gateway.ipfs.io/ipfs/QmPDxawBTEmH5Dk1anaqpryRyyaNwmqVPt5DsCf21eFWQz)](http://docs.ipfs.io/how-to/companion-node-types/)
11399

114100
## Install IPFS Companion
115101

add-on/_locales/ar/messages.json

+6-22
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
},
1414
"panel_headerActiveToggleTitle": {
1515
"message": "قم بتبديل كافة تكاملات IPFS",
16-
"description": "A label for an embedded IPFS node (panel_headerActiveToggleTitle)"
16+
"description": "A label for an toggling all IPFS integrations (panel_headerActiveToggleTitle)"
1717
},
1818
"panel_statusOffline": {
1919
"message": "غير متصل",
@@ -92,8 +92,8 @@
9292
"description": "A menu item tooltip in Browser Action pop-up (panel_importCurrentIpfsAddressTooltip)"
9393
},
9494
"panelCopy_currentIpnsAddress": {
95-
"message": "انسخ مسار IPNS",
96-
"description": "A menu item in Browser Action pop-up and right-click context menu (panelCopy_currentIpnsAddress)"
95+
"message": "انسخ مسار IPNS",
96+
"description": "A menu item in Browser Action pop-up and right-click context menu (panelCopy_currentIpnsAddress)"
9797
},
9898
"panelCopy_currentIpnsAddressTooltip": {
9999
"message": "استخدم مسار المحتوى هذا مع أدوات وبوابات IPFS للوصول إلى أحدث إصدار تم تحديثه من محتوى علامة التبويب هذه.",
@@ -239,19 +239,15 @@
239239
"message": "فشل في إيقاف عقدة IPFS",
240240
"description": "System notification title displayed when stopping an IPFS node fails (notify_stopIpfsNodeErrorTitle)"
241241
},
242-
"option_page_title" : {
242+
"option_page_title": {
243243
"message": "التفضيلات | رفيق IPFS",
244244
"description": "Title of the Preferences page (option_page_title)"
245245
},
246-
"option_page_header" : {
246+
"option_page_header": {
247247
"message": "التفضيلات المصاحبة",
248248
"description": "Main header on the Preferences screen (option_page_header)"
249249
},
250-
"option_legend_readMore" : {
251-
"message": "اقرأ المزيد",
252-
"description": "A generic link in option description on the Preferences screen (option_legend_readMore)"
253-
},
254-
"option_header_nodeType" : {
250+
"option_header_nodeType": {
255251
"message": "عقدة IPFS",
256252
"description": "A section header on the Preferences screen (option_header_nodeType)"
257253
},
@@ -267,10 +263,6 @@
267263
"message": "اضبط على \"خارجي\" للاتصال بالعقدة المحلية باستخدام HTTP API.",
268264
"description": "An option description on the Preferences screen (option_ipfsNodeType_external_description)"
269265
},
270-
"option_ipfsNodeType_embedded_description": {
271-
"message": "اضبط على \"Embedded\" لتشغيل عقدة js-ipfs مباشرة في متصفحك. (انقر فوق \"قراءة المزيد\" للتعرف على قيود هذه الميزة التجريبية.)",
272-
"description": "An option description on the Preferences screen (option_ipfsNodeType_embedded_description)"
273-
},
274266
"option_ipfsNodeType_brave_description": {
275267
"message": "اضبط على \"المقدمة من Brave\" للاستفادة من دعم IPFS الأصلي لمتصفح Brave.",
276268
"description": "An option description on the Preferences screen (option_ipfsNodeType_brave_description)"
@@ -279,18 +271,10 @@
279271
"message": "تكوين عقدة IPFS",
280272
"description": "An option title on the Preferences screen (option_ipfsNodeConfig_title)"
281273
},
282-
"option_ipfsNodeConfig_description": {
283-
"message": "تكوين إضافي للعقدة JS IPFS المضمنة. يجب أن يكون JSON صالحًا.",
284-
"description": "An option description on the Preferences screen (option_ipfsNodeConfig_description)"
285-
},
286274
"option_ipfsNodeType_external": {
287275
"message": "خارجي",
288276
"description": "An option on the Preferences screen (option_ipfsNodeType_external)"
289277
},
290-
"option_ipfsNodeType_embedded": {
291-
"message": "المضمنة",
292-
"description": "An option on the Preferences screen (option_ipfsNodeType_embedded)"
293-
},
294278
"option_ipfsNodeType_brave": {
295279
"message": "مقدمة من Brave",
296280
"description": "An option on the Preferences screen (option_ipfsNodeType_brave)"

add-on/_locales/ca/messages.json

+7-19
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
},
1414
"panel_headerActiveToggleTitle": {
1515
"message": "Alterna totes les integracions IPFS",
16-
"description": "A label for an embedded IPFS node (panel_headerActiveToggleTitle)"
16+
"description": "A label for an toggling all IPFS integrations (panel_headerActiveToggleTitle)"
1717
},
1818
"panel_statusOffline": {
1919
"message": "Desconectat",
@@ -92,8 +92,8 @@
9292
"description": "A menu item tooltip in Browser Action pop-up (panel_importCurrentIpfsAddressTooltip)"
9393
},
9494
"panelCopy_currentIpnsAddress": {
95-
"message": "Copy IPNS Path",
96-
"description": "A menu item in Browser Action pop-up and right-click context menu (panelCopy_currentIpnsAddress)"
95+
"message": "Copy IPNS Path",
96+
"description": "A menu item in Browser Action pop-up and right-click context menu (panelCopy_currentIpnsAddress)"
9797
},
9898
"panelCopy_currentIpnsAddressTooltip": {
9999
"message": "Use this content path with IPFS tools and gateways to reach the most recently updated version of this tab's content.",
@@ -239,19 +239,19 @@
239239
"message": "Failed to Stop IPFS Node",
240240
"description": "System notification title displayed when stopping an IPFS node fails (notify_stopIpfsNodeErrorTitle)"
241241
},
242-
"option_page_title" : {
242+
"option_page_title": {
243243
"message": "Preferències | IPFS Companion",
244244
"description": "Title of the Preferences page (option_page_title)"
245245
},
246-
"option_page_header" : {
246+
"option_page_header": {
247247
"message": "Preferències de Companion",
248248
"description": "Main header on the Preferences screen (option_page_header)"
249249
},
250-
"option_legend_readMore" : {
250+
"option_legend_readMore": {
251251
"message": "Llegir més",
252252
"description": "A generic link in option description on the Preferences screen (option_legend_readMore)"
253253
},
254-
"option_header_nodeType" : {
254+
"option_header_nodeType": {
255255
"message": "Node IPFS",
256256
"description": "A section header on the Preferences screen (option_header_nodeType)"
257257
},
@@ -267,10 +267,6 @@
267267
"message": "Set to \"External\" to connect to a local node using the HTTP API.",
268268
"description": "An option description on the Preferences screen (option_ipfsNodeType_external_description)"
269269
},
270-
"option_ipfsNodeType_embedded_description": {
271-
"message": "Set to \"Embedded\" to run a js-ipfs node directly in your browser. (Click \"Read more\" to learn about the limitations of this experimental feature.)",
272-
"description": "An option description on the Preferences screen (option_ipfsNodeType_embedded_description)"
273-
},
274270
"option_ipfsNodeType_brave_description": {
275271
"message": "Set to \"Provided by Brave\" to leverage the Brave browser's native IPFS support.",
276272
"description": "An option description on the Preferences screen (option_ipfsNodeType_brave_description)"
@@ -279,18 +275,10 @@
279275
"message": "Configurar Node IPFS",
280276
"description": "An option title on the Preferences screen (option_ipfsNodeConfig_title)"
281277
},
282-
"option_ipfsNodeConfig_description": {
283-
"message": "Configuració addicional pel node incrustat JS IPFS. Ha de ser un JSON vàlid.",
284-
"description": "An option description on the Preferences screen (option_ipfsNodeConfig_description)"
285-
},
286278
"option_ipfsNodeType_external": {
287279
"message": "Extern",
288280
"description": "An option on the Preferences screen (option_ipfsNodeType_external)"
289281
},
290-
"option_ipfsNodeType_embedded": {
291-
"message": "Incrustat",
292-
"description": "An option on the Preferences screen (option_ipfsNodeType_embedded)"
293-
},
294282
"option_ipfsNodeType_brave": {
295283
"message": "Provided by Brave",
296284
"description": "An option on the Preferences screen (option_ipfsNodeType_brave)"

add-on/_locales/cs/messages.json

+6-22
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
},
1414
"panel_headerActiveToggleTitle": {
1515
"message": "Zapnout/vypnout IPFS integraci",
16-
"description": "A label for an embedded IPFS node (panel_headerActiveToggleTitle)"
16+
"description": "A label for an toggling all IPFS integrations (panel_headerActiveToggleTitle)"
1717
},
1818
"panel_statusOffline": {
1919
"message": "odpojený",
@@ -92,8 +92,8 @@
9292
"description": "A menu item tooltip in Browser Action pop-up (panel_importCurrentIpfsAddressTooltip)"
9393
},
9494
"panelCopy_currentIpnsAddress": {
95-
"message": "Kopírovat IPNS cestu",
96-
"description": "A menu item in Browser Action pop-up and right-click context menu (panelCopy_currentIpnsAddress)"
95+
"message": "Kopírovat IPNS cestu",
96+
"description": "A menu item in Browser Action pop-up and right-click context menu (panelCopy_currentIpnsAddress)"
9797
},
9898
"panelCopy_currentIpnsAddressTooltip": {
9999
"message": "Pomocí této cesty k obsahu se pomocí nástrojů a bran IPFS dostanete k poslední aktualizované verzi obsahu této karty.",
@@ -239,19 +239,15 @@
239239
"message": "Nepodařilo se zastavit uzel IPFS",
240240
"description": "System notification title displayed when stopping an IPFS node fails (notify_stopIpfsNodeErrorTitle)"
241241
},
242-
"option_page_title" : {
242+
"option_page_title": {
243243
"message": "Předvolby | IPFS Companion",
244244
"description": "Title of the Preferences page (option_page_title)"
245245
},
246-
"option_page_header" : {
246+
"option_page_header": {
247247
"message": "Předvolby Companion",
248248
"description": "Main header on the Preferences screen (option_page_header)"
249249
},
250-
"option_legend_readMore" : {
251-
"message": "Více informací",
252-
"description": "A generic link in option description on the Preferences screen (option_legend_readMore)"
253-
},
254-
"option_header_nodeType" : {
250+
"option_header_nodeType": {
255251
"message": "IPFS uzel",
256252
"description": "A section header on the Preferences screen (option_header_nodeType)"
257253
},
@@ -267,10 +263,6 @@
267263
"message": "Nastavením na hodnotu \"Externí\" se připojíte k místnímu uzlu pomocí rozhraní HTTP API.",
268264
"description": "An option description on the Preferences screen (option_ipfsNodeType_external_description)"
269265
},
270-
"option_ipfsNodeType_embedded_description": {
271-
"message": "Nastavením na \"Embedded\" spustíte uzel js-ipfs přímo v prohlížeči. (Kliknutím na \"Přečtěte si více\" se dozvíte o omezeních této experimentální funkce.)",
272-
"description": "An option description on the Preferences screen (option_ipfsNodeType_embedded_description)"
273-
},
274266
"option_ipfsNodeType_brave_description": {
275267
"message": "Nastavte možnost \"Provided by Brave\", abyste využili nativní podporu IPFS v prohlížeči Brave.",
276268
"description": "An option description on the Preferences screen (option_ipfsNodeType_brave_description)"
@@ -279,18 +271,10 @@
279271
"message": "Konfigurace IPFS uzlu",
280272
"description": "An option title on the Preferences screen (option_ipfsNodeConfig_title)"
281273
},
282-
"option_ipfsNodeConfig_description": {
283-
"message": "Další konfigurace pro embedovaný uzel JS IPFS. Musí to být platný JSON.",
284-
"description": "An option description on the Preferences screen (option_ipfsNodeConfig_description)"
285-
},
286274
"option_ipfsNodeType_external": {
287275
"message": "Externí",
288276
"description": "An option on the Preferences screen (option_ipfsNodeType_external)"
289277
},
290-
"option_ipfsNodeType_embedded": {
291-
"message": "Integrovaný",
292-
"description": "An option on the Preferences screen (option_ipfsNodeType_embedded)"
293-
},
294278
"option_ipfsNodeType_brave": {
295279
"message": "Poskytuje Brave",
296280
"description": "An option on the Preferences screen (option_ipfsNodeType_brave)"

0 commit comments

Comments
 (0)