f2a1ab3a72aa3bad4bd37a0b88b3554f179feeb8
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
@polkadot/ui
Basic browser and framework agnostic UI components for creating apps using the polkadot{.js} libraries
overview
The following UI components are currently available -
- react-identicon React identity icon generator with address as input
- reactnative-identicon React Native identity icon generator with address as input
- vue-identicon Vue identity icon generator with address as input
- react-qr QR code generator/reader for uos (Substrate/Polkadot only)
Additionally some shared libraries, that are not dependent on any framework -
- ui-keyring A browser-specific wrapper around the base @polkadot/keyring library
- ui-settings A browser local storage wrapper for app settings & configuration
- ui-shared Shared logic that is used across UI components, e.g. for icon generation
Description
Fork of polkadot-js/ui. @polkadot/ui-keyring reconstructs a pair's public key from its address, which a Quantus account id (a one-way Poseidon2 hash of the public key) cannot supply — account restore has to read the key from the encrypted blob instead.
33 MiB
Languages
TypeScript
98.4%
JavaScript
1%
HTML
0.6%