ghost-keychain/packages/extension-inject
Thibaut Sardan ae9227ef6d
Add phishing site detection, redirection and information (#488)
* missing type declarations for @polkadot/phishing

* phishing landing page

* Update packages/extension-base/src/background/types.ts

* wording make it short

* fix build

* add test for xml pdf utils

* fix export

* Update packages/extension-base/src/utils/isXmlOrPdf.ts

* use Trans from i18n

* alpha ordering

* i18nKey

* lint

* move pdf and xml detection to enable to prevent unwanted redirection

* styled component refactoring

* import odering

* remove a css hack :)

Co-authored-by: Github Actions <action@github.com>
2020-10-13 14:14:55 +02:00
..
src Add phishing site detection, redirection and information (#488) 2020-10-13 14:14:55 +02:00
LICENSE extension-inject (no direct globals for extension/dapp) (#75) 2019-07-12 21:22:06 +02:00
package.json [CI Skip] release/beta 0.35.0-beta.12 2020-10-10 10:06:21 +00:00
README.md Add address encoding option to web3Accounts (#437) 2020-09-11 16:09:02 +02:00

@polkadot/extension-inject

This is a basic extension injector that manages access to the global objects available. As an extension developer, you don't need to manage access to the window object manually, by just calling enable here, the global object is setup and managed properly. From here any dapp can access it with the @polkadot/extension-dapp package;

Usage

import { injectExtension } from '@polkadot/extension-inject';

// this a the function that will be exposed to be callable by the dapp. It resolves a promise
// with the injected interface, (see `Injected`) when the dapp at `originName` (url) is allowed
// to access functionality
function enableFn (originName: string): Promise<Injected> {
  ...
}

// injects the extension into the page
injectExtension(enableFn, { name: 'myExtension', version: '1.0.1' });