Compare commits

..
379 Commits
Author SHA1 Message Date
grenadeandClaude Opus 5 160d97c19b build: declare @quantus/crypto as a ui-keyring dev dependency
Lock Threads / lock (push) Has been cancelled
The ML-DSA restore spec imports contextForSpec from it, and polkadot-dev's
build refuses a package whose sources import something undeclared.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012uDUodEcRbBwNRi3UCmw8f
2026-09-16 21:13:56 +03:00
grenadeandClaude Opus 5 c7c23b7958 feat!: ui-keyring holds post-quantum keys only
Follows quantus/common#6, which removed ed25519, sr25519, ecdsa and ethereum
from the keyring (forks at 14.0.3-quantus.3).

- restoreAccount now goes through keyring.createFromJson instead of building
  the pair itself. A restored backup therefore gets the same refusal as every
  other entry point: a polkadot{.js} export of an sr25519 or ed25519 account is
  told "<type> keys are not quantum-safe and cannot be held here", not decoded.
- Version-0 JSON, which does not record its key type and so cannot be ML-DSA,
  is refused. Upstream guessed ed25519.
- isEthereum is always false; it's kept so callers written against upstream
  still read a boolean.
- loadAll already skips, with a warning, any stored account the keyring
  refuses, so a profile holding an old classical account still starts.

The spec that pinned sr25519 restore as unchanged is replaced by the two
refusals. ui-keyring 3.16.7-quantus.3, on the quantus.3 forks. yarn test 47
passing; lint clean.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012uDUodEcRbBwNRi3UCmw8f
2026-09-16 21:13:01 +03:00
grenadeandClaude Opus 5 2d6a9ad1b3 build: consume the forks at 14.0.3-quantus.2
Lock Threads / lock (push) Has been cancelled
Picks up the networks fix (the quantum-safe gate moving out of the library list,
which made @polkadot/api importable again) and Heisenberg's corrected HEI symbol.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012uDUodEcRbBwNRi3UCmw8f
2026-09-15 14:15:02 +03:00
rob thijssenandClaude Opus 5 18105d3ced build: pin the forked packages at 14.0.3-quantus.1
Follows the rename in quantus/common. The point is not tidiness: with the forks
numbered 14.0.3, a missing resolution here would have been satisfied from npm by
the unforked upstream package, installing cleanly and silently dropping Quantus
support. Now it fails with "No candidates found" — verified by removing the
@polkadot/networks resolution and running an install.

Refs quantus/extension#2

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012uDUodEcRbBwNRi3UCmw8f
2026-09-15 11:28:03 +03:00
rob thijssenandClaude Opus 5 f2a1ab3a72 build: consume the forked @polkadot packages from the registry, drop the scaffolding
Removes every workaround the symlink approach needed, and reverts tsconfig to
upstream's exactly.

The three forked packages — @polkadot/{networks,util-crypto,keyring} — are now
pinned to Gitea tarball URLs in resolutions. @polkadot/util is not, because this
fork does not modify it; it comes from npm like the rest of the scope.

Tarball URLs rather than routing the @polkadot scope to Gitea, because the scope
is mostly *not* forked: routing it would send yarn looking for dozens of packages
that are not there. @quantus is routed as a whole scope in .yarnrc.yml, which is
safe because we own every name in it.

Four things go away, all of which existed for one reason — node resolves a portal
or link symlink to its realpath, after which @polkadot/util-crypto resolved inside
*common's* tree, where it is a workspace source directory with no exports map:

  - resolutions pointing four packages at ../common/packages/*/build
  - tsconfig.base.json `*.d.ts` path mappings, needed because NodeNext will not
    infer an extension for a bare path and looked for a `types` directory
  - tsconfig.json overriding those with a runtime `.js` view, because
    @polkadot/dev-ts reads that file and tried to import a declaration file as a
    module
  - --preserve-symlinks in the test scripts

Also drops fflate and @quantus/crypto from ui-keyring's devDependencies; they were
there only because `link:` does not install its target's dependencies.

`yarn lint` now reports 0 errors, down from 25 on pristine upstream. Those were
no-unsafe-assignment and no-unsafe-argument on values that were `any` purely
because the types did not resolve.

Refs quantus/extension#2, quantus/ui#1

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012uDUodEcRbBwNRi3UCmw8f
2026-09-15 11:08:43 +03:00
rob thijssenandClaude Opus 5 ec1399f3f3 fix(ui-keyring): restoreAccount cannot rebuild an ML-DSA public key from an address
The mirror of the same mistake in keyring.createFromJson, fixed the same way.

restoreAccount passed `decodeAddress(json.address)` as the public key. For the
curve schemes that is correct — the address *is* the public key. An ML-DSA
account id is a one-way Poseidon2 hash, so this constructed a pair whose "public
key" was a hash of the public key. It did not throw; it produced a pair that was
simply wrong.

The public key is in `json.encoded`, still encrypted, and the pair is returned
*locked* with callers reading `pair.address` off it long before a password
appears. So it now passes an accountId — carried as data, used for the address
while locked, and checked against the real key once decodePkcs8 supplies one.
That check matters here as much as in the keyring: the address field sits outside
the encrypted blob, so a tampered one decodes cleanly and yields an account
displaying an address its key cannot sign for.

The 'ed25519' fallback for version-0 JSON is left alone. Those files predate the
crypto type being recorded and are by definition not Quantus, so the guess is
safe — but it is commented, because quantus/common#6 removes ed25519 from
KeypairType and this becomes a refusal.

Build plumbing, all of it dev-time only and all replaced by publishing these
packages to a registry (quantus/extension#2):

Resolutions point @polkadot/{keyring,util-crypto,networks,util} at the sibling
`common` checkout's build output, and @quantus/crypto at `wasm`.

tsconfig.base.json gains `*.d.ts` path mappings for them. Without these, node
resolves the portal symlink to its realpath and `@polkadot/util-crypto` then
resolves inside *common's* tree, where it is the workspace source directory with
no exports map — so EncryptedJson silently fails to resolve and KeyringPair$Json
loses `encoded` and `encoding`. The `*.d.ts` substitution has to come first
because NodeNext will not infer an extension for a bare path, and looks for a
`types` directory instead of `types.d.ts`.

tsconfig.json overrides those with the runtime `.js` view, because
@polkadot/dev-ts reads that file and would otherwise import a declaration file as
a module ("Debug Failure. Output generation failed"). tsc reads
tsconfig.build.json, which extends the base directly, so each gets the view it
needs.

The test script sets --preserve-symlinks, which yarn itself warns is required for
portals: without it the realpath problem above recurs at runtime.

Incidentally, `yarn lint` errors drop from 25 to 8 — resolving those types
removed a pile of `any`. The remaining 8 are upstream's own, in loadContract and
allowGenesis, and are left alone.

Refs quantus/ui#1

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012uDUodEcRbBwNRi3UCmw8f
2026-09-15 10:40:52 +03:00
github-actions[bot] 1d667d4dc0 [CI Skip] release/stable 3.16.7
Lock Threads / lock (push) Has been cancelled
skip-checks: true
2026-03-26 19:24:07 +00:00
Tarik Gul c60975d532 3.16.7 (#861)
* 3.16.7

* Update Changelog
2026-03-26 21:22:47 +02:00
github-actions[bot] 816d22019b [CI Skip] bump/beta 3.16.7-1-x
skip-checks: true
2026-03-26 13:29:51 +00:00
Tarik Gul ddca14ece2 Bump common to 14.0.3 (#860) 2026-03-26 15:28:34 +02:00
github-actions[bot] f5e26741da [CI Skip] bump/beta 3.16.7-0-x
skip-checks: true
2026-03-13 13:57:53 +00:00
Tarik Gul c5ab15118d Set headers for 2026 (#859)
* Set headers for 2026

* remaining headers
2026-03-13 15:56:35 +02:00
github-actions[bot] 2e00b6e4e4 [CI Skip] release/stable 3.16.6
skip-checks: true
2025-12-10 06:42:02 +00:00
Arjun Porwal 8b483c6a1a 3.16.6 (#857) 2025-12-10 12:10:43 +05:30
github-actions[bot] 1339b6291b [CI Skip] release/stable 3.16.5
skip-checks: true
2025-12-10 04:58:38 +00:00
Arjun Porwal 0b69a66b73 3.16.5 (#856) 2025-12-10 10:27:22 +05:30
github-actions[bot] ccb870aec2 [CI Skip] bump/beta 3.16.5-0-x
skip-checks: true
2025-12-10 04:49:08 +00:00
Arjun Porwal 73221469a3 chore: bump polkadot-js deps (#855) 2025-12-10 10:17:49 +05:30
github-actions[bot] 95fccdfc30 [CI Skip] release/stable 3.16.4
skip-checks: true
2025-11-25 11:56:32 +00:00
Arjun Porwal 078133bc5a 3.16.4 (#854) 2025-11-25 17:25:15 +05:30
github-actions[bot] c2c4b1a89a [CI Skip] bump/beta 3.16.4-0-x
skip-checks: true
2025-11-25 11:36:11 +00:00
Arjun Porwal f52e4e5096 chore: bump deps (#853) 2025-11-25 17:04:53 +05:30
github-actions[bot] 292cb319c3 [CI Skip] release/stable 3.16.3
skip-checks: true
2025-11-12 06:32:14 +00:00
Arjun Porwal c16d40d3b7 3.16.3 (#851) 2025-11-12 12:00:59 +05:30
github-actions[bot] 9dd1a86b19 [CI Skip] bump/beta 3.16.3-0-x
skip-checks: true
2025-11-12 06:22:10 +00:00
Arjun Porwal e9dea3bb8a chore: bump deps (#850) 2025-11-12 11:50:51 +05:30
github-actions[bot] b1f6ca7b95 [CI Skip] release/stable 3.16.2
skip-checks: true
2025-10-22 12:19:51 +00:00
Arjun Porwal 06449c3ecb 3.16.2 (#849) 2025-10-22 09:18:33 -03:00
github-actions[bot] 62f6cb363e [CI Skip] bump/beta 3.16.2-0-x
skip-checks: true
2025-10-22 12:11:49 +00:00
Arjun Porwal 062d88d9a6 chore: upgrade deps (#848) 2025-10-22 17:40:20 +05:30
github-actions[bot] 9697a311cc [CI Skip] release/stable 3.16.1
skip-checks: true
2025-08-27 12:53:15 +00:00
Arjun Porwal f125830e2c 3.16.1 (#847)
* 3.16.1

* 3.16.1
2025-08-27 09:52:00 -03:00
Arjun Porwal 4b5d6b7205 3.15.5 (#846) 2025-08-27 17:45:12 +05:30
github-actions[bot] c92ff8e3c7 [CI Skip] bump/beta 3.15.5-0-x
skip-checks: true
2025-08-27 12:07:51 +00:00
Arjun Porwal d974af4c00 chore: upgrade polkadot deps (#845) 2025-08-27 17:36:27 +05:30
github-actions[bot] 50eb62c6dc [CI Skip] release/stable 3.15.4
skip-checks: true
2025-08-13 14:41:42 +00:00
Arjun Porwal ae0d6235f9 3.15.4 (#844)
* 3.15.4

* 3.15.4
2025-08-13 20:10:22 +05:30
github-actions[bot] 76e1273188 [CI Skip] bump/beta 3.15.4-0-x
skip-checks: true
2025-08-13 14:31:05 +00:00
Arjun Porwal 15c05ebecb chore: upgrade polkadot dependencies (#843) 2025-08-13 19:59:40 +05:30
github-actions[bot] 6d6ca2326f [CI Skip] release/stable 3.15.3
skip-checks: true
2025-07-30 05:00:25 +00:00
Arjun Porwal 5a96a6a9bc 3.15.3 (#842) 2025-07-30 10:29:09 +05:30
github-actions[bot] 73e6fcf492 [CI Skip] bump/beta 3.15.3-1-x
skip-checks: true
2025-07-30 04:38:56 +00:00
Arjun Porwal 60bd0a908b chore: bump deps (#841) 2025-07-30 10:07:38 +05:30
github-actions[bot] 0ee31f4005 [CI Skip] bump/beta 3.15.3-0-x
skip-checks: true
2025-07-23 03:47:39 +00:00
Niklas P 9a99507b98 Update Beachball.tsx to remove duplication in strict mode (#840)
in strict mode the beachball gets rendered twice
2025-07-23 09:16:19 +05:30
github-actions[bot] 2b2ec1c6af [CI Skip] release/stable 3.15.2
skip-checks: true
2025-07-02 12:40:44 +00:00
Arjun Porwal e16ef30a07 3.15.2 (#839) 2025-07-02 18:09:19 +05:30
github-actions[bot] f3e23345a5 [CI Skip] bump/beta 3.15.2-0-x
skip-checks: true
2025-07-02 12:32:25 +00:00
Arjun Porwal 61d7383408 chore: upgraded polkadot deps (#838) 2025-07-02 18:00:57 +05:30
github-actions[bot] 54a6be04ca [CI Skip] release/stable 3.15.1
skip-checks: true
2025-06-18 12:35:16 +00:00
Arjun Porwal 86fb5edec7 3.15.1 (#837) 2025-06-18 18:03:57 +05:30
github-actions[bot] d5ab7e64aa [CI Skip] bump/beta 3.14.2-0-x
skip-checks: true
2025-06-18 12:28:42 +00:00
Arjun Porwal 421ccb322a Upgrade polkadot deps (#836)
* chore: upgrade deps

* fix: correct capitalization of "Overview" in README

* fix: correct capitalization of "overview" in README

* fix: update typescript version in package.json and yarn.lock

* fix: downgrade typescript version to 5.5.4
2025-06-18 17:57:21 +05:30
github-actions[bot] 648c379c28 [CI Skip] release/stable 3.14.1
skip-checks: true
2025-05-23 15:27:16 +00:00
Tarik Gul 8541e93c8d 3.14.1 (#835) 2025-05-23 18:25:59 +03:00
github-actions[bot] d94ab0f523 [CI Skip] bump/beta 3.13.2-1-x
skip-checks: true
2025-05-23 15:10:03 +00:00
Tarik Gul 9ceb37eacf Upgrade polkadot-js/common to 13.5.1 (#834) 2025-05-23 18:08:41 +03:00
github-actions[bot] 9bab143e63 [CI Skip] bump/beta 3.13.2-0-x
skip-checks: true
2025-05-23 14:46:53 +00:00
Tarik Gul 2071d3a7d8 Add the type field to external keypair accounts (#833) 2025-05-23 17:45:29 +03:00
github-actions[bot] 36a18e7621 [CI Skip] release/stable 3.13.1
skip-checks: true
2025-04-16 13:01:27 +00:00
Arjun Porwal 41c35eaa37 3.13.1 (#832)
* 3.13.1

* 3.13.1
2025-04-16 18:30:08 +05:30
github-actions[bot] 090ed57255 [CI Skip] bump/beta 3.12.3-1-x
skip-checks: true
2025-04-16 12:00:38 +00:00
Arjun Porwal 905ef46b1f chore: upgrade polkadot deps (#831) 2025-04-16 17:29:16 +05:30
github-actions[bot] 2022f0e3ec [CI Skip] bump/beta 3.12.3-0-x
skip-checks: true
2025-04-02 14:02:33 +00:00
Tarik Gul 1a6fde78fd Add key validation for FileStore (#830) 2025-04-02 17:01:11 +03:00
github-actions[bot] 4dc82926f2 [CI Skip] release/stable 3.12.2
skip-checks: true
2025-02-18 14:14:03 +00:00
Valentin Fernandez 2c3566cad5 3.12.2 2025-02-18 11:12:39 -03:00
github-actions[bot] 146f63fd96 [CI Skip] bump/beta 3.12.2-1-x
skip-checks: true
2025-02-18 13:56:13 +00:00
Valentin Fernandez 12a496bf7b bump common 13.4.3 (#828) 2025-02-18 10:54:45 -03:00
github-actions[bot] 9c4f3b204b [CI Skip] bump/beta 3.12.2-0-x
skip-checks: true
2025-01-17 20:58:59 +00:00
Tarik Gul 5a8666ca0d Bump dev to 0.83.2 (#827) 2025-01-17 22:57:34 +02:00
github-actions[bot] 2e4eaf5c08 [CI Skip] release/stable 3.12.1
skip-checks: true
2025-01-08 16:37:39 +00:00
Tarik Gul 882984d2b3 3.12.1 (#825) 2025-01-08 18:36:13 +02:00
github-actions[bot] 3fde3865d5 [CI Skip] bump/beta 3.11.4-2-x
skip-checks: true
2025-01-08 16:28:49 +00:00
Tarik Gul aa3b0e806a Upgrade common to 13.3.1 (#824) 2025-01-08 18:27:18 +02:00
github-actions[bot] 14ca62de7a [CI Skip] bump/beta 3.11.4-1-x
skip-checks: true
2025-01-08 16:22:05 +00:00
Tarik Gul d9ffc2e697 Bump dev w/ ts (#823) 2025-01-08 18:20:38 +02:00
github-actions[bot] 0986382e72 [CI Skip] bump/beta 3.11.4-0-x
skip-checks: true
2025-01-02 23:08:34 +00:00
Tarik Gul caa0ceea23 2025 (#822)
* 2025

* update License
2025-01-03 01:07:08 +02:00
github-actions[bot] 0b6c1028a7 [CI Skip] release/stable 3.11.3
skip-checks: true
2024-11-12 15:31:31 +00:00
Tarik Gul 0a8c410387 3.11.3 (#820) 2024-11-12 17:29:57 +02:00
github-actions[bot] 80a19f1797 [CI Skip] bump/beta 3.11.3-1-x
skip-checks: true
2024-11-12 14:44:40 +00:00
Tarik Gul a2bfdaaacc Bump common to 13.2.3 (#817) 2024-11-12 16:43:14 +02:00
github-actions[bot] 97a288dbe0 [CI Skip] bump/beta 3.11.3-0-x
skip-checks: true
2024-11-12 14:35:36 +00:00
Tarik Gul 4f5a7d01fd Bump dev to 0.82.1 w/ tslib (#816) 2024-11-12 16:34:07 +02:00
github-actions[bot] 34a0e5a4cc [CI Skip] release/stable 3.11.2
skip-checks: true
2024-10-30 13:39:23 +00:00
Tarik Gul 066f9445b4 3.11.2 (#815) 2024-10-30 15:38:02 +02:00
github-actions[bot] 3bf9a3091b [CI Skip] bump/beta 3.11.2-0-x
skip-checks: true
2024-10-30 13:31:35 +00:00
Tarik Gul 146f6ff5d7 Upgrade common to 13.2.2 (#814) 2024-10-30 15:30:08 +02:00
github-actions[bot] 7faab2b89f [CI Skip] release/stable 3.11.1
skip-checks: true
2024-10-23 12:47:59 +00:00
Tarik Gul f4281ec6d9 3.11.1 (#813) 2024-10-23 15:46:28 +03:00
github-actions[bot] f46de4a524 [CI Skip] bump/beta 3.10.2-2-x
skip-checks: true
2024-10-23 00:49:10 +00:00
Tarik Gul 69e99c95bc Bump yarn to 4.5.1 (#812) 2024-10-23 03:47:43 +03:00
github-actions[bot] 3befcc2e69 [CI Skip] bump/beta 3.10.2-1-x
skip-checks: true
2024-10-23 00:23:35 +00:00
Tarik Gul e5a2337a14 Update polkadot common to 13.2.1 (#811) 2024-10-23 03:22:09 +03:00
github-actions[bot] 8410d5062e [CI Skip] bump/beta 3.10.2-0-x
skip-checks: true
2024-10-22 20:21:58 +00:00
Tarik Gul defe24c202 Bump dev to 0.81.2 (#810) 2024-10-22 23:20:33 +03:00
github-actions[bot] b5713564f6 [CI Skip] release/stable 3.10.1
skip-checks: true
2024-09-20 13:00:22 +00:00
Tarik Gul ec861d8314 3.10.1 (#809) 2024-09-20 15:58:56 +03:00
github-actions[bot] def96e5862 [CI Skip] bump/beta 3.9.2-1-x
skip-checks: true
2024-09-19 00:09:55 +00:00
Tarik Gul 45f4619995 Upgrade polkadot/common to 13.1.1 (#808) 2024-09-19 03:08:25 +03:00
github-actions[bot] 16ca4b0233 [CI Skip] bump/beta 3.9.2-0-x
skip-checks: true
2024-08-13 14:07:33 +00:00
Tarik Gul 43b5831e87 Bump yarn to 4.4.0 (#806) 2024-08-13 17:06:06 +03:00
github-actions[bot] 4952af75b0 [CI Skip] release/stable 3.9.1
skip-checks: true
2024-08-13 13:42:09 +00:00
Tarik Gul 41bab9b8c9 3.9.1 (#805) 2024-08-13 16:40:45 +03:00
github-actions[bot] 9fd024b4d8 [CI Skip] bump/beta 3.8.4-1-x
skip-checks: true
2024-08-13 13:19:55 +00:00
Tarik Gul 8d05c67577 Add chainSpecific option for ledger (#804) 2024-08-13 09:18:28 -04:00
github-actions[bot] 61a28eb333 [CI Skip] bump/beta 3.8.4-0-x
skip-checks: true
2024-08-08 01:52:37 +00:00
Tarik Gul 9930b83e87 Upgrade @polkadot/dev (#803) 2024-08-08 04:51:09 +03:00
github-actions[bot] 616b5d945c [CI Skip] release/stable 3.8.3
skip-checks: true
2024-08-01 00:30:40 +00:00
Tarik Gul b81fc14777 3.8.3 (#802)
* 3.8.3

* credit
2024-07-31 20:29:16 -04:00
github-actions[bot] 7d252ec039 [CI Skip] bump/beta 3.8.3-0-x
skip-checks: true
2024-08-01 00:13:20 +00:00
Ryan Lee 3c890a3e59 fix: qr-code (#801)
* fix: qr-code

* fix: linter warning
2024-07-31 20:11:51 -04:00
github-actions[bot] f08670ba14 [CI Skip] release/stable 3.8.2
skip-checks: true
2024-07-23 22:55:14 +00:00
Tarik Gul 62f86ab9d8 3.8.2 (#799) 2024-07-24 01:53:55 +03:00
github-actions[bot] 5cc4d12685 [CI Skip] bump/beta 3.8.2-0-x
skip-checks: true
2024-07-23 22:45:28 +00:00
Tarik Gul 04c00c675f Fix ledgerApp bug, and remove legacy (#798) 2024-07-23 18:44:03 -04:00
github-actions[bot] 482dcc0ddf [CI Skip] release/stable 3.8.1
skip-checks: true
2024-07-22 20:55:18 +00:00
Tarik Gul 37f22ae0de 3.8.1 (#797) 2024-07-22 23:53:58 +03:00
github-actions[bot] 940bbdf949 [CI Skip] bump/beta 3.7.2-0-x
skip-checks: true
2024-07-22 20:29:20 +00:00
Tarik Gul 0f03a8c2bf Add new ledger app settings (#796)
* Add ledger app settings

* Add ledgerApp

* Add to setting struct

* add available ledger apps

* fix info
2024-07-22 16:27:58 -04:00
github-actions[bot] b61b7f25b8 [CI Skip] release/stable 3.7.1
skip-checks: true
2024-07-13 23:21:58 +00:00
Tarik Gul f887590fec 3.7.1 (#795) 2024-07-14 02:20:38 +03:00
github-actions[bot] f3473159ac [CI Skip] bump/beta 3.6.7-1-x
skip-checks: true
2024-07-13 23:11:38 +00:00
Tarik Gul 248a5c2208 Bump yarn to 4.3.1 (#794) 2024-07-14 02:10:18 +03:00
github-actions[bot] 7e98a6727d [CI Skip] bump/beta 3.6.7-0-x
skip-checks: true
2024-07-13 23:02:47 +00:00
Tarik Gul 4724ddee1f Upgrade common to 13.0.2 (#793) 2024-07-14 02:01:21 +03:00
github-actions[bot] 06c2fe0463 [CI Skip] release/stable 3.6.6
skip-checks: true
2024-04-17 19:24:26 +00:00
Tarik Gul 31c6e597ea 3.6.6 (#790) 2024-04-17 22:23:07 +03:00
github-actions[bot] 0a70f8b412 [CI Skip] bump/beta 3.6.6-2-x
skip-checks: true
2024-04-17 17:02:48 +00:00
Viki Val a694afc240 Add compatibility layer for H160 addresses (#789)
*  compatibilty layer for H160 addresses

* :broom linter

* 🧼 space before (
2024-04-17 13:01:24 -04:00
github-actions[bot] c77e8d3c4a [CI Skip] bump/beta 3.6.6-1-x
skip-checks: true
2024-04-08 16:50:48 +00:00
Tarik Gul 7511d4c27f Update ci checkout and setup_node to v4 (#788) 2024-04-08 19:49:15 +03:00
github-actions[bot] 66d0d632df [CI Skip] bump/beta 3.6.6-0-x
skip-checks: true
2024-03-26 01:32:02 +00:00
Tarik Gul 76e77cfc2e Bump yarn to 4.1.1 (#787) 2024-03-26 03:30:38 +02:00
github-actions[bot] 91f8cddb3c [CI Skip] release/stable 3.6.5
skip-checks: true
2024-02-28 16:47:06 +00:00
Tarik Gul 254409f486 3.6.5 (#785) 2024-02-28 18:45:49 +02:00
github-actions[bot] 607abcbd86 [CI Skip] bump/beta 3.6.5-6-x
skip-checks: true
2024-02-17 13:44:01 +00:00
Tarik Gul b2126c3db6 chore(yarn): update yarn to 4.1.0 (#783) 2024-02-17 15:42:40 +02:00
github-actions[bot] 3313bd38ca [CI Skip] bump/beta 3.6.5-5-x
skip-checks: true
2024-02-17 01:57:34 +00:00
Tarik Gul 062f9f37f7 ci: add user (TarikGul) to auto-approve (#784) 2024-02-17 03:56:11 +02:00
github-actions[bot] 143cce1cb8 [CI Skip] bump/beta 3.6.5-4-x
skip-checks: true
2024-01-12 10:45:05 +00:00
Jaco 9ec68688d6 Adjust Vue peerDependency, >= 2.7 for defineComponent (#782)
* Adjust Vue peerDependency, >= 2.7 for defineComponent

* Bump to dev dep to vue 2.7.16
2024-01-12 12:43:40 +02:00
github-actions[bot] 6670bf75f6 [CI Skip] bump/beta 3.6.5-3-x
skip-checks: true
2024-01-08 13:06:43 +00:00
Jaco d2029bdf5b 2024 (#781) 2024-01-08 15:05:20 +02:00
github-actions[bot] 64c4abe645 [CI Skip] bump/beta 3.6.5-2-x
skip-checks: true
2023-12-19 08:57:33 +00:00
Jaco c3b826c3a4 Bump dev w/ packageDetect adjustments (#779) 2023-12-19 10:56:09 +02:00
github-actions[bot] 90a87ebb5b [CI Skip] bump/beta 3.6.5-1-x
skip-checks: true
2023-12-19 06:17:09 +00:00
Jaco 3937b36260 Bump deps (#778) 2023-12-19 08:15:36 +02:00
github-actions[bot] 8557dfd53a [CI Skip] bump/beta 3.6.5-0-x
skip-checks: true
2023-12-18 08:26:32 +00:00
Jaco aef29db995 Bump yarn berry, bump deps (#777) 2023-12-18 10:25:09 +02:00
github-actions[bot] 8d762218b4 [CI Skip] release/stable 3.6.4
skip-checks: true
2023-11-18 08:38:49 +00:00
Jaco 63be1a965b 3.6.4 (#776) 2023-11-18 10:37:12 +02:00
github-actions[bot] 0837376d00 [CI Skip] bump/beta 3.6.4-0-x
skip-checks: true
2023-10-15 10:43:44 +00:00
Jaco 1fbb4d67bb Bump TS (#775) 2023-10-15 13:41:12 +03:00
github-actions[bot] dd83ad69a9 [CI Skip] release/stable 3.6.3
skip-checks: true
2023-09-15 06:58:37 +00:00
Jaco ff73cc86fb 3.6.3 (#774) 2023-09-15 09:56:27 +03:00
github-actions[bot] c93438754f [CI Skip] release/stable 3.6.2
skip-checks: true
2023-08-23 10:37:54 +00:00
Jaco 3b542acc47 3.6.2 (#773) 2023-08-23 13:35:47 +03:00
github-actions[bot] 473b455373 [CI Skip] bump/beta 3.6.2-0-x
skip-checks: true
2023-08-22 11:40:56 +00:00
Jeeyong Um 4ecdd4d803 Fix outdated links in README.md (#772) 2023-08-22 14:38:40 +03:00
github-actions[bot] 9a67ff2fc1 [CI Skip] release/stable 3.6.1
skip-checks: true
2023-08-21 07:48:06 +00:00
Jaco eebe754c92 3.6.1 (#771) 2023-08-21 10:45:53 +03:00
github-actions[bot] f285f2ff58 [CI Skip] bump/beta 3.5.2-3-x
skip-checks: true
2023-08-20 06:49:25 +00:00
Jaco cf28882540 Bump deps (#770) 2023-08-20 09:47:09 +03:00
github-actions[bot] fc08babdaf [CI Skip] bump/beta 3.5.2-2-x
skip-checks: true
2023-08-18 07:24:30 +00:00
Jaco 666fc8f702 Bump deps (#769) 2023-08-18 10:22:13 +03:00
github-actions[bot] d2a28ca315 [CI Skip] bump/beta 3.5.2-1-x
skip-checks: true
2023-07-06 07:46:28 +00:00
Jaco 67e867a72e Bump deps (#768)
* Bump deps

* Fix build
2023-07-06 10:44:14 +03:00
github-actions[bot] abe4e5b340 [CI Skip] bump/beta 3.5.2-0-x
skip-checks: true
2023-06-18 08:40:11 +00:00
Jaco a5fdaf1f1c Bump deps (#767) 2023-06-18 11:37:13 +03:00
github-actions[bot] 3b7b85e835 [CI Skip] release/stable 3.5.1
skip-checks: true
2023-06-11 14:32:41 +00:00
Jaco 6119c57d46 3.5.1 (#766) 2023-06-11 17:30:29 +03:00
github-actions[bot] 6279b3b926 [CI Skip] bump/beta 3.4.3-0-x
skip-checks: true
2023-06-11 07:19:04 +00:00
Jaco 50b4e2bd07 Adjust object index typings (#765)
* Adjust object index typings

* CHANGELOG

* Bump common
2023-06-11 10:16:28 +03:00
github-actions[bot] 252a8a8554 [CI Skip] release/stable 3.4.2
skip-checks: true
2023-06-05 04:55:41 +00:00
Jaco 83fd6ad0c0 3.4.2 (#764)
* 3.4.2

* Correct CHANGELOG
2023-06-05 07:53:12 +03:00
github-actions[bot] 420f8f095b [CI Skip] bump/beta 3.4.2-3-x
skip-checks: true
2023-06-02 10:22:02 +00:00
Jaco 8a3ee3588d Bump deps (w/ TS 5.1) (#763) 2023-06-02 13:19:08 +03:00
github-actions[bot] 62e5e5e23e [CI Skip] bump/beta 3.4.2-2-x
skip-checks: true
2023-05-25 07:27:44 +00:00
Jaco a456a4c9df jg-bump-deps (#762) 2023-05-25 10:25:30 +03:00
github-actions[bot] 9a9c1f50ee [CI Skip] bump/beta 3.4.2-1-x
skip-checks: true
2023-05-21 09:41:53 +00:00
Jaco 7ad8333f2e Bump dev (w/ eslint config adj) (#761) 2023-05-21 12:39:43 +03:00
github-actions[bot] ec99102a78 [CI Skip] bump/beta 3.4.2-0-x
skip-checks: true
2023-05-18 09:13:06 +00:00
Jaco 36c7da623b Adjust tsconfig usage (#760) 2023-05-18 12:10:56 +03:00
github-actions[bot] 7bb148eea9 [CI Skip] release/stable 3.4.1
skip-checks: true
2023-05-13 08:55:51 +00:00
Jaco ee039545be 3.4.1 (#759) 2023-05-13 11:53:20 +03:00
github-actions[bot] e15651ac9c [CI Skip] bump/beta 3.3.2-0-x
skip-checks: true
2023-05-09 06:06:40 +00:00
Jaco f92e276a0d Bump deps (#758) 2023-05-09 09:04:24 +03:00
github-actions[bot] a51ef7bccc [CI Skip] release/stable 3.3.1
skip-checks: true
2023-05-07 11:13:05 +00:00
Jaco bf8a295d64 3.3.1 (#757) 2023-05-07 14:10:54 +03:00
github-actions[bot] d2bbf6bb0e [CI Skip] bump/beta 3.2.3-1-x
skip-checks: true
2023-05-05 06:31:40 +00:00
Jaco 60cc5fbd4b Bump deps & adjust CHANGELOG (#756) 2023-05-05 09:29:17 +03:00
github-actions[bot] dae851297b [CI Skip] bump/beta 3.2.3-0-x
skip-checks: true
2023-05-05 06:00:24 +00:00
Zenandgithub-actions[bot] fa9eef757a feat: adapt Vue 3.x (#755)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-05-05 08:57:35 +03:00
github-actions[bot] 84c36c5c68 [CI Skip] release/stable 3.2.2
skip-checks: true
2023-04-29 06:49:06 +00:00
Jaco 4a71023452 3.2.2 (#754) 2023-04-29 09:47:02 +03:00
github-actions[bot] 359230bfb3 [CI Skip] bump/beta 3.2.2-0-x
skip-checks: true
2023-04-24 10:50:36 +00:00
Jaco 19fa38e441 Update dependencies (w/ react-is as peer) (#753)
* Update dependencies (w/ react-is as peer)

* Update styled-components deps
2023-04-24 13:48:24 +03:00
github-actions[bot] e6105e19a5 [CI Skip] release/stable 3.2.1
skip-checks: true
2023-04-22 09:32:36 +00:00
Jaco e8b9f2aafc 3.2.1 (#752) 2023-04-22 12:30:25 +03:00
github-actions[bot] bcdd6e42ec [CI Skip] bump/beta 3.1.5-4-x
skip-checks: true
2023-04-14 09:22:19 +00:00
Jaco b14dc3bcc3 Bump deps (#751) 2023-04-14 12:20:04 +03:00
github-actions[bot] 798a9fb453 [CI Skip] bump/beta 3.1.5-3-x
skip-checks: true
2023-04-10 07:23:33 +00:00
Jaco c81c08271b Bump dev (w/ eslint adjustments) (#750) 2023-04-10 10:21:15 +03:00
github-actions[bot] 0957599bdb [CI Skip] bump/beta 3.1.5-2-x
skip-checks: true
2023-04-08 07:06:11 +00:00
Jaco 4ec2f6730b Bump TypeScript (#749) 2023-04-08 10:03:58 +03:00
github-actions[bot] 701439d6bc [CI Skip] bump/beta 3.1.5-1-x
skip-checks: true
2023-04-04 05:31:11 +00:00
Jaco cade4a9051 Update lock wf (#748) 2023-04-04 08:27:57 +03:00
github-actions[bot] d4bec36fa7 [CI Skip] bump/beta 3.1.5-0-x
skip-checks: true
2023-04-02 08:54:33 +00:00
Jaco b83073f588 Move type-only imports (w/ verbatimModuleSyntax) (#746) 2023-04-02 11:51:38 +03:00
github-actions[bot] f36a80ad8b [CI Skip] release/stable 3.1.4
skip-checks: true
2023-04-01 07:31:31 +00:00
Jaco e2f16b8e2e 3.1.4 (#745) 2023-04-01 10:29:22 +03:00
github-actions[bot] 8470b347a4 [CI Skip] bump/beta 3.1.4-0-x
skip-checks: true
2023-03-25 15:43:07 +00:00
Jaco 24f1cf7e17 Add repo dev req. for Node.js (#744) 2023-03-25 17:40:48 +02:00
github-actions[bot] aac0aa43d0 [CI Skip] release/stable 3.1.3
skip-checks: true
2023-03-25 10:59:42 +00:00
Jaco 2c5db364ba Bump dev (w/ some node:test adjustments) (#743)
* Bump dev (w/ some node:test adjustments)

* Adjust EventEmitter import

* 3.1.3
2023-03-25 12:57:09 +02:00
github-actions[bot] bbf77d7b84 [CI Skip] release/stable 3.1.2
skip-checks: true
2023-03-25 08:06:33 +00:00
Jaco 3250187fbb 3.1.2 (#742)
* 3.1.2

* Remove assert usage

* Unsubscribe on open observable

* Attempt a clear

* Final attempt before skip

* .skip for problematic
2023-03-25 10:04:20 +02:00
github-actions[bot] e3168c8231 [CI Skip] bump/beta 3.1.2-1-x
skip-checks: true
2023-03-23 10:45:06 +00:00
Jaco 6d98c56e7a Small adjustments to icon calculations (#741)
* Small adjustments to icon calculations

* Keep original naming
2023-03-23 12:42:16 +02:00
github-actions[bot] bf986c079f [CI Skip] bump/beta 3.1.2-0-x
skip-checks: true
2023-03-23 09:09:10 +00:00
Jaco f0d21fa985 Cater for Ethereum-compatible multisig addresses (#740) 2023-03-23 11:06:46 +02:00
github-actions[bot] aad690bfda [CI Skip] release/stable 3.1.1
skip-checks: true
2023-03-19 08:12:45 +00:00
Jaco 6e30befa0f 3.1.1 (#739) 2023-03-19 10:10:29 +02:00
github-actions[bot] 4217c67acd [CI Skip] bump/beta 3.0.3-7-x
skip-checks: true
2023-03-18 10:42:30 +00:00
Jaco b181da4919 Bump dev deps (#738) 2023-03-18 12:39:38 +02:00
github-actions[bot] 6907d0c30a [CI Skip] bump/beta 3.0.3-6-x
skip-checks: true
2023-03-17 06:00:24 +00:00
Jaco 22c8d7ac0c Bump to TS 5.0 (#737)
* Bump to TS 5.0

* Adjust global dev-test imports
2023-03-17 07:58:03 +02:00
github-actions[bot] a3a918b2cb [CI Skip] bump/beta 3.0.3-5-x
skip-checks: true
2023-03-15 15:16:52 +00:00
Jaco 656be6550a Bump dev (#736)
* Bump dev

* Adjust types ref
2023-03-15 17:14:16 +02:00
github-actions[bot] fa8697331b [CI Skip] bump/beta 3.0.3-4-x
skip-checks: true
2023-03-14 10:55:42 +00:00
Jaco e392d52924 Remove stale workflow (#735) 2023-03-14 12:53:13 +02:00
github-actions[bot] 975b0a9fa2 [CI Skip] bump/beta 3.0.3-3-x
skip-checks: true
2023-03-13 12:58:31 +00:00
Jaco 8bd9b7b908 Adjust default.ts exports (#734) 2023-03-13 14:56:04 +02:00
github-actions[bot] 1a230f95f6 [CI Skip] bump/beta 3.0.3-2-x
skip-checks: true
2023-03-13 10:57:53 +00:00
Jaco c1b3cc87ee Swap from color to colord for color manipulation (#733) 2023-03-13 12:55:30 +02:00
github-actions[bot] e1f96f1fcf [CI Skip] bump/beta 3.0.3-1-x
skip-checks: true
2023-03-12 11:32:18 +00:00
Jaco 45b330aa90 Swap to using defineComponent for Vue (req. 2.7+) (#732)
* Swap to using definedComponent for Vue (req. 2.7+)

* Adjust

* Adjust

* CHANGELOG
2023-03-12 13:29:49 +02:00
github-actions[bot] 172051cedc [CI Skip] bump/beta 3.0.3-0-x
skip-checks: true
2023-03-12 10:03:45 +00:00
Jaco 0310baa9ee Bump dev (#731)
* Bump dev

* Adjust dev/node/test/node.d.ts imports

* Node resolution

* Revert dev/node/test/node.d.ts import
2023-03-12 12:01:20 +02:00
github-actions[bot] 78029388e5 [CI Skip] release/stable 3.0.2
skip-checks: true
2023-03-11 09:25:49 +00:00
Jaco b9b1b296a3 3.0.2 (#730) 2023-03-11 11:23:35 +02:00
github-actions[bot] 32086c0fc7 [CI Skip] bump/beta 3.0.2-4-x
skip-checks: true
2023-03-10 06:23:20 +00:00
Jaco 01d7661a5f Update GH actions (#729) 2023-03-10 08:19:48 +02:00
github-actions[bot] 6e97f75824 [CI Skip] bump/beta 3.0.2-3-x
skip-checks: true
2023-03-09 14:56:44 +00:00
Jaco 86281dca3a Align tsconfig to allow moduleResolution: nodenext (#728)
* Align tsconfig to allow moduleResolution: nodenext

* Adjust

* Default target flag
2023-03-09 16:53:32 +02:00
github-actions[bot] faed5b1474 [CI Skip] bump/beta 3.0.2-2-x
skip-checks: true
2023-03-09 08:46:02 +00:00
Jaco 0e0de28da4 Use .js imports in src (#727)
* Use .js in src imports

* Bump dev
2023-03-09 10:43:31 +02:00
github-actions[bot] 2e99e0154f [CI Skip] bump/beta 3.0.2-1-x
skip-checks: true
2023-03-06 12:12:52 +00:00
Jaco 0cbf187979 Bump dev deps (#726) 2023-03-06 14:10:28 +02:00
github-actions[bot] 0aee857525 [CI Skip] bump/beta 3.0.2-0-x
skip-checks: true
2023-03-05 11:40:46 +00:00
Jaco 306f30d2b5 Update dev 2023-03-05 13:38:19 +02:00
github-actions[bot] 2259e05088 [CI Skip] release/stable 3.0.1
skip-checks: true
2023-03-05 09:04:53 +00:00
Jaco 581a360226 3.0.1 (#725) 2023-03-05 11:02:25 +02:00
github-actions[bot] a3b5206107 [CI Skip] bump/beta 2.12.2-5-x
skip-checks: true
2023-03-03 09:24:35 +00:00
Jaco dcef4deb2a Bump dev & update gh workflows (#724) 2023-03-03 11:21:34 +02:00
github-actions[bot] 6629fc6a11 [CI Skip] bump/beta 2.12.2-4-x
skip-checks: true
2023-03-01 12:08:54 +00:00
Jaco 0173205f4b Add wf continue-on-error: true (#723) 2023-03-01 14:06:14 +02:00
github-actions[bot] 001793c937 [CI Skip] bump/beta 2.12.2-3-x
skip-checks: true
2023-02-27 11:23:03 +00:00
Jaco 583f3416a6 Remove @polkadot/ui-assets package (#722) 2023-02-27 13:20:27 +02:00
github-actions[bot] 7913cfda05 [CI Skip] bump/beta 2.12.2-2-x
skip-checks: true
2023-02-25 10:12:23 +00:00
Jaco 9b7f4bf62f Adjust tests for node:test env (#721) 2023-02-25 12:09:05 +02:00
github-actions[bot] 9b3785b8f6 [CI Skip] bump/beta 2.12.2-1-x
skip-checks: true
2023-02-22 07:40:37 +00:00
Jaco 83c21fc185 Bump deps (#720) 2023-02-22 09:37:37 +02:00
github-actions[bot] 4baccadf26 [CI Skip] bump/beta 2.12.2-0-x
skip-checks: true
2023-02-20 10:45:10 +00:00
Jaco e83da1449d Swap Jest test runner (#719) 2023-02-20 12:42:11 +02:00
github-actions[bot] c488094732 [CI Skip] release/stable 2.12.1
skip-checks: true
2023-02-20 08:48:11 +00:00
Jaco c25fefa16f 2.12.1 (#718) 2023-02-20 10:45:38 +02:00
github-actions[bot] 6ff0fd7e9b [CI Skip] release/stable 2.11.3
skip-checks: true
2023-02-19 13:40:37 +00:00
Jaco 864efca1e6 2.11.3 (#717)
* 2.11.3

* Fix lint

* Update polkadot-dev-run-test

* Adjust jest setupEnv
2023-02-19 15:38:09 +02:00
github-actions[bot] 4d2fe495ed [CI Skip] release/stable 2.11.2
skip-checks: true
2023-02-15 09:56:04 +00:00
Jaco 067b93477c 2.11.2 (#716) 2023-02-15 11:53:40 +02:00
github-actions[bot] 36c2e538cb [CI Skip] bump/beta 2.11.2-4-x
skip-checks: true
2023-02-15 07:12:38 +00:00
Jaco 08379c6966 Fix CI release workflow (#715) 2023-02-15 09:09:55 +02:00
Jaco 5b17f06915 Use latest LTS for CI scripts (#714) 2023-02-14 10:46:41 +02:00
github-actions[bot] b0355e13d0 [CI Skip] bump/beta 2.11.2-3-x
skip-checks: true
2023-02-05 12:08:34 +00:00
Jaco 71f13181bc Bump dev (#713) 2023-02-05 14:05:57 +02:00
github-actions[bot] f2177b4acf [CI Skip] bump/beta 2.11.2-2-x
skip-checks: true
2023-02-05 07:54:45 +00:00
Jaco 8c2802d5b7 Bump dev (#712) 2023-02-05 09:51:54 +02:00
github-actions[bot] 40fa4d5731 [CI Skip] bump/beta 2.11.2-1-x
skip-checks: true
2023-02-03 08:48:09 +00:00
Jaco b6c628b6bd Bump deps (incl. TS) (#711) 2023-02-03 10:45:11 +02:00
github-actions[bot] a0ddcdbbce [CI Skip] bump/beta 2.11.2-0-x
skip-checks: true
2023-01-28 14:11:45 +00:00
omahs e3f329b515 Fix: typos (#709)
Fix: typos
2023-01-28 16:08:57 +02:00
github-actions[bot] 3268961060 [CI Skip] release/stable 2.11.1
skip-checks: true
2023-01-28 08:00:13 +00:00
Jaco 11926fc451 2.11.1 (#708) 2023-01-28 09:57:13 +02:00
Jaco 0e6205b43c Add setting for auto extension metadata upgrades (#704) 2023-01-28 09:51:37 +02:00
Jaco 0c413f3fb9 Adjust styled-component injection (#707)
* Adjust styled-component injection

* Adjust
2023-01-25 13:02:06 +02:00
github-actions[bot] d607b04680 [CI Skip] bump/beta 2.10.2-1-x
skip-checks: true
2023-01-25 07:35:22 +00:00
Jaco a52022cc56 Bump GH actions (#706) 2023-01-25 09:32:50 +02:00
github-actions[bot] 2b06c33819 [CI Skip] bump/beta 2.10.2-0-x
skip-checks: true
2023-01-22 07:08:53 +00:00
Jaco 285f600753 Bump dev (& remove duplicated files from build) (#705)
* Bump dev (& remove duplicated files from build)

* Bump
2023-01-22 09:06:31 +02:00
github-actions[bot] c2cbde844e [CI Skip] release/stable 2.10.1
skip-checks: true
2023-01-15 19:30:16 +00:00
Jaco 7fa98ef5a1 2.10.1 (#703) 2023-01-15 21:27:52 +02:00
github-actions[bot] 9b4845a6d4 [CI Skip] release/stable 2.9.15
skip-checks: true
2023-01-08 09:01:05 +00:00
Jaco 94aa5cdc38 2.9.15 (#702) 2023-01-08 10:58:48 +02:00
github-actions[bot] 906f520b60 [CI Skip] bump/beta 2.9.15-6-x
skip-checks: true
2023-01-01 08:23:47 +00:00
Jaco b8c2d1a838 Update headers for 2023 (#701) 2023-01-01 10:21:18 +02:00
github-actions[bot] 5d9f10451c [CI Skip] bump/beta 2.9.15-5-x
skip-checks: true
2022-12-26 07:51:16 +00:00
Jaco d845f4177d Bump dev (#700) 2022-12-26 09:48:45 +02:00
github-actions[bot] 2ad5de6208 [CI Skip] bump/beta 2.9.15-4-x
skip-checks: true
2022-12-14 06:33:31 +00:00
Jaco b0b8424c11 Bump dev (w/ deprecation warnings) (#699) 2022-12-14 08:31:06 +02:00
github-actions[bot] 7f418f77e1 [CI Skip] bump/beta 2.9.15-3-x
skip-checks: true
2022-12-13 07:04:01 +00:00
Jaco 02a0ea3d7d Adjust TS target (#698) 2022-12-13 09:01:39 +02:00
github-actions[bot] cd074efa3b [CI Skip] bump/beta 2.9.15-2-x
skip-checks: true
2022-12-08 07:00:50 +00:00
Jaco 1e4d1087d2 Remove CC (#697) 2022-12-08 08:57:53 +02:00
github-actions[bot] 0a23f2aa4b [CI Skip] bump/beta 2.9.15-1-x
skip-checks: true
2022-12-08 06:21:04 +00:00
Jaco 7963a50fa7 Bump TS (#696) 2022-12-08 08:18:24 +02:00
github-actions[bot] 4c319f5467 [CI Skip] bump/beta 2.9.15-0-x
skip-checks: true
2022-12-07 13:47:44 +00:00
Jaco 294aae12b4 Update token retrieval (#695) 2022-12-07 15:45:16 +02:00
github-actions[bot] e68bc5f550 [CI Skip] release/stable 2.9.14
skip-checks: true
2022-12-05 07:03:58 +00:00
Jaco 1b3b04e087 2.9.14 (#694)
* 2.9.14

* 2.9.14
2022-12-05 09:01:01 +02:00
github-actions[bot] 7d9fb90711 [CI Skip] bump/beta 2.9.14-0-x
skip-checks: true
2022-11-20 09:36:33 +00:00
Jaco b54f95c287 jg-bump-ts (#692) 2022-11-20 11:34:11 +02:00
github-actions[bot] eb76cd0dc4 [CI Skip] release/stable 2.9.13
skip-checks: true
2022-11-14 11:17:44 +00:00
Jaco 39d76709d3 2.9.13 (#691) 2022-11-14 13:15:25 +02:00
github-actions[bot] 74304ed1d0 [CI Skip] bump/beta 2.9.13-1-x
skip-checks: true
2022-11-13 09:47:40 +00:00
Jaco afe5ba619e Bump deps (#689) 2022-11-13 11:44:29 +02:00
github-actions[bot] fdf756d56b [CI Skip] bump/beta 2.9.13-0-x
skip-checks: true
2022-11-01 07:40:52 +00:00
Jaco 9157617048 Bump deps (#688) 2022-11-01 09:37:52 +02:00
github-actions[bot] 4ecf6482d2 [CI Skip] release/stable 2.9.12
skip-checks: true
2022-10-18 09:51:04 +00:00
Jaco 5d2444c232 2.9.12 (#686) 2022-10-18 12:48:47 +03:00
github-actions[bot] 14d661a42c [CI Skip] release/stable 2.9.11
skip-checks: true
2022-10-07 05:02:34 +00:00
Jaco 253c17a24b 2.9.11 (#684) 2022-10-07 07:59:58 +03:00
github-actions[bot] 6a804535e6 [CI Skip] bump/beta 2.9.11-0-x
skip-checks: true
2022-09-28 10:48:42 +00:00
Jaco e0d75e1237 Bump TS (#683) 2022-09-28 13:46:13 +03:00
github-actions[bot] 57d9576790 [CI Skip] release/stable 2.9.10
skip-checks: true
2022-09-24 06:08:19 +00:00
Jaco 72e31ec8da 2.9.10 (#682) 2022-09-24 09:05:33 +03:00
github-actions[bot] 6bcc9de004 [CI Skip] release/stable 2.9.9
skip-checks: true
2022-09-17 07:15:13 +00:00
Jaco e141b02e00 2.9.9 (#681) 2022-09-17 10:12:57 +03:00
github-actions[bot] 65320a36d1 [CI Skip] bump/beta 2.9.9-0-x
skip-checks: true
2022-09-09 06:02:53 +00:00
Jaco 6b5b09464c Bump deps (#680) 2022-09-09 09:00:27 +03:00
github-actions[bot] 2f0f56ea70 [CI Skip] release/stable 2.9.8
skip-checks: true
2022-09-02 10:04:17 +00:00
Jaco a307306cf6 2.9.8 (#679) 2022-09-02 13:01:54 +03:00
github-actions[bot] 88f51bd262 [CI Skip] bump/beta 2.9.8-1-x
skip-checks: true
2022-08-26 15:00:05 +00:00
Jaco eb14742dfc Pin Github actions (#678) 2022-08-26 17:56:53 +03:00
github-actions[bot] de51c90a23 [CI Skip] bump/beta 2.9.8-0-x
skip-checks: true
2022-08-26 12:57:39 +00:00
Jaco 9f2bfabaac Bump TS (#677) 2022-08-26 15:54:51 +03:00
github-actions[bot] 0ecb8093a5 [CI Skip] release/stable 2.9.7
skip-checks: true
2022-08-24 14:19:51 +00:00
Jaco 2f8276b04c 2.9.7 (#676) 2022-08-24 17:17:35 +03:00
github-actions[bot] 1752b051cd [CI Skip] release/stable 2.9.6
skip-checks: true
2022-08-21 06:02:55 +00:00
Jaco 4d73b5e9c2 2.9.6 (#675) 2022-08-21 09:00:39 +03:00
github-actions[bot] fda1826308 [CI Skip] release/stable 2.9.5
skip-checks: true
2022-08-13 08:16:49 +00:00
Jaco c66e4a3bf4 2.9.5 (#674)
* 2.9.5

* Bumps
2022-08-13 11:14:37 +03:00
github-actions[bot] 9adae7c2bf [CI Skip] release/stable 2.9.4
skip-checks: true
2022-08-06 06:00:21 +00:00
Jaco 4f20237240 2.9.4 (#673) 2022-08-06 08:58:01 +03:00
github-actions[bot] a7a3a559ea [CI Skip] release/stable 2.9.3
skip-checks: true
2022-07-30 04:41:07 +00:00
Jaco a7228422e4 2.9.3 (#671) 2022-07-30 07:38:44 +03:00
github-actions[bot] 6a13c62eab [CI Skip] release/stable 2.9.2
skip-checks: true
2022-07-24 08:43:45 +00:00
Jaco 874a7f17ff 2.9.2 (#670) 2022-07-24 11:40:50 +03:00
github-actions[bot] b008094f30 [CI Skip] bump/beta 2.9.2-0-x
skip-checks: true
2022-07-23 13:16:10 +00:00
Viki Val 5396b8f73f 🐛 identicon has isAlternative both as data and prop (#668)
* 🐛 identicon has isAlternative both as data and prop

* 🏷️ Identicon has isAlternativeIcon as data
2022-07-23 16:13:11 +03:00
github-actions[bot] 96b0470ee7 [CI Skip] release/stable 2.9.1
skip-checks: true
2022-07-21 07:17:27 +00:00
Jaco 0a5bea1d4a 2.9.1 (#669) 2022-07-21 10:14:49 +03:00
github-actions[bot] 573f92f00d [CI Skip] bump/beta 2.8.3-2-x
skip-checks: true
2022-07-12 13:40:18 +00:00
Jaco d0bac4cfb1 Bump deps (#667) 2022-07-12 16:37:53 +03:00
github-actions[bot] e00e1b8d6d [CI Skip] bump/beta 2.8.3-1-x
skip-checks: true
2022-07-12 04:58:50 +00:00
Jaco 9705f1de4a Bump deps (#666) 2022-07-12 07:56:03 +03:00
github-actions[bot] bd849e317a [CI Skip] bump/beta 2.8.3-0-x
skip-checks: true
2022-07-11 05:15:58 +00:00
Jaco 69754474f2 Bump dev (#665) 2022-07-11 08:13:04 +03:00
github-actions[bot] 994fdeed5d [CI Skip] release/stable 2.8.2
skip-checks: true
2022-07-10 09:07:57 +00:00
Jaco e1b7f8cdcd 2.8.2 (#664)
* 2.8.2

* Bump dev
2022-07-10 12:05:27 +03:00
github-actions[bot] 0b2e8e1bbe [CI Skip] release/stable 2.8.1
skip-checks: true
2022-07-09 07:28:32 +00:00
Jaco 951a745d0f 2.8.1 (#663)
* 2.8.1

* trigger
2022-07-09 10:26:03 +03:00
github-actions[bot] c9afdacb89 [CI Skip] bump/beta 2.7.3-0-x
skip-checks: true
2022-07-06 11:05:03 +00:00
Jaco f909cf9bbf Adjust issue template (#662)
* Adjust issue template

* isolated export
2022-07-06 14:02:23 +03:00
github-actions[bot] a1ea61688e [CI Skip] release/stable 2.7.2
skip-checks: true
2022-07-04 06:43:00 +00:00
Jaco a3b0e3607f 2.7.2 (#660) 2022-07-04 09:40:43 +03:00
github-actions[bot] c802f71617 [CI Skip] release/stable 2.7.1
skip-checks: true
2022-07-01 17:51:56 +00:00
Jaco 525ace3f52 2.7.1 (#659) 2022-07-01 20:49:24 +03:00
Derek Colley 42f1b3a6c3 Remove redundant div wrappers in vue-identicon (#643)
* Remove redundant `div` wrappers in vue-identicon

* Delete console.debug statememt

* remove redundant declarations

* fix lint errors

* refactor for codeclimate
2022-07-01 18:06:15 +03:00
github-actions[bot] 5ce56670d1 [CI Skip] release/stable 2.6.2
skip-checks: true
2022-06-25 06:02:24 +00:00
Jaco 414392e69b 2.6.2 (#657)
* 2.6.2

* CHANGELOG
2022-06-25 08:59:36 +03:00
github-actions[bot] ae5b64a75f [CI Skip] bump/beta 2.6.2-0-x
skip-checks: true
2022-06-23 14:27:01 +00:00
Jaco f2077dcab2 Bump dev deps (#656) 2022-06-23 17:24:01 +03:00
github-actions[bot] 75d03bb15a [CI Skip] release/stable 2.6.1
skip-checks: true
2022-06-23 09:01:27 +00:00
Jaco 269ec7adb7 2.6.1 (#655) 2022-06-23 11:58:22 +03:00
github-actions[bot] 03e6974c25 [CI Skip] release/beta 2.5.2-0
skip-checks: true
2022-06-21 04:49:38 +00:00
Jaco a31c524878 Bump TS to 4.7.4 (#654) 2022-06-21 07:47:19 +03:00
231 changed files with 9807 additions and 14390 deletions
-27
View File
@@ -1,27 +0,0 @@
2
0.57.20.57.3
0.66.2
0.66.3
0.71.2
0.71.3
0.84.2
0.84.3
0.85.2
0.85.3
0.85.4
0.85.5
0.86.2
0.86.3
0.86.4
0.86.5
0.86.6
0.86.7
0.87.2
0.87.3
0.87.4
0.87.5
0.87.6
0.87.7
0.89.2
0.89.3
-17
View File
@@ -1,17 +0,0 @@
checks:
argument-count:
config:
threshold: 5
method-complexity:
config:
threshold: 7
method-count:
config:
threshold: 25
method-lines:
config:
threshold: 30
exclude_patterns:
- "**/*.spec.js"
- "**/*.spec.ts"
-19
View File
@@ -1,19 +0,0 @@
// Copyright 2017-2022 @polkadot/ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
const base = require('@polkadot/dev/config/eslint.cjs');
module.exports = {
...base,
ignorePatterns: [
...base.ignorePatterns,
'jest/**/*',
'**/*.d.ts'
],
parserOptions: {
...base.parserOptions,
project: [
'./tsconfig.eslint.json'
]
}
};
+49 -13
View File
@@ -1,50 +1,86 @@
<!--
For general support, howto, coding and bundling questions, please use the Substrate & Polkadot StackExchange at https://substrate.stackexchange.com/ and get other ecosystem developers involved. This issues in this repository are meant for the tracking of feature requests and bug reports.
For general support, howto, coding and bundling questions, please
use the Substrate & Polkadot StackExchange at
While all issues are looked at non-bug and non-features would take quite a bit longer to get to and may yield less than satisfactory responses in this format.
https://substrate.stackexchange.com/
Additionally, please ensure you have done a search on the existing and closed issues before logging a new request. This saves time on all sides.
and get other ecosystem developers involved. This issues in this
repository are meant for the tracking of feature requests and bug
reports.
While all issues are looked at non-bug and non-features would take
quite a bit longer to get to and may yield less than satisfactory
responses in this format.
Additionally, please ensure you have done a search on the existing
and closed issues before logging a new request. This saves time on
all sides.
-->
* **I'm submitting a ...**
<!--- Try and classify your actual report -->
<!---
REQUIRED:
Classify the type of report your are submitting
-->
- [ ] Bug report
- [ ] Feature request
- [ ] Support request (please bear the comments above in mind)
- [ ] Support request
- [ ] Other
* **What is the current behavior and expected behavior?**
<!--- If you're describing a bug, tell us what should happen -->
<!--- If you're suggesting a change/improvement, tell us how it should work -->
<!---
REQUIRED:
If you're describing a bug, tell us what should happen. If you're
suggesting a change/improvement, tell us how it should work.
-->
* **What is the motivation for changing the behavior?**
<!--- Not obligatory, but suggest a motivation for the request -->
<!--- or ideas how to implement the addition or change -->
<!---
OPTIONAL:
Suggest a motivation for the request or ideas how to implement the
addition or change
-->
* **Please tell us about your environment:**
<!--- Include as many relevant details about the environment you experienced the issue in -->
<!--- Also snsure that you have tested against the latest stable releases if a bug -->
<!---
REQUIRED:
Include as many relevant details about the environment in which you
experienced the issue. Also ensure that you have tested against the
latest stable releases if you believe this to be a bug
-->
- Version:
- Environment:
- [ ] Node.js
- [ ] Browser
- [ ] Other (limited support for other environments available)
- [ ] Other (limited support for other environments)
- Language:
- [ ] JavaScript
- [ ] TypeScript
- [ ] TypeScript (include tsc --version)
- [ ] Other
+2 -2
View File
@@ -9,8 +9,8 @@ jobs:
if: "! startsWith(github.event.head_commit.message, '[CI Skip]') && (!github.event.pull_request || github.event.pull_request.head.repo.full_name == github.repository)"
runs-on: ubuntu-latest
steps:
- uses: jacogr/action-approve@master
- uses: jacogr/action-approve@795afd1dd096a2071d7ec98740661af4e853b7da
with:
authors: jacogr
authors: jacogr, TarikGul
labels: -auto
token: ${{ secrets.GH_PAT_BOT }}
+2 -2
View File
@@ -8,9 +8,9 @@ jobs:
merge:
runs-on: ubuntu-latest
steps:
- uses: jacogr/action-merge@master
- uses: jacogr/action-merge@d2d64b4545acd93b0a9575177d3d215ae3f92029
with:
checks: build,lint,test
checks: pr (build),pr (lint),pr (test)
labels: -auto
strategy: squash
token: ${{ secrets.GH_PAT_BOT }}
+5 -5
View File
@@ -10,16 +10,16 @@ jobs:
env:
YARN_ENABLE_SCRIPTS: false
steps:
- uses: dessant/lock-threads@v2
- uses: dessant/lock-threads@c1b35aecc5cdb1a34539d14196df55838bb2f836
with:
github-token: ${{ secrets.GH_PAT_BOT }}
issue-lock-inactive-days: '7'
issue-lock-comment: >
issue-inactive-days: '7'
issue-comment: >
This thread has been automatically locked since there has not been
any recent activity after it was closed. Please open a new issue
if you think you have a related problem or query.
pr-lock-inactive-days: '2'
pr-lock-comment: >
pr-inactive-days: '2'
pr-comment: >
This pull request has been automatically locked since there
has not been any recent activity after it was closed.
Please open a new issue for related bugs.
+6 -3
View File
@@ -3,16 +3,19 @@ on: [pull_request]
jobs:
pr:
continue-on-error: true
strategy:
matrix:
step: ['lint', 'test', 'build']
name: ${{ matrix.step }}
runs-on: ubuntu-latest
env:
YARN_ENABLE_SCRIPTS: false
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 'lts/*'
- name: ${{ matrix.step }}
run: |
yarn install --immutable | grep -v 'YN0013'
yarn install --immutable
yarn ${{ matrix.step }}
+8 -6
View File
@@ -10,20 +10,22 @@ jobs:
strategy:
matrix:
step: ['build:release']
name: ${{ matrix.step }}
runs-on: ubuntu-latest
env:
YARN_ENABLE_SCRIPTS: false
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
GH_PAT: ${{ secrets.GH_PAT }}
GH_RELEASE_GITHUB_API_TOKEN: ${{ secrets.GH_PAT }}
GH_PAT: ${{ secrets.GH_PAT_BOT }}
GH_RELEASE_GITHUB_API_TOKEN: ${{ secrets.GH_PAT_BOT }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GH_PAT }}
token: ${{ secrets.GH_PAT_BOT }}
- uses: actions/setup-node@v4
with:
node-version: 'lts/*'
- name: ${{ matrix.step }}
run: |
yarn install --immutable | grep -v 'YN0013'
yarn install --immutable
yarn ${{ matrix.step }}
-20
View File
@@ -1,20 +0,0 @@
name: Semgrep
on:
pull_request: {}
push:
branches:
- master
jobs:
check:
if: "! startsWith(github.event.head_commit.message, '[CI Skip]') && (!github.event.pull_request || github.event.pull_request.head.repo.full_name == github.repository)"
runs-on: ubuntu-latest
env:
YARN_ENABLE_SCRIPTS: false
steps:
- uses: actions/checkout@v2
- uses: returntocorp/semgrep-action@v1
with:
auditOn: push
publishToken: ${{ secrets.SEMGREP_APP_TOKEN }}
publishDeployment: 1395
-19
View File
@@ -1,19 +0,0 @@
name: 'Close stale issues and PRs'
on:
schedule:
- cron: '40 2/3 * * *'
jobs:
stale:
runs-on: ubuntu-latest
env:
YARN_ENABLE_SCRIPTS: false
steps:
- uses: actions/stale@v3
with:
repo-token: ${{ secrets.GH_PAT_BOT }}
stale-issue-message: 'This issue has been open for 21 days with no activity and is not labelled as an enhancement. It will be closed in 7 days.'
stale-issue-label: 'stale'
exempt-issue-labels: '-size-l,-size-m,-size-s,-size-xl,-size-xs,[bug]'
days-before-stale: 21
days-before-close: 7
+1 -3
View File
@@ -1,7 +1,5 @@
build/
build-cjs/
build-esm/
build-docs/
build-*/
coverage/
node_modules/
tmp/
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2022 @polkadot/ui authors & contributors
// Copyright 2017-2026 @polkadot/ui-shared authors & contributors
// SPDX-License-Identifier: Apache-2.0
module.exports = require('@polkadot/dev/config/prettier.cjs');
+4
View File
@@ -0,0 +1,4 @@
{
"eslint.enable": true,
"eslint.experimental.useFlatConfig": true
}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
-785
View File
File diff suppressed because one or more lines are too long
+934
View File
File diff suppressed because one or more lines are too long
+16 -6
View File
@@ -1,13 +1,23 @@
compressionLevel: mixed
enableGlobalCache: false
enableImmutableInstalls: false
enableProgressBars: false
logFilters:
- code: YN0013
level: discard
nodeLinker: node-modules
plugins:
- path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
spec: "@yarnpkg/plugin-interactive-tools"
- path: .yarn/plugins/@yarnpkg/plugin-version.cjs
spec: "@yarnpkg/plugin-version"
yarnPath: .yarn/releases/yarn-4.5.1.cjs
yarnPath: .yarn/releases/yarn-3.2.0.cjs
# @quantus packages come from the Gitea registry — safe as a whole-scope route
# because we own every name in it. The forked @polkadot packages cannot be routed
# the same way (most of that scope is unforked and lives on npm), so they are
# pinned to tarball URLs in package.json resolutions instead.
npmScopes:
quantus:
npmRegistryServer: "https://git.lair.cafe/api/packages/quantus/npm/"
-19
View File
@@ -1,19 +0,0 @@
# Bounties
From time-to-time we will add bounties for features.
These are generously provided by the [Web3 Foundation](https://web3.foundation/) and as such employees of Parity or those of the W3F are ineligible for them. (This includes people being by either Party for development or community work, related or un-related to polkadot-js).
The idea is that these bounties should be left open to community participation, so only if there is no outside interest for a specific issue, should those directly or indirectly paid by the W3F for work, attempt to close an issue. (in which case it will be "un-bountied")
Current bounties are tracked by the [!bounty](https://github.com/polkadot-js/ui/labels/%21bounty) label.
## Process
Once listed, the normal [Gitcoin](https://gitcoin.co/) process kicks in. This means application, work and payment is managed by this tool. The values for bounties are determined by the size estimation done by the team.
## Some small requests
Please don't start work on an issue until you have been approved via the gitcoin interface. We generally love enthusiasm and code in the repo, however short-cutting the process does create some issues for the management of the bounties. We certainly don't want to be playing favorites if 2 PRs for the same issue are created at the same time. And in cases where somebody else has been approved and an unapproved PR comes in... well, it gets really murky.
When making changes, please do not force push in your PRs, especially not after a review has been started. We will clone your repo and work from that, doing a simple `pull` on a force-pushed branch ends up being, well, less than simple. We squash merge all PRs, so you do not clutter up the history by using stock-standard pushes to your branch.
+521
View File
@@ -1,5 +1,526 @@
# CHANGELOG
## 3.16.7 Mar 25, 2026
Changes:
- Bump common to 14.0.3 ([#860](https://github.com/polkadot-js/ui/pull/860))
- Set headers for 2026 ([#859](https://github.com/polkadot-js/ui/pull/859))
## 3.16.6 Dec 10, 2025
Changes:
- Upgraded polkadot-js dependencies ([#855](https://github.com/polkadot-js/ui/pull/855))
## 3.16.5 Dec 10, 2025
Changes:
- Upgraded polkadot-js dependencies ([#855](https://github.com/polkadot-js/ui/pull/855))
## 3.16.4 Nov 25, 2025
Changes:
- Upgraded polkadot-js dependencies ([#853](https://github.com/polkadot-js/ui/pull/853))
## 3.16.3 Nov 12, 2025
Changes:
- Upgraded polkadot-js dependencies ([#850](https://github.com/polkadot-js/ui/pull/850))
## 3.16.2 Oct 22, 2025
Changes:
- Upgraded polkadot-js dependencies ([#848](https://github.com/polkadot-js/ui/pull/848))
## 3.16.1 Aug 27, 2025
Changes:
- 3.15.5 ([#846](https://github.com/polkadot-js/ui/pull/846))
- Upgraded polkadot deps ([#845](https://github.com/polkadot-js/ui/pull/845))
## 3.15.4 Aug 13, 2025
Changes:
- Upgraded polkadot deps ([#843](https://github.com/polkadot-js/ui/pull/843))
## 3.15.3 July 30, 2025
Changes:
- Update Beachball.tsx to remove duplication in strict mode ([#840](https://github.com/polkadot-js/ui/pull/840))
- Bump polkadot deps ([#841](https://github.com/polkadot-js/ui/pull/841))
## 3.15.2 July 2, 2025
Changes:
- Upgraded polkadot deps ([#838](https://github.com/polkadot-js/ui/pull/838))
## 3.15.1 Jun 18, 2025
Changes:
- Upgraded polkadot deps ([#831](https://github.com/polkadot-js/ui/pull/831))
## 3.14.1 May 23, 2025
Changes:
- Add the type field to external keypair accounts ([#833](https://github.com/polkadot-js/ui/pull/833))
- Upgrade polkadot-js/common to 13.5.1 ([#834](https://github.com/polkadot-js/ui/pull/834))
## 3.13.1 Apr 16, 2025
Changes:
- Add key validation for FileStore ([#830](https://github.com/polkadot-js/ui/pull/830))
- Upgraded polkadot deps ([#831](https://github.com/polkadot-js/ui/pull/831))
## 3.12.2 Feb 18, 2025
Changes:
- Bump dev to v0.83.2 ([#827](https://github.com/polkadot-js/ui/pull/827))
- Bump common to v13.4.3 ([#828](https://github.com/polkadot-js/ui/pull/828))
## 3.12.1 Jan 8, 2025
Changes:
- Upgrade common to 13.3.1 ([#824](https://github.com/polkadot-js/ui/pull/824))
- Bump dev w/ ts ([#823](https://github.com/polkadot-js/ui/pull/823))
- Update headers to 2025 ([#822](https://github.com/polkadot-js/ui/pull/822))
## 3.11.3 Nov 12, 2024
Changes:
- Upgrade polkadot/common to 13.2.3 ([817](https://github.com/polkadot-js/ui/pull/#))
- Bump dev to 0.82.1 w/ tslib ([#816](https://github.com/polkadot-js/ui/pull/816))
## 3.11.2 Oct 30, 2024
Changes:
- Upgrade polkadot/common to 13.2.2 ([#814](https://github.com/polkadot-js/ui/pull/814))
## 3.11.1 Oct 23, 2024
Changes:
- Upgrade polkadot/common to 13.2.1 ([#811](https://github.com/polkadot-js/ui/pull/811))
- Bump yarn to 4.5.1 ([#812](https://github.com/polkadot-js/ui/pull/812))
- Bump dev 0.81.2 ([#810](https://github.com/polkadot-js/ui/pull/810))
- Correctly exports CJS and ESM
## 3.10.1 Sep 20, 2024
Changes:
- Upgrade polkadot/common to 13.1.1 ([#808](https://github.com/polkadot-js/ui/pull/808))
- Bump yarn to 4.4.0 ([#806](https://github.com/polkadot-js/ui/pull/806))
## 3.9.1 Aug 13, 2024
Changes:
- Upgrade @polkadot/dev to 0.79.3 ([#803](https://github.com/polkadot-js/ui/pull/803))
- Add chainSpecific option for ledger ([#804](https://github.com/polkadot-js/ui/pull/804))
## 3.8.3 July 31, 2024
Changes:
- Fix Qr Scanner (Thanks to https://github.com/ryanleecode)
## 3.8.2 July 22, 2024
Changes:
- Fix ledgerApp bug, and remove legacy
## 3.8.1 July 22, 2024
Changes:
- Add new ledger app settings
## 3.7.1 July 13, 2024
Changes:
- Upgrade polkadot/common 13.0.2
- Bump yarn to 4.3.1
## 3.6.6 Apr 17, 2024
Contributed:
- Add compatibility layer for H160 addresses (Thanks to https://github.com/vikiival)
Changes:
- Update ci checkout and setup_node to v4
- Bump yarn to 4.1.1
## 3.6.5 Feb 28, 2024
Changes
- Bump to `@polkadot/util` 12.6.2
- Bump to `react-native-svg` 14.1.0
- Adjust `Vue` peerDependency, >= 2.7 for defineComponent
## 3.6.4 Nov 18, 2023
Changes:
- Bump to `@polkadot/util` 12.6.1
## 3.6.3 Sep 15, 2023
Changes:
- Bump to `@polkadot/util` 12.5.1
## 3.6.2 Aug 23, 2023
Changes:
- Bump to `@polkadot/util` 12.4.2
## 3.6.1 Aug 21, 2023
Changes:
- Update to latest React `styled-components`
- Bump to `@polkadot/util` 12.4.1
## 3.5.1 Jun 11, 2023
Changes:
- Adjust object index access for stricter tsconfig settings
- Bump to `@polkadot/util` 12.3.1
## 3.4.2 Jun 5, 2023
- Bump to `@polkadot/util` 12.2.2
## 3.4.1 May 13, 2023
Changes:
- Add `module` to `package.json` export map (ESM-only)
- Bump to `@polkadot/util` 12.2.1
## 3.3.1 May 7, 2023
Contributed:
- Adjust `vue-identicon` to be Vue 3 compatible (Thanks to https://github.com/Gavin-Gong)
Changes:
- Bump to `@polkadot/util` 12.1.2
## 3.2.2 Apr 29, 2023
Changes:
- Add missing `react-is` peer dependency for `styled-components`
- Adjust compilation output for `__internal__` class fields
- Bump to `@polkadot/util` 12.1.1
## 3.2.1 Apr 22, 2023
Changes:
- Bump to `@polkadot/util` 12.0.1
## 3.1.4 Apr 1, 2023
Changes:
- Bump to `@polkadot/util` 11.1.3
## 3.1.3 Mar 25, 2023
Changes:
- Align `eventemitter` version with `@polkadot/api`
## 3.1.2 Mar 25, 2023
Changes:
- Cater for Ethereum-compatible multisig addresses
- Bump to `@polkadot/util` 11.1.2
## 3.1.1 Mar 19, 2023
Changes:
- Swap `vue-identitycon` to use `defineComponent` (requires vue 2.7+)
- Swap `BeachballIcon` to use `colord` library (ESM + CJS, smaller)
- Bump to `@polkadot/util` 11.1.1
## 3.0.2 Mar 11, 2023
Changes:
- Use consistent `.js` imports in source files (TS moduleResolution)
- Bump to `@polkadot/util` 11.0.2
## 3.0.1 Mar 5, 2023
Changes:
- Remove `@polkadot/ui-assets` package
- Swap TS -> JS compiler to use tsc (from babel)
- Adjust all tests to use `node:test` runner (ESM variants)
- Bump to `@polkadot/util` 11.0.1
## 2.12.1 Feb 20, 2023
Changes:
- Adjust `styled-components` usage to cater for server-based environments
## 2.11.3 Feb 19, 2023
Changes:
- Bump to `@polkadot/util` 10.4.2
## 2.11.2 Feb 15, 2023
Changes:
- Bump to `@polkadot/util` 10.4.1
## 2.11.1 Jan 28, 2023
Changes:
- Adjust usage of `styled-component` wrappers
- Add setting for auto extension metadata upgrades
- Bump to `@polkadot/util` 10.3.1
## 2.10.1 Jan 15, 2023
Changes:
- Add setting to allow/disallow in-browser account storage
- Bump to `@polkadot/util` 10.2.3
## 2.9.15 Jan 8, 2023
Changes:
- Bump to `@polkadot/util` 10.2.3
## 2.9.14 Dec 5, 2022
Changes:
- Bump to `@polkadot/util` 10.2.1
## 2.9.13 Nov 14, 2022
Changes:
- Bump to `@polkadot/util` 10.1.12
## 2.9.12 Oct 18, 2022
Changes:
- Bump to `@polkadot/util` 10.1.11
## 2.9.11 Oct 7, 2022
Changes:
- Bump to `@polkadot/util` 10.1.10
## 2.9.10 Sep 24, 2022
Changes:
- Bump to `@polkadot/util` 10.1.9
## 2.9.9 Sep 17, 2022
Changes:
- Bump to `@polkadot/util` 10.1.8
## 2.9.8 Sep 2, 2022
Changes:
- Bump to `@polkadot/util` 10.1.7
## 2.9.7 Aug 24, 2022
Changes:
- Bump to `@polkadot/util` 10.1.6
## 2.9.6 Aug 21, 2022
Changes:
- Use webpack packages from `@polkadot/dev`
- Bump to `@polkadot/util` 10.1.5
## 2.9.5 Aug 13, 2022
Changes:
- Bump to `@polkadot/util` 10.1.4
## 2.9.4 Aug 6, 2022
Changes:
- Bump to `@polkadot/util` 10.1.3
## 2.9.3 Jul 30, 2022
Changes:
- Bump to `@polkadot/util` 10.1.2
## 2.9.2 Jul 24, 2022
Contributed:
- Adjust vue-identicon with no props/data duplication (Thanks to https://github.com/vikiival)
## 2.9.1 Jul 21, 2022
Changes:
- Bump to `@polkadot/util` 10.1.1
## 2.8.2 Jul 10, 2022
Changes:
- Bump to `@polkadot/util` 10.0.2
## 2.8.1 Jul 9, 2022
Changes:
- Bump to `@polkadot/util` 10.0.1
## 2.7.2 Jul 4, 2022
Changes:
- Bump to `@polkadot/util-crypto` 9.7.2 (w/ `@polkadot/wasm-crypto` 6.2.2)
## 2.7.1 Jul 1, 2022
Contributed:
- Remove extra div wrappers in `vue-identicon` (Thanks to https://github.com/dcolley)
Changes:
- Upgrade to `@polkadot/{hw-ledger, keyring, util, util-crypto}` 9.7.1
## 2.6.2 Jun 25, 2022
Changes:
- Upgrade to `@polkadot/{hw-ledger, keyring, util, util-crypto}` 9.6.2
## 2.6.1 Jun 23, 2022
Changes:
- Upgrade to `@polkadot/{hw-ledger, keyring, util, util-crypto}` 9.6.1
- Upgrade libs to latest stable versions
## 2.5.1 Jun 19, 2022
Changes:
+11 -1
View File
@@ -1,4 +1,6 @@
619 Jaco 2.5.1 (#653)
735 Jaco Adjust Vue peerDependency, >= 2.7 for defineComponent (#782)
41 Tarik Gul 3.16.7 (#861)
22 Arjun Porwal 3.16.6 (#857)
7 YJ fix #224: decrease frame size to 1024, set multipart bool (#225)
4 Antoine Estienne Refactor logic to better use prefix (#491)
4 kwingram25 fix ff api url issue (#289)
@@ -8,6 +10,8 @@
2 Drew Stone Add Edgeware testnet and mainnet updated endpoints (#274)
2 Hanwen Cheng allow qr to scan seed qr (#330)
2 Nikos Kontakis Fix undefined process error that may appear when using ui (#524)
2 Valentin Fernandez 3.12.2
2 Viki Val Add compatibility layer for H160 addresses (#789)
2 Vlad Proshchavaiev Add Subsocial to ss58 defaults (#358)
2 Xiliang Chen Update UNfrastructure node label (#160)
2 雪霁 Batch export patch up (#455)
@@ -18,16 +22,22 @@
1 Axel Chalon Simplify KeyringAddress interface (#144)
1 Cameron Franz react-native example app port (#223)
1 carumusan Add kulupu (#342)
1 Derek Colley Remove redundant `div` wrappers in vue-identicon (#643)
1 Harry Liu Update README.md (#166)
1 Jake Naviasky Add Edgeware chain prefix to settings. (#317)
1 Jeeyong Um Fix outdated links in README.md (#772)
1 Logan Saether Propose W3F node (#188)
1 Lovesh Harchandani Allow Ledger support for Dock (#425)
1 Luke Schoen Fix typo in heading (#114)
1 Nantian fix bigint type (#510)
1 Nikhil Ranjan Updated to valid javascript (#271)
1 Niklas P Update Beachball.tsx to remove duplication in strict mode (#840)
1 omahs Fix: typos (#709)
1 Ryan Lee fix: qr-code (#801)
1 Shawn Tabrizi Add a new `notification` setting (#498)
1 Wei Tang Add Kulupu to the network selection list (#254)
1 WoeOm add darwinia ss58 (#379)
1 yuhui1208 [Stores] make FileStroe read key safely (#338)
1 Yuri Add webpack 5 support (#557)
1 Zen feat: adapt Vue 3.x (#755)
1 菩提 fix some bugs (#260)
+3 -18
View File
@@ -1,10 +1,3 @@
[![polkadotjs](https://img.shields.io/badge/polkadot-js-orange?style=flat-square)](https://polkadot.js.org)
![license](https://img.shields.io/badge/License-Apache%202.0-blue?logo=apache&style=flat-square)
[![npm](https://img.shields.io/npm/v/@polkadot/react-identicon?logo=npm&style=flat-square)](https://www.npmjs.com/package/@polkadot/react-identicon)
[![beta](https://img.shields.io/npm/v/@polkadot/react-identicon/beta?label=beta&logo=npm&style=flat-square)](https://www.npmjs.com/package/@polkadot/react-identicon)
[![maintainability](https://img.shields.io/codeclimate/maintainability-percentage/polkadot-js/ui?logo=code-climate&style=flat-square)](https://codeclimate.com/github/polkadot-js/ui)
[![coverage](https://img.shields.io/codeclimate/coverage/polkadot-js/ui?logo=code-climate&style=flat-square)](https://codeclimate.com/github/polkadot-js/ui)
# @polkadot/ui
Basic browser and framework agnostic UI components for creating apps using the polkadot{.js} libraries
@@ -18,16 +11,8 @@ The following UI components are currently available -
- [vue-identicon](packages/vue-identicon/) Vue identity icon generator with address as input
- [react-qr](packages/react-qr/) QR code generator/reader for [uos](https://github.com/maciejhirsz/uos) (Substrate/Polkadot only)
Additionally some shared libraries, that is not dependent on any framework -
Additionally some shared libraries, that are not dependent on any framework -
- [ui-assets](packages/ui-assets/) Static assets, images and others, shared accross projects
- [ui-keyring](packages/ui-keyring/) A browser-specific wrapper around the base [@polkadot/util-keyring](https://github.com/polkadot-js/util/) library
- [ui-keyring](packages/ui-keyring/) A browser-specific wrapper around the base [@polkadot/keyring](https://github.com/polkadot-js/common/) library
- [ui-settings](packages/ui-settings/) A browser local storage wrapper for app settings & configuration
- [ui-shared](packages/ui-shared) Shared logic that is used accross UI components, e.g. for icon generation
## examples
In addition to the above packages, there are examples available for intergation of `ui-keyring`, `ui-settings` & the relevant `*-identicon` package. These are
- [example-react](packages/example-react) - start with `yarn example:react` and view on `http://localhost:8080`
- [example-vue](packages/example-vue) - start with `yarn example:vue` and view on `http://localhost:8080`
- [ui-shared](packages/ui-shared) Shared logic that is used across UI components, e.g. for icon generation
-16
View File
@@ -1,16 +0,0 @@
// Copyright 2017-2022 @polkadot/ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
const base = require('@polkadot/dev/config/babel-config-cjs.cjs');
module.exports = Object.keys(base).reduce((config, key) => {
config[key] = base[key];
if (key === 'plugins') {
config[key] = config[key].concat([
'transform-vue-template'
]);
}
return config;
}, {});
+8
View File
@@ -0,0 +1,8 @@
// Copyright 2017-2026 @polkadot/ui-shared authors & contributors
// SPDX-License-Identifier: Apache-2.0
import baseConfig from '@polkadot/dev/config/eslint';
export default [
...baseConfig
];
-17
View File
@@ -1,17 +0,0 @@
// Copyright 2017-2022 @polkadot/ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
const config = require('@polkadot/dev/config/jest.cjs');
module.exports = {
...config,
moduleNameMapper: {
'@polkadot/react-(identicon|qr)(.*)$': '<rootDir>/packages/react-$1/src/$2',
'@polkadot/reactnative-(identicon)(.*)$': '<rootDir>/packages/reactnative-$1/src/$2',
'@polkadot/ui-(assets|keyring|settings|shared)(.*)$': '<rootDir>/packages/ui-$1/src/$2',
'\\.(css|less)$': 'empty/object',
'\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$': 'empty/object'
},
setupFilesAfterEnv: ['<rootDir>/jest/setupEnv.js'],
testEnvironment: 'jsdom'
};
-10
View File
@@ -1,10 +0,0 @@
// Copyright 2017-2022 @polkadot/ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
const nodeCrypto = require('crypto');
window.crypto = {
getRandomValues: function (buffer) {
return nodeCrypto.randomFillSync(buffer);
}
};
+20 -22
View File
@@ -1,16 +1,24 @@
{
"author": "Jaco Greeff <jacogr@gmail.com>",
"bugs": "https://github.com/polkadot-js/ui/issues",
"engines": {
"node": ">=18.14"
},
"homepage": "https://github.com/polkadot-js/ui#readme",
"license": "Apache-2.0",
"packageManager": "yarn@3.2.0",
"packageManager": "yarn@4.5.1",
"private": true,
"repository": {
"type": "git",
"url": "https://github.com/polkadot-js/ui.git"
},
"sideEffects": false,
"version": "2.5.1",
"type": "module",
"version": "3.16.7",
"versions": {
"git": "3.16.7",
"npm": "3.16.7"
},
"workspaces": [
"packages/*"
],
@@ -19,34 +27,24 @@
"build:release": "polkadot-ci-ghact-build",
"build:rollup": "polkadot-exec-rollup --config",
"clean": "polkadot-dev-clean-build",
"example:react": "yarn build && cd packages/example-react && webpack --config webpack.config.cjs",
"example:vue": "yarn build && cd packages/example-vue && webpack --config webpack.config.cjs",
"lint": "polkadot-dev-run-lint",
"postinstall": "polkadot-dev-yarn-only",
"test": "polkadot-dev-run-test --coverage --runInBand",
"test:one": "polkadot-dev-run-test"
"test": "polkadot-dev-run-test --env browser",
"test:one": "polkadot-dev-run-test --env browser"
},
"devDependencies": {
"@babel/core": "^7.18.5",
"@babel/runtime": "^7.18.3",
"@polkadot/dev": "^0.67.4",
"@polkadot/x-bundle": "^9.5.1",
"@types/jest": "^28.1.2",
"babel-loader": "^8.2.5",
"babel-plugin-transform-vue-template": "^0.4.2",
"empty": "^0.10.1",
"process": "^0.11.10",
"@polkadot/dev": "^0.83.3",
"@polkadot/x-bundle": "^14.0.3",
"@types/node": "^22.10.5",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-is": "^18.2.0",
"react-native": "^0.68.2",
"stream-browserify": "^3.0.0",
"vue-template-compiler": "^2.6.14",
"webpack": "^5.73.0",
"webpack-cli": "^4.10.0",
"webpack-serve": "^4.0.0"
"react-native": "^0.73.1"
},
"resolutions": {
"typescript": "^4.7.3"
"@polkadot/keyring": "https://git.lair.cafe/api/packages/quantus/npm/%40polkadot%2Fkeyring/-/14.0.3-quantus.3/keyring-14.0.3-quantus.3.tgz",
"@polkadot/networks": "https://git.lair.cafe/api/packages/quantus/npm/%40polkadot%2Fnetworks/-/14.0.3-quantus.3/networks-14.0.3-quantus.3.tgz",
"@polkadot/util-crypto": "https://git.lair.cafe/api/packages/quantus/npm/%40polkadot%2Futil-crypto/-/14.0.3-quantus.3/util-crypto-14.0.3-quantus.3.tgz",
"typescript": "5.5.4"
}
}
View File
-201
View File
@@ -1,201 +0,0 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-3
View File
@@ -1,3 +0,0 @@
# @polkadot/example-react
A versy basic React example with `@polkadot/ui-keyring`, `@polkadot/ui-settings` & `@polkadot/react-identicon`
-37
View File
@@ -1,37 +0,0 @@
<html>
<head>
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css" />
<style>
#example {
padding: 0.5em;
}
button {
cursor: pointer;
padding: 0.5rem 0.75rem;
}
label {
display: block;
margin: 0.25rem 0;
opacity: 0.5;
}
section {
padding: 0.5rem 1rem;
}
textarea {
resize: none;
}
.icon {
margin-right: 0.75rem;
}
</style>
</head>
<body>
<div id="example"></div>
<script src="./build/main.js"></script>
</body>
</html>
-22
View File
@@ -1,22 +0,0 @@
{
"author": "Jaco Greeff <jacogr@gmail.com>",
"bugs": "https://github.com/polkadot-js/ui/issues",
"contributors": [],
"description": "A very basic example with ui-* & react-* packages",
"homepage": "https://github.com/polkadot-js/ui/tree/master/packages/example-react#readme",
"license": "Apache-2.0",
"maintainers": [],
"name": "@polkadot/example-react",
"private": true,
"repository": {
"directory": "packages/example-react",
"type": "git",
"url": "https://github.com/polkadot-js/ui.git"
},
"sideEffects": false,
"version": "2.5.1",
"main": "index.js",
"dependencies": {
"@babel/runtime": "^7.18.3"
}
}
@@ -1,6 +0,0 @@
// Copyright 2017-2022 @polkadot/example-react authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Empty template, auto-generated by @polkadot/dev
export default [];
@@ -1,11 +0,0 @@
// Copyright 2017-2022 @polkadot/example-react authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
import { detectPackage } from '@polkadot/util';
import others from './detectOther';
import { packageInfo } from './packageInfo';
detectPackage(packageInfo, null, others);
-121
View File
@@ -1,121 +0,0 @@
// Copyright 2017-2022 @polkadot/example-react authors & contributors
// SPDX-License-Identifier: Apache-2.0
import React, { useCallback, useEffect, useState } from 'react';
import ReactDOM from 'react-dom';
import { Identicon } from '@polkadot/react-identicon';
import { keyring } from '@polkadot/ui-keyring';
import { settings } from '@polkadot/ui-settings';
import { cryptoWaitReady, mnemonicGenerate } from '@polkadot/util-crypto';
interface Props {
className?: string;
}
const rootElement = document.getElementById('example');
if (!rootElement) {
throw new Error('Unable to find element with id \'example\'');
}
function App ({ className }: Props): React.ReactElement<Props> | null {
const [address, setAddress] = useState<string | null>(null);
const [phrase, setPhrase] = useState<string | null>(null);
const [ss58Format, setSS58Format] = useState(42);
const _onClickNew = useCallback(
(): void => {
const phrase = mnemonicGenerate(12);
const { address } = keyring.createFromUri(phrase);
setAddress(keyring.encodeAddress(address, ss58Format));
setPhrase(phrase);
},
[ss58Format]
);
const _onChangeSS58Format = useCallback(
({ currentTarget: { value } }: React.SyntheticEvent<HTMLSelectElement>): void => {
setSS58Format(parseInt(value, 10));
},
[]
);
useEffect((): void => {
_onClickNew();
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
useEffect((): void => {
address && setAddress(keyring.encodeAddress(address, ss58Format));
}, [address, ss58Format]);
if (!address || !phrase) {
return null;
}
return (
<div className={className}>
<section>
<button onClick={_onClickNew}>another random address</button>
</section>
<section>
<label>phrase</label>
<textarea
cols={40}
readOnly
rows={4}
value={phrase}
/>
</section>
<section>
<label>icons</label>
<Identicon
className='icon'
value={address}
/>
<Identicon
className='icon'
theme='polkadot'
value={address}
/>
<Identicon
className='icon'
theme='beachball'
value={address}
/>
</section>
<section>
<label>address</label>
{address}
</section>
<section>
<label>ss58 format</label>
<select
onChange={_onChangeSS58Format}
value={ss58Format}
>
{settings.availablePrefixes
.filter((_, index): boolean => index !== 0)
.map(({ text, value }): React.ReactNode => (
<option
key={value}
value={value}
>
{text}
</option>
))
}
</select>
</section>
</div>
);
}
cryptoWaitReady()
.then((): void => {
keyring.loadAll({ ss58Format: 42, type: 'sr25519' });
ReactDOM.render(<App />, rootElement);
})
.catch(console.error);
@@ -1,6 +0,0 @@
// Copyright 2017-2022 @polkadot/example-react authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
export const packageInfo = { name: '@polkadot/example-react', path: 'auto', type: 'auto', version: '2.5.1' };
-53
View File
@@ -1,53 +0,0 @@
// Copyright 2017-2022 @polkadot/example-react authors & contributors
// SPDX-License-Identifier: Apache-2.0
const path = require('path');
const { WebpackPluginServe } = require('webpack-plugin-serve');
module.exports = {
context: __dirname,
devtool: 'eval-cheap-source-map',
entry: './src/index.tsx',
mode: 'development',
module: {
rules: [
{
exclude: /(node_modules)/,
test: /\.(ts|tsx)$/,
use: [
{
loader: 'babel-loader',
options: require('../../babel.config.cjs')
}
]
}
]
},
output: {
chunkFilename: '[name].[chunkhash:8].js',
filename: '[name].js',
globalObject: '(typeof self !== \'undefined\' ? self : this)',
path: path.join(__dirname, 'build')
},
plugins: [
new WebpackPluginServe({
hmr: false, // switch off, Chrome WASM memory leak
liveReload: false, // explict off, overrides hmr
port: 8080,
progress: false, // since we have hmr off, disable
static: __dirname
})
],
resolve: {
alias: {
'@polkadot/react-identicon': path.resolve(__dirname, '../react-identicon/build'),
'@polkadot/ui-keyring': path.resolve(__dirname, '../ui-keyring/build'),
'@polkadot/ui-settings': path.resolve(__dirname, '../ui-settings/build'),
'@polkadot/ui-shared': path.resolve(__dirname, '../ui-shared/build')
},
extensions: ['.js', '.ts', '.tsx'],
fallback: {}
},
target: 'web',
watch: true
};
View File
View File
-201
View File
@@ -1,201 +0,0 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-3
View File
@@ -1,3 +0,0 @@
# @polkadot/example-vue
A versy basic Vue.js example with `@polkadot/ui-keyring`, `@polkadot/ui-settings` & `@polkadot/vue-identicon`
-38
View File
@@ -1,38 +0,0 @@
<html>
<head>
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css" />
<style>
#example {
padding: 0.5em;
}
button {
cursor: pointer;
padding: 0.5rem 0.75rem;
}
label {
display: block;
margin: 0.25rem 0;
opacity: 0.5;
}
section {
padding: 0.5rem 1rem;
}
textarea {
resize: none;
}
.icon {
display: inline-block;
margin-right: 0.75rem;
}
</style>
</head>
<body>
<div id="example"></div>
<script src="./build/main.js"></script>
</body>
</html>
-22
View File
@@ -1,22 +0,0 @@
{
"author": "Jaco Greeff <jacogr@gmail.com>",
"bugs": "https://github.com/polkadot-js/ui/issues",
"contributors": [],
"description": "A very basic example with ui-* & vue-* packages",
"homepage": "https://github.com/polkadot-js/ui/tree/master/packages/example-vue#readme",
"license": "Apache-2.0",
"maintainers": [],
"name": "@polkadot/example-vue",
"private": true,
"repository": {
"directory": "packages/example-vue",
"type": "git",
"url": "https://github.com/polkadot-js/ui.git"
},
"sideEffects": false,
"version": "2.5.1",
"main": "index.js",
"dependencies": {
"@babel/runtime": "^7.18.3"
}
}
-6
View File
@@ -1,6 +0,0 @@
// Copyright 2017-2022 @polkadot/example-vue authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Empty template, auto-generated by @polkadot/dev
export default [];
-11
View File
@@ -1,11 +0,0 @@
// Copyright 2017-2022 @polkadot/example-vue authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
import { detectPackage } from '@polkadot/util';
import others from './detectOther';
import { packageInfo } from './packageInfo';
detectPackage(packageInfo, null, others);
-99
View File
@@ -1,99 +0,0 @@
// Copyright 2017-2022 @polkadot/example-vue authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Prefix } from '@polkadot/util-crypto/address/types';
import Vue, { VNode } from 'vue';
import { keyring } from '@polkadot/ui-keyring';
import { settings } from '@polkadot/ui-settings';
import { cryptoWaitReady, mnemonicGenerate } from '@polkadot/util-crypto';
import Identicon from '@polkadot/vue-identicon';
interface Account {
address: string;
phrase: string;
}
interface Data extends Account {
ss58Format: Prefix;
ss58Options: { text: string; value: string | number }[];
}
const ss58Options = settings.availablePrefixes.filter((_, index): boolean => index !== 0);
function generateAccount (ss58Format: Prefix = 42): Account {
const phrase = mnemonicGenerate(12);
const { address } = keyring.createFromUri(phrase);
return {
address: keyring.encodeAddress(address, ss58Format),
phrase
};
}
const Example = Vue.extend({
components: {
Identicon
},
data: function (): Data {
return {
...generateAccount(),
ss58Format: 42,
ss58Options
};
},
methods: {
onClickNew: function (): void {
const { address, phrase } = generateAccount(this.ss58Format);
this.address = address;
this.phrase = phrase;
}
},
name: 'Example',
template: `
<div id="example">
<section>
<button v-on:click="onClickNew">another random address</button>
</section>
<section>
<label>phrase</label>
<textarea :cols="40" :rows="4" readonly v-model="phrase" />
</section>
<section>
<label>icons</label>
<Identicon class='icon' :value="address" />
<Identicon class='icon' :value="address" :theme="'polkadot'" />
<Identicon class='icon' :value="address" :theme="'beachball'" />
</section>
<section>
<label>address</label>
{{ address }}
</section>
<section>
<label>ss58 format</label>
<select v-model="ss58Format">
<option v-for="option in ss58Options" v-bind:value="option.value">
{{ option.text }}
</option>
</select>
</section>
</div>
`,
watch: {
ss58Format: function (): void {
this.address = keyring.encodeAddress(this.address, this.ss58Format);
}
}
});
cryptoWaitReady()
.then((): void => {
keyring.loadAll({ ss58Format: 42, type: 'sr25519' });
new Vue({
render: (h): VNode => h(Example)
}).$mount('#example');
})
.catch(console.error);
-6
View File
@@ -1,6 +0,0 @@
// Copyright 2017-2022 @polkadot/example-vue authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
export const packageInfo = { name: '@polkadot/example-vue', path: 'auto', type: 'auto', version: '2.5.1' };
-12
View File
@@ -1,12 +0,0 @@
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
"baseUrl": "..",
"outDir": "./build",
"rootDir": "./src"
},
"references": [
{ "path": "../ui-keyring/tsconfig.build.json" },
{ "path": "../vue-identicon/tsconfig.build.json" }
]
}
-52
View File
@@ -1,52 +0,0 @@
// Copyright 2017-2022 @polkadot/example-vue authors & contributors
// SPDX-License-Identifier: Apache-2.0
const path = require('path');
const { WebpackPluginServe } = require('webpack-plugin-serve');
module.exports = {
context: __dirname,
devtool: 'eval-cheap-source-map',
entry: './src/index.ts',
mode: 'development',
module: {
rules: [
{
exclude: /(node_modules)/,
test: /\.(ts|tsx)$/,
use: [
{
loader: 'babel-loader',
options: require('../../babel.config.cjs')
}
]
}
]
},
output: {
chunkFilename: '[name].[chunkhash:8].js',
filename: '[name].js',
globalObject: '(typeof self !== \'undefined\' ? self : this)',
path: path.join(__dirname, 'build')
},
plugins: [
new WebpackPluginServe({
hmr: false, // switch off, Chrome WASM memory leak
liveReload: false, // explict off, overrides hmr
port: 8080,
progress: false, // since we have hmr off, disable
static: __dirname
})
],
resolve: {
alias: {
'@polkadot/ui-keyring': path.resolve(__dirname, '../ui-keyring/build'),
'@polkadot/ui-settings': path.resolve(__dirname, '../ui-settings/build'),
'@polkadot/ui-shared': path.resolve(__dirname, '../ui-shared/build'),
'@polkadot/vue-identicon': path.resolve(__dirname, '../vue-identicon/build')
},
extensions: ['.js', '.ts', '.tsx']
},
target: 'web',
watch: true
};
-201
View File
@@ -1,201 +0,0 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+17 -20
View File
@@ -1,11 +1,12 @@
{
"author": "Jaco Greeff <jacogr@gmail.com>",
"bugs": "https://github.com/polkadot-js/ui/issues",
"contributors": [],
"description": "Renders an SVG picture representing an address",
"engines": {
"node": ">=18"
},
"homepage": "https://github.com/polkadot-js/ui/tree/master/packages/react-identicon#readme",
"license": "Apache-2.0",
"maintainers": [],
"name": "@polkadot/react-identicon",
"repository": {
"directory": "packages/react-identicon",
@@ -13,30 +14,27 @@
"url": "https://github.com/polkadot-js/ui.git"
},
"sideEffects": [
"./detectPackage.js",
"./detectPackage.cjs"
"./packageDetect.js",
"./packageDetect.cjs"
],
"type": "module",
"version": "2.5.1",
"version": "3.16.7",
"main": "index.js",
"dependencies": {
"@babel/runtime": "^7.18.3",
"@polkadot/keyring": "^9.5.1",
"@polkadot/ui-settings": "2.5.1",
"@polkadot/ui-shared": "2.5.1",
"@polkadot/util": "^9.5.1",
"@polkadot/util-crypto": "^9.5.1",
"color": "^3.2.1",
"@polkadot/keyring": "^14.0.3",
"@polkadot/ui-settings": "3.16.7",
"@polkadot/ui-shared": "3.16.7",
"@polkadot/util": "^14.0.3",
"@polkadot/util-crypto": "^14.0.3",
"ethereum-blockies-base64": "^1.0.2",
"jdenticon": "3.1.1",
"jdenticon": "3.2.0",
"react-copy-to-clipboard": "^5.1.0",
"styled-components": "^5.3.5"
"styled-components": "^6.1.1",
"tslib": "^2.8.1"
},
"devDependencies": {
"@types/react-copy-to-clipboard": "^5.0.2",
"@types/react-dom": "^18.0.5",
"@types/styled-components": "^5.1.25",
"styled-components": "^5.3.5",
"@types/react-copy-to-clipboard": "^5.0.7",
"@types/react-dom": "^18.2.18",
"xmlserializer": "^0.6.1"
},
"peerDependencies": {
@@ -45,7 +43,6 @@
"@polkadot/util-crypto": "*",
"react": "*",
"react-dom": "*",
"react-is": "*",
"styled-components": "*"
"react-is": "*"
}
}
+34 -34
View File
@@ -1,18 +1,18 @@
// Copyright 2017-2022 @polkadot/react-identicon authors & contributors
// Copyright 2017-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Prefix } from '@polkadot/util-crypto/address/types';
import type { IdentityProps as Props, Props as ComponentProps } from './types';
import type { IdentityProps as Props, Props as ComponentProps } from './types.js';
import React from 'react';
import CopyToClipboard from 'react-copy-to-clipboard';
import styled from 'styled-components';
import { ICON_DEFAULT_HOST, settings } from '@polkadot/ui-settings';
import { isHex, isU8a, u8aToHex } from '@polkadot/util';
import { decodeAddress, encodeAddress, ethereumEncode } from '@polkadot/util-crypto';
import { Beachball, Empty, Ethereum, Jdenticon, Polkadot } from './icons';
import { Beachball, Empty, Ethereum, Jdenticon, Polkadot } from './icons/index.js';
import { styled } from './styled.js';
const Fallback = Beachball;
@@ -31,32 +31,6 @@ const Components: Record<string, React.ComponentType<ComponentProps>> = {
substrate: Jdenticon
};
const Wrapper = styled.div`
cursor: copy;
display: inline-block;
line-height: 0;
> .container {
position: relative;
> div,
> svg {
position: relative;
}
&.highlight:before {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
border-radius: 50%;
box-shadow: 0 0 5px 2px #aaa;
content: '';
}
}
`;
class BaseIcon extends React.PureComponent<Props, State> {
public override state: State = {
address: '',
@@ -90,7 +64,7 @@ class BaseIcon extends React.PureComponent<Props, State> {
address,
publicKey
};
} catch (error) {
} catch {
return {
address: '',
publicKey: '0x'
@@ -115,13 +89,13 @@ class BaseIcon extends React.PureComponent<Props, State> {
}
private getWrapped ({ address, publicKey }: State, { Custom }: Props): React.ReactNode {
const { className = '', isAlternative, isHighlight, size = DEFAULT_SIZE, style, theme = settings.icon } = this.props;
const { className = '', isAlternative, isHighlight, size = DEFAULT_SIZE, style = {}, theme = settings.icon } = this.props;
const Component = !address
? Empty
: Custom || Components[theme === 'default' ? ICON_DEFAULT_HOST : theme] || Fallback;
return (
<Wrapper
<StyledDiv
className={`ui--IdentityIcon ${className}`}
key={address}
style={style}
@@ -133,7 +107,7 @@ class BaseIcon extends React.PureComponent<Props, State> {
publicKey={publicKey}
size={size}
/>
</Wrapper>
</StyledDiv>
);
}
@@ -151,4 +125,30 @@ function Icon (props: Props): React.ReactElement<Props> {
return <BaseIcon {...props} />;
}
const StyledDiv = styled.div`
cursor: copy;
display: inline-block;
line-height: 0;
> .container {
position: relative;
> div,
> svg {
position: relative;
}
&.highlight:before {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
border-radius: 50%;
box-shadow: 0 0 5px 2px #aaa;
content: '';
}
}
`;
export const Identicon = React.memo(Icon);
+4 -5
View File
@@ -1,7 +1,6 @@
// Copyright 2017-2022 @polkadot/react-identicon authors & contributors
// Copyright 2017-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
export * from './icons';
export { Identicon } from './Identicon';
export { packageInfo } from './packageInfo';
export * from './icons/index.js';
export { Identicon } from './Identicon.js';
export { packageInfo } from './packageInfo.js';
@@ -1,7 +0,0 @@
// Copyright 2017-2022 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { packageInfo as settingsInfo } from '@polkadot/ui-settings/packageInfo';
import { packageInfo as sharedInfo } from '@polkadot/ui-shared/packageInfo';
export default [settingsInfo, sharedInfo];
@@ -1,11 +0,0 @@
// Copyright 2017-2022 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
import { detectPackage } from '@polkadot/util';
import others from './detectOther';
import { packageInfo } from './packageInfo';
detectPackage(packageInfo, null, others);
@@ -1,18 +1,21 @@
// Copyright 2017-2022 @polkadot/react-identicon authors & contributors
// Copyright 2017-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Props } from '../types';
import type { Props } from '../types.js';
import React, { useCallback } from 'react';
import { beachballIcon } from '@polkadot/ui-shared';
function Identicon ({ address, className = '', size, style }: Props): React.ReactElement<Props> {
function Identicon ({ address, className = '', size, style = {} }: Props): React.ReactElement<Props> {
const updateElem = useCallback(
(node: HTMLDivElement): void => {
node && node.appendChild(
beachballIcon(address, { isAlternative: false, size })
);
if (node) {
node.innerHTML = '';
node.appendChild(
beachballIcon(address, { isAlternative: false, size })
);
}
},
[address, size]
);
+3 -3
View File
@@ -1,11 +1,11 @@
// Copyright 2017-2022 @polkadot/react-identicon authors & contributors
// Copyright 2017-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Props } from '../types';
import type { Props } from '../types.js';
import React from 'react';
function Identicon ({ className = '', size, style }: Props): React.ReactElement<Props> {
function Identicon ({ className = '', size, style = {} }: Props): React.ReactElement<Props> {
return (
<svg
className={className}
@@ -1,29 +1,37 @@
// Copyright 2017-2022 @polkadot/react-identicon authors & contributors
// Copyright 2017-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Props } from '../types';
import type { Props } from '../types.js';
import makeBlockie from 'ethereum-blockies-base64';
import React, { useMemo } from 'react';
import styled from 'styled-components';
function Identicon ({ address, className = '', style }: Props): React.ReactElement<Props> {
import { styled } from '../styled.js';
interface ImgProps {
size: number;
}
function Identicon ({ address, className = '', size, style = {} }: Props): React.ReactElement<Props> {
const imgSrc = useMemo(
() => makeBlockie(address),
[address]
);
return (
<img
<StyledImg
className={className}
size={size}
src={imgSrc}
style={style}
/>
);
}
export const Ethereum = React.memo(styled(Identicon)(({ size }: Props) => `
const StyledImg = styled.img<ImgProps>(({ size }) => `
display: block;
height: ${size}px;
width: ${size}px;
`));
`);
export const Ethereum = React.memo(Identicon);
@@ -1,14 +1,14 @@
// Copyright 2017-2022 @polkadot/react-identicon authors & contributors
// Copyright 2017-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Props } from '../types';
import type { Props } from '../types.js';
import * as jdenticon from 'jdenticon';
import React, { useMemo } from 'react';
function Identicon ({ className = '', publicKey, size, style }: Props): React.ReactElement<Props> {
function Identicon ({ className = '', publicKey, size, style = {} }: Props): React.ReactElement<Props> {
const html = useMemo(
() => ({ __html: jdenticon.toSvg(publicKey.substr(2), size) }),
() => ({ __html: jdenticon.toSvg(publicKey.substring(2), size) }),
[publicKey, size]
);
@@ -1,4 +1,4 @@
// Copyright 2018-2022 @polkadot/react-identicon authors & contributors
// Copyright 2018-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Copyright 2018 Paritytech via paritytech/oo7/polkadot-identicon
@@ -17,7 +17,7 @@
// - Overall it is now just a static component, expecting an address as an input value
import type { Circle } from '@polkadot/ui-shared/icons/types';
import type { Props } from '../types';
import type { Props } from '../types.js';
import React, { useMemo } from 'react';
@@ -35,7 +35,7 @@ function renderCircle ({ cx, cy, fill, r }: Circle, key: number): React.ReactNod
);
}
function Identicon ({ address, className = '', isAlternative = false, size, style }: Props): React.ReactElement<Props> {
function Identicon ({ address, className = '', isAlternative = false, size, style = {} }: Props): React.ReactElement<Props> {
const circles = useMemo(
() => polkadotIcon(address, { isAlternative }),
[address, isAlternative]
+6 -6
View File
@@ -1,8 +1,8 @@
// Copyright 2017-2022 @polkadot/react-identicon authors & contributors
// Copyright 2017-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { Beachball } from './Beachball';
export { Empty } from './Empty';
export { Ethereum } from './Ethereum';
export { Jdenticon } from './Jdenticon';
export { Polkadot } from './Polkadot';
export { Beachball } from './Beachball.js';
export { Empty } from './Empty.js';
export { Ethereum } from './Ethereum.js';
export { Jdenticon } from './Jdenticon.js';
export { Polkadot } from './Polkadot.js';
+4 -4
View File
@@ -1,10 +1,10 @@
// Copyright 2017-2022 @polkadot/react-identicon authors & contributors
// Copyright 2017-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import './detectPackage';
import './packageDetect.js';
import { Identicon } from './bundle';
import { Identicon } from './bundle.js';
export * from './bundle';
export * from './bundle.js';
export default Identicon;
@@ -0,0 +1,13 @@
// Copyright 2017-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
// (packageInfo imports will be kept as-is, user-editable)
import { packageInfo as settingsInfo } from '@polkadot/ui-settings/packageInfo';
import { packageInfo as sharedInfo } from '@polkadot/ui-shared/packageInfo';
import { detectPackage } from '@polkadot/util';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, [settingsInfo, sharedInfo]);
+2 -2
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2022 @polkadot/react-identicon authors & contributors
// Copyright 2017-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
export const packageInfo = { name: '@polkadot/react-identicon', path: 'auto', type: 'auto', version: '2.5.1' };
export const packageInfo = { name: '@polkadot/react-identicon', path: 'auto', type: 'auto', version: '3.16.7' };
+4
View File
@@ -0,0 +1,4 @@
// Copyright 2017-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { styled } from 'styled-components';
+3 -6
View File
@@ -1,10 +1,9 @@
// Copyright 2018-2022 @polkadot/react-identicon authors & contributors
// Copyright 2018-2026 @polkadot/react-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type React from 'react';
import type { Prefix } from '@polkadot/util-crypto/address/types';
import React from 'react';
export interface BaseProps {
className?: string;
style?: React.CSSProperties;
@@ -12,11 +11,9 @@ export interface BaseProps {
export interface Props extends BaseProps {
address: string;
isAlternative?: boolean;
className?: string;
isAlternative?: boolean | undefined;
publicKey: string;
size: number;
style?: React.CSSProperties;
}
export interface IdentityProps extends BaseProps {
-201
View File
@@ -1,201 +0,0 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+14 -16
View File
@@ -1,11 +1,12 @@
{
"author": "Jaco Greeff <jacogr@gmail.com>",
"bugs": "https://github.com/polkadot-js/ui/issues",
"contributors": [],
"description": "Generates and reads QR codes",
"engines": {
"node": ">=18"
},
"homepage": "https://github.com/polkadot-js/ui/tree/master/packages/react-qr#readme",
"license": "Apache-2.0",
"maintainers": [],
"name": "@polkadot/react-qr",
"repository": {
"directory": "packages/react-qr",
@@ -13,30 +14,27 @@
"url": "https://github.com/polkadot-js/ui.git"
},
"sideEffects": [
"./detectPackage.js",
"./detectPackage.cjs"
"./packageDetect.js",
"./packageDetect.cjs"
],
"type": "module",
"version": "2.5.1",
"version": "3.16.7",
"main": "index.js",
"dependencies": {
"@babel/runtime": "^7.18.3",
"@polkadot/ui-settings": "2.5.1",
"@polkadot/util": "^9.5.1",
"@polkadot/util-crypto": "^9.5.1",
"@polkadot/ui-settings": "3.16.7",
"@polkadot/util": "^14.0.3",
"@polkadot/util-crypto": "^14.0.3",
"@zxing/browser": "^0.1.5",
"@zxing/library": "^0.21.2",
"qrcode-generator": "^1.4.4",
"react-qr-reader": "^2.2.1",
"styled-components": "^5.3.5"
},
"devDependencies": {
"@types/react-qr-reader": "^2.1.4",
"@types/styled-components": "^5.1.25"
"styled-components": "^6.1.1",
"tslib": "^2.8.1"
},
"peerDependencies": {
"@polkadot/util": "*",
"@polkadot/util-crypto": "*",
"react": "*",
"react-dom": "*",
"styled-components": "*"
"react-is": "*"
}
}
+17 -15
View File
@@ -1,21 +1,21 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
import React, { useEffect, useMemo, useRef, useState } from 'react';
import styled from 'styled-components';
import { objectSpread } from '@polkadot/util';
import { xxhashAsHex } from '@polkadot/util-crypto';
import { qrcode } from './qrcode';
import { createFrames, createImgSize } from './util';
import { qrcode } from './qrcode.js';
import { styled } from './styled.js';
import { createFrames, createImgSize } from './util.js';
interface Props {
className?: string;
size?: string | number;
className?: string | undefined;
size?: string | number | undefined;
skipEncoding?: boolean;
style?: React.CSSProperties;
timerDelay?: number;
style?: React.CSSProperties | undefined;
timerDelay?: number | undefined;
value: Uint8Array;
}
@@ -28,7 +28,7 @@ interface FrameState {
interface TimerState {
timerDelay: number;
timerId: number | null;
timerId: ReturnType<typeof setTimeout> | null;
}
const DEFAULT_FRAME_DELAY = 2750;
@@ -45,7 +45,7 @@ function getDataUrl (value: Uint8Array): string {
return qr.createDataURL(16, 0);
}
function Display ({ className, size, skipEncoding, style, timerDelay = DEFAULT_FRAME_DELAY, value }: Props): React.ReactElement<Props> | null {
function Display ({ className = '', size, skipEncoding, style = {}, timerDelay = DEFAULT_FRAME_DELAY, value }: Props): React.ReactElement<Props> | null {
const [{ image }, setFrameState] = useState<FrameState>({ frameIdx: 0, frames: [], image: null, valueHash: null });
const timerRef = useRef<TimerState>({ timerDelay, timerId: null });
@@ -84,7 +84,7 @@ function Display ({ className, size, skipEncoding, style, timerDelay = DEFAULT_F
return newState;
});
timerRef.current.timerId = window.setTimeout(nextFrame, timerRef.current.timerDelay);
timerRef.current.timerId = setTimeout(nextFrame, timerRef.current.timerDelay);
return (): void => {
// eslint-disable-next-line react-hooks/exhaustive-deps
@@ -120,7 +120,7 @@ function Display ({ className, size, skipEncoding, style, timerDelay = DEFAULT_F
}
return (
<div
<StyledDiv
className={className}
style={containerStyle}
>
@@ -130,11 +130,11 @@ function Display ({ className, size, skipEncoding, style, timerDelay = DEFAULT_F
>
<img src={image} />
</div>
</div>
</StyledDiv>
);
}
export const QrDisplay = React.memo(styled(Display)`
const StyledDiv = styled.div`
.ui--qr-Display {
height: 100%;
width: 100%;
@@ -148,4 +148,6 @@ export const QrDisplay = React.memo(styled(Display)`
width: auto !important;
}
}
`);
`;
export const QrDisplay = React.memo(Display);
+3 -3
View File
@@ -1,10 +1,10 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
import React, { useMemo } from 'react';
import { QrDisplay } from './Display';
import { createAddressPayload } from './util';
import { QrDisplay } from './Display.js';
import { createAddressPayload } from './util.js';
interface Props {
address: string;
+3 -3
View File
@@ -1,10 +1,10 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
import React, { useMemo } from 'react';
import { QrDisplay } from './Display';
import { createSignPayload } from './util';
import { QrDisplay } from './Display.js';
import { createSignPayload } from './util.js';
interface Props {
address: string;
+3 -3
View File
@@ -1,12 +1,12 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { NetworkSpecsStruct } from '@polkadot/ui-settings/types';
import React, { useMemo } from 'react';
import { QrDisplay } from './Display';
import { encodeString } from './util';
import { QrDisplay } from './Display.js';
import { encodeString } from './util.js';
interface Props {
className?: string;
+58 -26
View File
@@ -1,19 +1,19 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
import React, { useCallback, useMemo } from 'react';
import Reader from 'react-qr-reader';
import styled from 'styled-components';
import { BrowserQRCodeReader, type IScannerControls } from '@zxing/browser';
import React, { useCallback, useEffect, useMemo, useRef } from 'react';
import { createImgSize } from './util';
import { styled } from './styled.js';
import { createImgSize } from './util.js';
interface Props {
className?: string;
className?: string | undefined;
delay?: number;
onError?: (error: Error) => void;
onError?: undefined | ((error: Error) => void);
onScan: (data: string) => void;
size?: string | number;
style?: React.CSSProperties;
size?: string | number | undefined;
style?: React.CSSProperties | undefined;
}
const DEFAULT_DELAY = 150;
@@ -22,7 +22,10 @@ const DEFAULT_ERROR = (error: Error): void => {
console.error('@polkadot/react-qr:Scan', error.message);
};
function Scan ({ className, delay = DEFAULT_DELAY, onError = DEFAULT_ERROR, onScan, size, style }: Props): React.ReactElement<Props> {
function Scan ({ className = '', delay = DEFAULT_DELAY, onError = DEFAULT_ERROR, onScan, size, style = {} }: Props): React.ReactElement<Props> {
const videoRef = useRef<HTMLVideoElement>(null);
const controlsRef = useRef<IScannerControls | null>(null);
const containerStyle = useMemo(
() => createImgSize(size),
[size]
@@ -33,36 +36,65 @@ function Scan ({ className, delay = DEFAULT_DELAY, onError = DEFAULT_ERROR, onSc
[onError]
);
const _onScan = useCallback(
(data: string | null) => data && onScan(data),
[onScan]
);
useEffect(() => {
const codeReader = new BrowserQRCodeReader();
const startScanning = async () => {
try {
const videoInputDevices = await BrowserQRCodeReader.listVideoInputDevices();
const selectedDeviceId = videoInputDevices[0].deviceId;
controlsRef.current = await codeReader.decodeFromVideoDevice(
selectedDeviceId,
videoRef.current ?? undefined,
(result, error) => {
if (result) {
onScan(result.getText());
}
if (error && !(error instanceof Error)) {
_onError(new Error(error));
}
}
);
} catch (error) {
_onError(error instanceof Error ? error : new Error('Unknown error occurred'));
}
};
// eslint-disable-next-line @typescript-eslint/no-misused-promises
const timeoutId = setTimeout(startScanning, delay);
return () => {
clearTimeout(timeoutId);
if (controlsRef.current) {
controlsRef.current.stop();
}
};
}, [onScan, _onError, delay]);
return (
<div
<StyledDiv
className={className}
style={containerStyle}
>
<Reader
<video
className='ui--qr-Scan'
delay={delay}
onError={_onError}
onScan={_onScan}
ref={videoRef}
style={style}
/>
</div>
</StyledDiv>
);
}
export const QrScan = React.memo(styled(Scan)`
const StyledDiv = styled.div`
.ui--qr-Scan {
display: inline-block;
height: 100%;
transform: matrix(-1, 0, 0, 1, 0, 0);
width: 100%;
video {
margin: 0;
}
}
`);
`;
export const QrScan = React.memo(Scan);
+16 -10
View File
@@ -1,19 +1,20 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { HexString } from '@polkadot/util/types';
import React, { useCallback } from 'react';
import { assert } from '@polkadot/util';
import { decodeAddress } from '@polkadot/util-crypto';
import { ADDRESS_PREFIX, SEED_PREFIX } from './constants';
import { QrScan } from './Scan';
import { ADDRESS_PREFIX, SEED_PREFIX } from './constants.js';
import { QrScan } from './Scan.js';
interface ScanType {
isAddress: boolean;
content: string;
genesisHash: string;
name?: string;
genesisHash: HexString | null;
name?: string | undefined;
}
interface Props {
@@ -30,20 +31,25 @@ function ScanAddress ({ className, isEthereum, onError, onScan, size, style }: P
(data: string | null): void => {
if (data) {
try {
let prefix: string, content: string, genesisHash: string, name: string[];
let prefix: string;
let content: string;
let genesisHash: string | null;
let name: string[];
if (!isEthereum) {
[prefix, content, genesisHash, ...name] = data.split(':');
} else {
[prefix, content, ...name] = data.split(':');
genesisHash = '';
genesisHash = null;
content = content.substring(0, 42);
}
const expectedPrefix = (isEthereum ? 'ethereum' : ADDRESS_PREFIX);
const isValidPrefix = (prefix === expectedPrefix) || (prefix === SEED_PREFIX);
assert(isValidPrefix, `Invalid prefix received, expected '${expectedPrefix} or ${SEED_PREFIX}' , found '${prefix}'`);
if (!isValidPrefix) {
throw new Error(`Invalid prefix received, expected '${expectedPrefix} or ${SEED_PREFIX}' , found '${prefix}'`);
}
const isAddress = prefix === expectedPrefix;
@@ -51,7 +57,7 @@ function ScanAddress ({ className, isEthereum, onError, onScan, size, style }: P
decodeAddress(content);
}
onScan({ content, genesisHash, isAddress, name: name?.length ? name.join(':') : undefined });
onScan({ content, genesisHash: genesisHash as HexString, isAddress, name: name?.length ? name.join(':') : undefined });
} catch (error) {
onError && onError(error as Error);
+2 -2
View File
@@ -1,11 +1,11 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { HexString } from '@polkadot/util/types';
import React, { useCallback } from 'react';
import { QrScan } from './Scan';
import { QrScan } from './Scan.js';
interface ScanType {
signature: HexString;
+7 -7
View File
@@ -1,9 +1,9 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { QrDisplayAddress } from './DisplayAddress';
export { QrDisplayPayload } from './DisplayPayload';
export { QrScanAddress } from './ScanAddress';
export { QrScanSignature } from './ScanSignature';
export { QrNetworkSpecs } from './NetworkSpecs';
export { packageInfo } from './packageInfo';
export { QrDisplayAddress } from './DisplayAddress.js';
export { QrDisplayPayload } from './DisplayPayload.js';
export { QrNetworkSpecs } from './NetworkSpecs.js';
export { packageInfo } from './packageInfo.js';
export { QrScanAddress } from './ScanAddress.js';
export { QrScanSignature } from './ScanSignature.js';
+10 -22
View File
@@ -1,24 +1,12 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
const ADDRESS_PREFIX = 'substrate';
const SEED_PREFIX = 'secret';
const FRAME_SIZE = 1024;
const SUBSTRATE_ID = new Uint8Array([0x53]);
const CRYPTO_SR25519 = new Uint8Array([0x01]);
const CMD_SIGN_TX = new Uint8Array([0]);
const CMD_SIGN_TX_HASH = new Uint8Array([1]);
const CMD_SIGN_IMMORTAL_TX = new Uint8Array([2]);
const CMD_SIGN_MSG = new Uint8Array([3]);
export {
ADDRESS_PREFIX,
CMD_SIGN_TX,
CMD_SIGN_TX_HASH,
CMD_SIGN_IMMORTAL_TX,
CMD_SIGN_MSG,
CRYPTO_SR25519,
FRAME_SIZE,
SEED_PREFIX,
SUBSTRATE_ID
};
export const ADDRESS_PREFIX = 'substrate';
export const SEED_PREFIX = 'secret';
export const FRAME_SIZE = 1024;
export const SUBSTRATE_ID = new Uint8Array([0x53]);
export const CRYPTO_SR25519 = new Uint8Array([0x01]);
export const CMD_SIGN_TX = new Uint8Array([0]);
export const CMD_SIGN_TX_HASH = new Uint8Array([1]);
export const CMD_SIGN_IMMORTAL_TX = new Uint8Array([2]);
export const CMD_SIGN_MSG = new Uint8Array([3]);
-6
View File
@@ -1,6 +0,0 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Empty template, auto-generated by @polkadot/dev
export default [];
-11
View File
@@ -1,11 +0,0 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
import { detectPackage } from '@polkadot/util';
import others from './detectOther';
import { packageInfo } from './packageInfo';
detectPackage(packageInfo, null, others);
+3 -3
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
import './detectPackage';
import './packageDetect.js';
export * from './bundle';
export * from './bundle.js';
+11
View File
@@ -0,0 +1,11 @@
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
// (packageInfo imports will be kept as-is, user-editable)
import { detectPackage } from '@polkadot/util';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, []);
+2 -2
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
export const packageInfo = { name: '@polkadot/react-qr', path: 'auto', type: 'auto', version: '2.5.1' };
export const packageInfo = { name: '@polkadot/react-qr', path: 'auto', type: 'auto', version: '3.16.7' };
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
import _qrcode from 'qrcode-generator';
+4
View File
@@ -0,0 +1,4 @@
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { styled } from 'styled-components';
+4 -2
View File
@@ -1,10 +1,12 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
import { u8aConcat, u8aToHex, u8aToString } from '@polkadot/util';
import { randomAsU8a } from '@polkadot/util-crypto';
import { createAddressPayload, createFrames, createSignPayload, decodeString, encodeNumber, encodeString } from './util';
import { createAddressPayload, createFrames, createSignPayload, decodeString, encodeNumber, encodeString } from './util.js';
describe('util', (): void => {
describe('Uint8Array <-> string', (): void => {
+5 -4
View File
@@ -1,10 +1,10 @@
// Copyright 2017-2022 @polkadot/react-qr authors & contributors
// Copyright 2017-2026 @polkadot/react-qr authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { isString, u8aConcat, u8aToU8a } from '@polkadot/util';
import { decodeAddress } from '@polkadot/util-crypto';
import { ADDRESS_PREFIX, CRYPTO_SR25519, FRAME_SIZE, SUBSTRATE_ID } from './constants';
import { ADDRESS_PREFIX, CRYPTO_SR25519, FRAME_SIZE, SUBSTRATE_ID } from './constants.js';
const MULTIPART = new Uint8Array([0]);
@@ -13,9 +13,10 @@ export function encodeNumber (value: number): Uint8Array {
}
export function encodeString (value: string): Uint8Array {
const u8a = new Uint8Array(value.length);
const count = value.length;
const u8a = new Uint8Array(count);
for (let i = 0; i < value.length; i++) {
for (let i = 0; i < count; i++) {
u8a[i] = value.charCodeAt(i);
}
+3
View File
@@ -5,6 +5,9 @@
"outDir": "./build",
"rootDir": "./src"
},
"exclude": [
"**/*.spec.ts"
],
"references": [
{ "path": "../ui-settings/tsconfig.build.json" }
]
+16
View File
@@ -0,0 +1,16 @@
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
"baseUrl": "..",
"outDir": "./build",
"rootDir": "./src",
"emitDeclarationOnly": false,
"noEmit": true
},
"include": [
"**/*.spec.ts"
],
"references": [
{ "path": "../react-qr/tsconfig.build.json" }
]
}
-201
View File
@@ -1,201 +0,0 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+12 -11
View File
@@ -1,11 +1,12 @@
{
"author": "Jaco Greeff <jacogr@gmail.com>",
"bugs": "https://github.com/polkadot-js/ui/issues",
"contributors": [],
"description": "Renders an SVG picture representing an address",
"engines": {
"node": ">=18"
},
"homepage": "https://github.com/polkadot-js/ui/tree/master/packages/reactnative-identicon#readme",
"license": "Apache-2.0",
"maintainers": [],
"name": "@polkadot/reactnative-identicon",
"repository": {
"directory": "packages/reactnative-identicon",
@@ -13,21 +14,21 @@
"url": "https://github.com/polkadot-js/ui.git"
},
"sideEffects": [
"./detectPackage.js",
"./detectPackage.cjs"
"./packageDetect.js",
"./packageDetect.cjs"
],
"type": "module",
"version": "2.5.1",
"version": "3.16.7",
"main": "index.js",
"dependencies": {
"@babel/runtime": "^7.18.3",
"@polkadot/ui-shared": "2.5.1",
"@polkadot/util": "^9.5.1",
"@polkadot/util-crypto": "^9.5.1",
"react-native-svg": "^12.3.0"
"@polkadot/ui-shared": "3.16.7",
"@polkadot/util": "^14.0.3",
"@polkadot/util-crypto": "^14.0.3",
"react-native-svg": "^14.1.0",
"tslib": "^2.8.1"
},
"devDependencies": {
"@types/react-native": "^0.67.8"
"@types/react-native": "^0.72.8"
},
"peerDependencies": {
"@polkadot/util": "*",
@@ -1,15 +1,15 @@
// Copyright 2017-2022 @polkadot/reactnative-identicon authors & contributors
// Copyright 2017-2026 @polkadot/reactnative-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Prefix } from '@polkadot/util-crypto/address/types';
import type { Props as ComponentProps } from './types';
import type { Props as ComponentProps } from './types.js';
import React from 'react';
import { isHex, isU8a, u8aToHex } from '@polkadot/util';
import { decodeAddress, encodeAddress } from '@polkadot/util-crypto';
import { Empty, Polkadot } from './icons';
import { Empty, Polkadot } from './icons/index.js';
const Fallback = Polkadot;
@@ -54,7 +54,7 @@ export default class IdentityIcon extends React.PureComponent<Props, State> {
return address === prevState.address
? null
: { address, publicKey };
} catch (error) {
} catch {
return {
address: '',
publicKey: '0x'
@@ -63,7 +63,7 @@ export default class IdentityIcon extends React.PureComponent<Props, State> {
}
public override render (): React.ReactNode {
const { theme = DEFAULT_THEME, size = DEFAULT_SIZE } = this.props;
const { size = DEFAULT_SIZE, theme = DEFAULT_THEME } = this.props;
const { address, publicKey } = this.state;
const Component = !address
+3 -3
View File
@@ -1,5 +1,5 @@
// Copyright 2017-2022 @polkadot/reactnative-identicon authors & contributors
// Copyright 2017-2026 @polkadot/reactnative-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
export * from './icons';
export { packageInfo } from './packageInfo';
export * from './icons/index.js';
export { packageInfo } from './packageInfo.js';
@@ -1,6 +0,0 @@
// Copyright 2017-2022 @polkadot/reactnative-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { packageInfo as sharedInfo } from '@polkadot/ui-shared/packageInfo';
export default [sharedInfo];
@@ -1,11 +0,0 @@
// Copyright 2017-2022 @polkadot/reactnative-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
import { detectPackage } from '@polkadot/util';
import others from './detectOther';
import { packageInfo } from './packageInfo';
detectPackage(packageInfo, null, others);
@@ -1,11 +1,11 @@
// Copyright 2017-2022 @polkadot/reactnative-identicon authors & contributors
// Copyright 2017-2026 @polkadot/reactnative-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Props } from '../types';
import type { Props } from '../types.js';
import React from 'react';
import { View } from 'react-native';
import Svg, { Circle } from 'react-native-svg';
import { Circle, Svg } from 'react-native-svg';
export default function Empty ({ size }: Props): React.ReactElement<Props> {
return (
@@ -1,12 +1,12 @@
// Copyright 2018-2022 @polkadot/reactnative-identicon authors & contributors
// Copyright 2018-2026 @polkadot/reactnative-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Circle as CircleType } from '@polkadot/ui-shared/icons/types';
import type { Props } from '../types';
import type { Props } from '../types.js';
import React, { useMemo } from 'react';
import { View } from 'react-native';
import Svg, { Circle as SvgCircle } from 'react-native-svg';
import { Circle as SvgCircle, Svg } from 'react-native-svg';
import { polkadotIcon } from '@polkadot/ui-shared';
@@ -1,5 +1,5 @@
// Copyright 2017-2022 @polkadot/reactnative-identicon authors & contributors
// Copyright 2017-2026 @polkadot/reactnative-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { default as Empty } from './Empty';
export { default as Polkadot } from './Polkadot';
export { default as Empty } from './Empty.js';
export { default as Polkadot } from './Polkadot.js';
+4 -4
View File
@@ -1,10 +1,10 @@
// Copyright 2017-2022 @polkadot/reactnative-identicon authors & contributors
// Copyright 2017-2026 @polkadot/reactnative-identicon authors & contributors
// SPDX-License-Identifier: Apache-2.0
import './detectPackage';
import './packageDetect.js';
import Identicon from './Identicon';
import Identicon from './Identicon.js';
export * from './bundle';
export * from './bundle.js';
export default Identicon;

Some files were not shown because too many files have changed in this diff Show More