-
Notifications
You must be signed in to change notification settings - Fork 200
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add MV3 types and JSON schema #89
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- upgrate @types/chrome - handle type errors - note where MV3 incompatible
jacksteamdev
added a commit
that referenced
this pull request
Aug 18, 2021
* fix: delay reload by 100ms * tests: wait for reloader delay skip delay if delay is 0 * 3.6.0-0 * Add MV3 types and JSON schema (#89) * Fix integration bugs with new schema (#90) * fix: add strict schema and fix schema bugs * feat: upgrade manifest validation errors * tests: upgrade TS and Jest fix a bazillion ts-eslint errors increase jest beforeAll timeout * fix bug where pkg version could be undefined * fix: use strict manifest for build validation * chore: one more time! * chore: again * chore: include schema on npm * chore: support node >= 12 * chore: remove comment from rollup config * chore: fix types build step * chore: add alias to jest * chore: remove aliases * 3.6.0-1 * chore: fix tsconfig one last time * Update test fixtures for MV3 (#92) * tests: rename mv2 parser test use readJSONSync instead of require * refactor: rename manifest types file * chore: rename tests and fix test paths * tests: create mv3 copies of all crx's * tests: format test fixture manifest.json files * chore: add mv2 to all mv3 manifests * chore: upgrade all fixture manifests to mv3 * chore: ignore script files * tests: remove junk files from google's conversion script * tests: make scripts into modules * tests: rename background file * tests: rename fixture background files to service_worker * chore: move and rename background sw files * tests: remove mv3 irrelevant fixtures * tests: rename fixture * tests: side effect * MV3 Parser (#93) * tests: rename mv2 parser test use readJSONSync instead of require * refactor: rename manifest types file * chore: rename tests and fix test paths * tests: create mv3 copies of all crx's * tests: format test fixture manifest.json files * chore: add mv2 to all mv3 manifests * chore: upgrade all fixture manifests to mv3 * chore: ignore script files * tests: remove junk files from google's conversion script * tests: make scripts into modules * tests: rename background file * tests: rename fixture background files to service_worker * chore: move and rename background sw files * tests: remove mv3 irrelevant fixtures * tests: rename fixture * feat: parse mv3 * 3.6.0-2 * Support locales (#95) * tests: add locales fixtures * feat: support locales in both mv2 and mv3 * fix: tighten filename validation to commonjs chunk * Remove prettier (#96) * refactor: remove prettier usage * chore: make prettier a devDependency * 3.6.0-3 * Build MV3 extensions (#98) * 3.6.0-5 * chore: fix build error * fix: allow ports in schema url match patterns * 3.6.0-6 * fix: remove debugging line * fix: warn deprecated feature correctly * Manifest as ts files (#99) * refactor deprecation warnings into own file * refactor manifest v3 update into own file * tests: add tests for manifest as ts file * feat: support manifest as TS files * fix build errors * 3.6.0-7 * fix deprecation warning condition * fix: convert content script match patterns (#100) * fix duplicate match patterns * fix duplicate map calls * feat: simplify MV3 content script approach * 3.6.0-8 * fix manifest v2 schema bug * MV3 simple reloader (#103) * refactor: switch to lodash * feat: add mv3 support to simpleReloader * fix manifest json schema bug * refactor simple reloader
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds a JSON schema for Manifest Version 3 and upgrades
@types/chrome
to support MV3 in TypeScript files.JSON Schema
The schema uses Draft 7 instead of Draft 4 to support conditional subschemas.
TypeScript
Some refactoring was required to use the upgraded
chrome
types.chrome.runtime.Manifest
is used in contexts unaffected by the transition.chrome.runtime.ManifestV2
is used in MV2 specific contexts.chrome.runtime.ManifestV3
is for MV3 specific contexts.The final goal is to use
chrome.runtime.Manifest
in source code, and only use the more specific interfaces for version specific tests.