Compare commits

...
41 Commits
Author SHA1 Message Date
github-actions[bot] df2039f54d [CI Skip] release/stable 10.12.1
skip-checks: true
2024-03-04 12:16:27 +00:00
Tarik Gul 501638b2d9 10.12.1 (#5804)
* 10.12.1

* remove 10.12.0
2024-03-04 14:09:15 +02:00
Tarik Gul d163d91909 10.12.0 (#5802)
* 10.12.0

* extra space in changelog
2024-03-04 06:08:42 +02:00
github-actions[bot] dc7f687563 [CI Skip] bump/beta 10.11.4-0-x
skip-checks: true
2024-03-02 14:25:25 +00:00
peetzweg/ ca4802326c feat: ink! v5 (#5791)
* adds definitions and types according to ink v5 changes

* adds toV5 boilerplate code draft

* adds v5 flipper test contract code

* fix license dates

* adds test v5 toLatest test

* implements new scheme to determine event

* apply linter changes

* adds test result outputs

* change `EventRecord['topics'][0]` type to plain `Hash`

* adds testcases for decoding payload data of a ink!v4 and ink!v5 event

* changes `Abi.decodeEvent(data:Bytes)` method interface to `Abi.decodeEvent(record:EventRecord)` which includes the event and the topic for decoding.

* draft implementation with version metadata

* cleaner implementation of versioned Metadata by actually leveraging the `version` field included since v2 contract metadata

* trying to make linter happy

* makes `ContractMetadataSupported` in internal to `Abi` type and not exposing it externally.

* properly types unused parameter for tsc 🤷

* adds `@polkadot/types-support` dev dependency

* Update yarn.lock

* references `types-support` in `api-contract

* resolving change requests

* resolves linter warnings

* changes ContractMetadataV5 field to `u64` from `Text`

* adds contracts and contract metadata compiled with the most recent ink version

* implements decoding of anonymous events if possible

* removes done todo comments
2024-03-02 09:18:14 -05:00
github-actions[bot] f9b2d26381 [CI Skip] release/stable 10.11.3
skip-checks: true
2024-02-27 15:21:23 +00:00
Tarik Gul 28a5ac4279 10.11.3 (#5799)
* 10.11.3

* add space in changelog
2024-02-27 17:14:13 +02:00
github-actions[bot] feb652cef3 [CI Skip] bump/beta 10.11.3-10-x
skip-checks: true
2024-02-23 13:06:20 +00:00
Matias Volpe f87479f9da chore: bump @substrate/connect to 0.8.7 (#5797) 2024-02-23 07:59:07 -05:00
github-actions[bot] 2be54afe24 [CI Skip] bump/beta 10.11.3-9-x
skip-checks: true
2024-02-21 13:36:10 +00:00
Matias Volpe 24d9d053a1 feat: bump @substrate/connect to 0.8.6 (#5796) 2024-02-21 14:28:51 +01:00
github-actions[bot] 3299292368 [CI Skip] bump/beta 10.11.3-8-x
skip-checks: true
2024-02-17 14:16:08 +00:00
Tarik Gul 58b320a791 chore(yarn): update yarn to 4.1.0 (#5792) 2024-02-17 16:08:47 +02:00
github-actions[bot] 6998d9232b [CI Skip] bump/beta 10.11.3-7-x
skip-checks: true
2024-02-17 01:57:13 +00:00
Tarik Gul 43e11d8f56 ci: add user (TarikGul) to auto-approve (#5793) 2024-02-17 03:49:46 +02:00
github-actions[bot] 22d06b93a6 [CI Skip] bump/beta 10.11.3-6-x
skip-checks: true
2024-01-26 14:19:26 +00:00
Matias Volpe bc3f066c3b feat: upgrade to substrate-connect v0.8.4 (#5776)
* feat: upgrade to substrate-connect v0.8.4

* feat(rpc-provider): re-write addChain for @substrate/connect

* fix: linting
2024-01-26 15:11:58 +01:00
github-actions[bot] de30dd5bfe [CI Skip] bump/beta 10.11.3-5-x
skip-checks: true
2024-01-26 10:46:12 +00:00
Marc Fornósandgithub-actions[bot] a64228c9b2 add beefy compact signed commitment definition (#5781)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-26 12:38:40 +02:00
github-actions[bot] 5374f8448f [CI Skip] bump/beta 10.11.3-4-x
skip-checks: true
2024-01-26 07:44:18 +00:00
Tarik Gul c5371c146b feat(rpc-provider): allow cacheCapacity option for WsProvider (#5778)
* feat(rpc-provider): allow cacheCapacity option for WsProvider

* change args ordering to avoid breaking change
2024-01-26 09:36:51 +02:00
github-actions[bot] 5de73b706e [CI Skip] bump/beta 10.11.3-3-x
skip-checks: true
2024-01-24 07:04:22 +00:00
Jaco 7fc736769a Bump deps (#5785)
* Bump deps

* Satisfy linter on unsubscribe
2024-01-24 08:56:56 +02:00
github-actions[bot] 747855b161 [CI Skip] bump/beta 10.11.3-2-x
skip-checks: true
2024-01-08 13:14:41 +00:00
Jaco 3bdf49b042 2024 (#5777) 2024-01-08 15:07:13 +02:00
github-actions[bot] 93175f6a01 [CI Skip] bump/beta 10.11.3-1-x
skip-checks: true
2023-12-19 09:28:14 +00:00
Robert Gabriel Jakabosky b4150d5dbf Fix sorting of Option values and error on duplicates from BTreeSet/BTreeMap. (#5731)
* Fix sorting of Option<Enum> values.

* Filter duplicates from BTreeSet/BTreeMap.

* Throw error instead of filtering duplicates.

* Test duplicate values and Option(Enum) sorting.

* Add tests for BTreeMap.

* Add None values to tests.
2023-12-19 11:20:48 +02:00
github-actions[bot] dfbbfa8a7d [CI Skip] bump/beta 10.11.3-0-x
skip-checks: true
2023-12-19 08:57:50 +00:00
Jaco 97116a3d8a Bump dev w/ packageDetect adjustments (#5775) 2023-12-19 10:50:28 +02:00
github-actions[bot] 0c7fed3090 [CI Skip] release/stable 10.11.2
skip-checks: true
2023-12-18 10:27:35 +00:00
Jaco 5a4414d36d 10.11.2 (#5774)
* 10.11.2

* Adj metadata CHANGELOG entry
2023-12-18 12:20:15 +02:00
github-actions[bot] 7d41d34a03 [CI Skip] bump/beta 10.11.2-4-x
skip-checks: true
2023-12-18 08:36:29 +00:00
Jaco f983b6aa90 Bump yarn berry, bump deps (#5772) 2023-12-18 10:29:05 +02:00
github-actions[bot] 9271f7f05a [CI Skip] bump/beta 10.11.2-3-x
skip-checks: true
2023-12-18 07:10:53 +00:00
Jaco 46c00d4883 Adjust known lookup with support for [u8;32] (#5764) 2023-12-18 09:03:08 +02:00
github-actions[bot] 2d26e748f0 [CI Skip] bump/beta 10.11.2-2-x
skip-checks: true
2023-12-11 08:33:39 +00:00
Jaco db1a699c0a Bump to latest Substrate metadata (#5770) 2023-12-11 10:25:48 +02:00
github-actions[bot] 53f9abe4e2 [CI Skip] bump/beta 10.11.2-1-x
skip-checks: true
2023-12-11 08:23:16 +00:00
Francisco Gamundi 263d2a40f3 Add chainIsEthereum prop to Registry interface (#5761) 2023-12-11 10:15:29 +02:00
github-actions[bot] c73c26d133 [CI Skip] bump/beta 10.11.2-0-x
skip-checks: true
2023-11-26 10:18:13 +00:00
Alberto Nicolas Penayo 63afad4862 updated remaining assetId for ChargeAssetTxPayment (#5763) 2023-11-26 12:10:32 +02:00
979 changed files with 22274 additions and 13464 deletions
+1 -1
View File
@@ -11,6 +11,6 @@ jobs:
steps:
- uses: jacogr/action-approve@795afd1dd096a2071d7ec98740661af4e853b7da
with:
authors: jacogr
authors: jacogr, TarikGul
labels: -auto
token: ${{ secrets.GH_PAT_BOT }}
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api authors & contributors
// Copyright 2017-2024 @polkadot/api authors & contributors
// SPDX-License-Identifier: Apache-2.0
module.exports = require('@polkadot/dev/config/prettier.cjs');
View File
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
+893
View File
File diff suppressed because one or more lines are too long
+5 -8
View File
@@ -1,18 +1,15 @@
compressionLevel: mixed
enableGlobalCache: false
enableImmutableInstalls: false
enableProgressBars: false
logFilters:
# Discard any "cannot be found in cache" messages
- 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-3.2.0.cjs
yarnPath: .yarn/releases/yarn-4.1.0.cjs
+37
View File
@@ -1,5 +1,42 @@
# CHANGELOG
## 10.12.1 Mar 4, 2024
Contributed:
- Ink! V5 Support (Thanks to https://github.com/peetzweg)
## 10.11.3 Feb 27, 2024
Contributed:
- Fix sorting of `Option` values and error on duplicates from BTreeSet/BTreeMap (Thanks to https://github.com/Neopallium)
- Fix BEEFY compact signed commitment in versioned finality proofs (Thanks to https://github.com/mfornos)
- Update @substrate/connect (Thanks to https://github.com/kratico)
Changes:
- Bump dev w/ packageDetect adjustments
- Update copyright year
- Bump nock, and dev deps
- Allow `cacheCapacity` option for the `WsProvider`
- Bump yarn
## 10.11.2 Dec 18, 2023
Contributed:
- Add `chainIsEthereum` key to `Registry` interface (Thanks to https://github.com/fgamundi)
- Adjust types for `ChargeAssetTxPayment` (Thanks to https://github.com/bee344)
Changes:
- Support `[8a;32]` types in known keys
- Update to latest Substrate metadata
## 10.11.1 Nov 18, 2023
Contributed:
+8 -5
View File
@@ -1,4 +1,4 @@
3505 Jaco 10.11.1 (#5759)
3512 Jaco Bump deps (#5785)
83 Amaury Martiny StatementKind: Regular and Saft (#2303)
37 Keith Ingram Update contract types and rpc (#4541)
35 Stefanie Doll Updated child storage parameters (#1709)
@@ -8,6 +8,7 @@
14 Nikos Kontakis Bump substrate connect to 0.7.16 (#5307)
11 Ian He HttpProvider support clone() (#3949)
10 Axel Chalon Make Enum/Tuple constructor use value directly if instance (#1954)
7 Tarik Gul 10.12.1 (#5804)
6 Andreea Eftene Update check for contract instantiation (#5699)
5 Chevdor Fix metadata package link (#3458)
5 Jake Naviasky Fixing approvalFlagsToBools. (#1250)
@@ -28,12 +29,15 @@
3 Hamza Tokuchi more typos (#2532)
3 Josep M Sobrepere docs: improve rpc-provider README (#4719)
3 KarishmaBothara Backward compatibility thing (#3511)
3 Matias Volpe chore: bump @substrate/connect to 0.8.7 (#5797)
3 Miguel Hervas Adding RT4 Types (#3007)
3 Shawn Tabrizi Add `isReadyOrError` when connecting to API (#2577)
3 YJ feat: Vote interface as U8a (#1061)
2 Alberto Nicolas Penayo updated remaining assetId for ChargeAssetTxPayment (#5763)
2 Alexander Krupenkin Add [u8; 33] type width for U8aFixed type (#2391)
2 Branan Riley Add proxy type for Centrifuge (#3940)
2 Caio Add `Range` and `RangeInclusive` types (#3791)
2 Francisco Gamundi Add chainIsEthereum prop to Registry interface (#5761)
2 HackFisher Update maxExtrinsic definition (#4703)
2 Jakub Pánik All heads subscription (#1899)
2 James Lefrère Add `.eq()` usage to docs and fix docs typos (#1405)
@@ -42,6 +46,7 @@
2 Keith Yeung Allow keyPrefix to accept an additional argument for double maps (#2230)
2 MOZGIII Follow-up fix after #4665 (#4666)
2 Paweł Nguyen Fix a minor typo in cookbook blocks docs (#2294)
2 peetzweg/ feat: ink! v5 (#5791)
2 rob thijssen nimbus author mapping correction (#5590)
2 sung wu Update tx.md (#2485)
2 Veliko Abi constructor takes different parameters (#3347)
@@ -50,7 +55,6 @@
2 Zannis Kalampoukis fix: Typegen handles structs and vectors of structs without erroring (#4743)
2 扩散性百万甜面包 Typo, deocrateMethod -> decorateMethod (#1594)
1 Alan Sapede Adds Eth feeHistory & maxPriorityFeePerGas rpc (#4956)
1 Alberto Nicolas Penayo fix: ChargeAssetTxPayment to work with Asset Conversion on Westend's and Kusama's Asset Hubs (#5752)
1 Aleš Ferlan fix: use H160 for address in getTransactionCount (#5472)
1 Brad Larson [NEW] Support for custom headers with providers (#2423)
1 Btwiuse Arch Add side effect check workaround (#4994) (#5009)
@@ -68,7 +72,6 @@
1 Dylan Galea Updated users of the polkadot-js/api (#2027)
1 flex Change BeefySignedCommitment signatures type to EcdsaSignature (#4204)
1 Florian Franzen metadataMd: use endpoint for rpc and runtime details too (#5628)
1 Francisco Gamundi Add isEthereum to ChainProperties (#5686)
1 Furqan A fix: fixed 404 to the docs from the api readme (#3985)
1 Gérard Dethier Fix LRUCache memory leak. (#4520)
1 Gerben van de Wiel Adding some extra notes on changes in the specname (#2329)
@@ -88,6 +91,7 @@
1 Lae Make sure awaiting on an api object won't stuck forever on error (#1763)
1 Lezek123 BTreeSet and BTreeMap - encoding and serialization fixes (#3789)
1 Lovesh Harchandani Fix name of "getBlock" in package "api-derive" and export it in "index.ts" (#2857)
1 Marc Fornós add beefy compact signed commitment definition (#5781)
1 Mario Neises fix usage with typescript (#405)
1 Mario Pino Add PolkaStats to API users (#1593)
1 Mark Robert Henderson Update warnings.ts to have the latest URLs (#2720)
@@ -99,7 +103,6 @@
1 Noah Corona Add rpc error fields (#4637)
1 Oleksandr Mykhailenko Add more complex namespaced contracts & test cases for them (#4472)
1 Paul M Fox Basic BTreeMaps codec support (#1474)
1 peetzweg/ Adds tests cases for issue #5702 (#5703)
1 philipstanislaus Update types for centrifuge chain v1.2.0 (#2424)
1 Pierre Krieger Update substrate/connect to 0.7.6 (#4940)
1 polymath-eric Allow unset external signer (#5649)
@@ -107,6 +110,7 @@
1 qiuhao update DeriveCustom type (#2581)
1 r0t0r-r0t0r Fix memory leak on raw rpc call (#4505)
1 Raphael Flechtner fix: typegen disconnect ws on success (#4901)
1 Robert Gabriel Jakabosky Fix sorting of `Option` values and error on duplicates from BTreeSet/BTreeMap. (#5731)
1 Robert Hambrock update MMR API (#5479)
1 Rocco Musolino remove broken link (#2671)
1 sander2 fix: type generation for nested tuples (#5395)
@@ -119,7 +123,6 @@
1 Sergei Pepyakin INK! -> ink! (#1347)
1 Shunji Zhan small polish (#5276)
1 Stephen Shelton Add transaction-payment runtime API V3 (#5430)
1 Tarik Gul Update .nvmrc (#5624)
1 Tim B added EthRTApiV5 ifaces (#5680)
1 WoeOm adapt Darwinia, Crab Network types (#3498)
1 Xat_MassacrE Fix packages/types/src/codec/utils/encodeTypes.ts encodeSubTypes bug (#1544)
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api authors & contributors
// Copyright 2017-2024 @polkadot/api authors & contributors
// SPDX-License-Identifier: Apache-2.0
import baseConfig from '@polkadot/dev/config/eslint';
+7 -7
View File
@@ -6,7 +6,7 @@
},
"homepage": "https://github.com/polkadot-js/api#readme",
"license": "Apache-2.0",
"packageManager": "yarn@3.2.0",
"packageManager": "yarn@4.1.0",
"private": true,
"repository": {
"type": "git",
@@ -14,10 +14,10 @@
},
"sideEffects": false,
"type": "module",
"version": "10.11.1",
"version": "10.12.1",
"versions": {
"git": "10.11.1",
"npm": "10.11.1"
"git": "10.12.1",
"npm": "10.12.1"
},
"workspaces": [
"packages/*"
@@ -40,11 +40,11 @@
"test:one": "polkadot-dev-run-test --env node"
},
"devDependencies": {
"@polkadot/dev": "^0.77.1",
"@polkadot/dev": "^0.78.9",
"@polkadot/typegen": "workspace:packages/typegen",
"@types/node": "^20.9.1"
"@types/node": "^20.11.6"
},
"resolutions": {
"typescript": "^5.2.2"
"typescript": "^5.3.3"
}
}
+9 -9
View File
@@ -14,19 +14,19 @@
"url": "https://github.com/polkadot-js/api.git"
},
"sideEffects": [
"./detectPackage.js",
"./detectPackage.cjs"
"./packageDetect.js",
"./packageDetect.cjs"
],
"type": "module",
"version": "10.11.1",
"version": "10.12.1",
"main": "index.js",
"dependencies": {
"@polkadot/api-base": "10.11.1",
"@polkadot/rpc-augment": "10.11.1",
"@polkadot/types": "10.11.1",
"@polkadot/types-augment": "10.11.1",
"@polkadot/types-codec": "10.11.1",
"@polkadot/util": "^12.6.1",
"@polkadot/api-base": "10.12.1",
"@polkadot/rpc-augment": "10.12.1",
"@polkadot/types": "10.12.1",
"@polkadot/types-augment": "10.12.1",
"@polkadot/types-codec": "10.12.1",
"@polkadot/util": "^12.6.2",
"tslib": "^2.6.2"
}
}
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-augment authors & contributors
// Copyright 2017-2024 @polkadot/api-augment authors & contributors
// SPDX-License-Identifier: Apache-2.0
// for the API, we decorate not only the endpoints, but all types
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-augment authors & contributors
// Copyright 2017-2024 @polkadot/api-augment authors & contributors
// SPDX-License-Identifier: Apache-2.0
import './substrate/index.js';
-8
View File
@@ -1,8 +0,0 @@
// Copyright 2017-2023 @polkadot/api-augment authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { packageInfo as baseInfo } from '@polkadot/api-base/packageInfo';
import { packageInfo as typesInfo } from '@polkadot/types/packageInfo';
import { packageInfo as codecInfo } from '@polkadot/types-codec/packageInfo';
export default [baseInfo, typesInfo, codecInfo];
+2 -2
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2023 @polkadot/api-augment authors & contributors
// Copyright 2017-2024 @polkadot/api-augment authors & contributors
// SPDX-License-Identifier: Apache-2.0
import './detectPackage.js';
import './packageDetect.js';
export * from './bundle.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-augment authors & contributors
// Copyright 2017-2024 @polkadot/api-augment authors & contributors
// SPDX-License-Identifier: Apache-2.0
import '../base.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-augment authors & contributors
// Copyright 2017-2024 @polkadot/api-augment authors & contributors
// SPDX-License-Identifier: Apache-2.0
import '@polkadot/types-augment/registry/substrate';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-augment authors & contributors
// Copyright 2017-2024 @polkadot/api-augment authors & contributors
// SPDX-License-Identifier: Apache-2.0
export * from './index.js';
+14
View File
@@ -0,0 +1,14 @@
// Copyright 2017-2024 @polkadot/api-augment 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 baseInfo } from '@polkadot/api-base/packageInfo';
import { packageInfo as typesInfo } from '@polkadot/types/packageInfo';
import { packageInfo as codecInfo } from '@polkadot/types-codec/packageInfo';
import { detectPackage } from '@polkadot/util';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, [baseInfo, codecInfo, typesInfo]);
+2 -2
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2023 @polkadot/api-augment authors & contributors
// Copyright 2017-2024 @polkadot/api-augment authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
export const packageInfo = { name: '@polkadot/api-augment', path: 'auto', type: 'auto', version: '10.11.1' };
export const packageInfo = { name: '@polkadot/api-augment', path: 'auto', type: 'auto', version: '10.12.1' };
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-augment authors & contributors
// Copyright 2017-2024 @polkadot/api-augment authors & contributors
// SPDX-License-Identifier: Apache-2.0
import '../base.js';
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-augment authors & contributors
// Copyright 2017-2024 @polkadot/api-augment authors & contributors
// SPDX-License-Identifier: Apache-2.0
import '@polkadot/types-augment/registry/substrate';
+88 -24
View File
@@ -484,10 +484,6 @@ declare module '@polkadot/api-base/types/consts' {
* to submit the worker's solution.
**/
offchainRepeat: u32 & AugmentedConst<ApiType>;
/**
* Base deposit for a signed solution.
**/
signedDepositBase: u128 & AugmentedConst<ApiType>;
/**
* Per-byte deposit for a signed solution.
**/
@@ -639,14 +635,9 @@ declare module '@polkadot/api-base/types/consts' {
**/
basicDeposit: u128 & AugmentedConst<ApiType>;
/**
* The amount held on deposit per additional field for a registered identity.
* The amount held on deposit per encoded byte for a registered identity.
**/
fieldDeposit: u128 & AugmentedConst<ApiType>;
/**
* Maximum number of additional fields that may be stored in an ID. Needed to bound the I/O
* required to access an identity, but can be pretty high.
**/
maxAdditionalFields: u32 & AugmentedConst<ApiType>;
byteDeposit: u128 & AugmentedConst<ApiType>;
/**
* Maxmimum number of registrars allowed in the system. Needed to bound the complexity
* of, e.g., updating judgements.
@@ -738,6 +729,58 @@ declare module '@polkadot/api-base/types/consts' {
**/
[key: string]: Codec;
};
mixnet: {
/**
* The maximum number of authorities per session.
**/
maxAuthorities: u32 & AugmentedConst<ApiType>;
/**
* The maximum number of external addresses for a mixnode.
**/
maxExternalAddressesPerMixnode: u32 & AugmentedConst<ApiType>;
/**
* The maximum size of one of a mixnode's external addresses.
**/
maxExternalAddressSize: u32 & AugmentedConst<ApiType>;
/**
* Minimum number of mixnodes. If there are fewer than this many mixnodes registered for a
* session, the mixnet will not be active during the session.
**/
minMixnodes: u32 & AugmentedConst<ApiType>;
/**
* Length of the first phase of each session (`CoverToCurrent`), in blocks.
**/
numCoverToCurrentBlocks: u32 & AugmentedConst<ApiType>;
/**
* Length of the third phase of each session (`CoverToPrev`), in blocks.
**/
numCoverToPrevBlocks: u32 & AugmentedConst<ApiType>;
/**
* The number of "slack" blocks at the end of each session.
* [`maybe_register`](Pallet::maybe_register) will try to register before this slack
* period, but may post registration transactions during the slack period as a last
* resort.
**/
numRegisterEndSlackBlocks: u32 & AugmentedConst<ApiType>;
/**
* The number of "slack" blocks at the start of each session, during which
* [`maybe_register`](Pallet::maybe_register) will not attempt to post registration
* transactions.
**/
numRegisterStartSlackBlocks: u32 & AugmentedConst<ApiType>;
/**
* Length of the second phase of each session (`RequestsToCurrent`), in blocks.
**/
numRequestsToCurrentBlocks: u32 & AugmentedConst<ApiType>;
/**
* Priority of unsigned transactions used to register mixnodes.
**/
registrationPriority: u64 & AugmentedConst<ApiType>;
/**
* Generic const
**/
[key: string]: Codec;
};
multisig: {
/**
* The base amount of currency needed to reserve for creating a multisig execution or to
@@ -932,6 +975,10 @@ declare module '@polkadot/api-base/types/consts' {
* Such a scenario would also be the equivalent of the pool being 90% slashed.
**/
maxPointsToBalance: u8 & AugmentedConst<ApiType>;
/**
* The maximum number of simultaneous unbonding chunks that can exist per member.
**/
maxUnbonding: u32 & AugmentedConst<ApiType>;
/**
* The nomination pool's pallet id.
**/
@@ -1259,8 +1306,8 @@ declare module '@polkadot/api-base/types/consts' {
* Following information is kept for eras in `[current_era -
* HistoryDepth, current_era]`: `ErasStakers`, `ErasStakersClipped`,
* `ErasValidatorPrefs`, `ErasValidatorReward`, `ErasRewardPoints`,
* `ErasTotalStake`, `ErasStartSessionIndex`,
* `StakingLedger.claimed_rewards`.
* `ErasTotalStake`, `ErasStartSessionIndex`, `ClaimedRewards`, `ErasStakersPaged`,
* `ErasStakersOverview`.
*
* Must be more than the number of eras delayed by session.
* I.e. active era must always be in history. I.e. `active_era >
@@ -1270,19 +1317,26 @@ declare module '@polkadot/api-base/types/consts' {
* this should be set to same value or greater as in storage.
*
* Note: `HistoryDepth` is used as the upper bound for the `BoundedVec`
* item `StakingLedger.claimed_rewards`. Setting this value lower than
* item `StakingLedger.legacy_claimed_rewards`. Setting this value lower than
* the existing value can lead to inconsistencies in the
* `StakingLedger` and will need to be handled properly in a migration.
* The test `reducing_history_depth_abrupt` shows this effect.
**/
historyDepth: u32 & AugmentedConst<ApiType>;
/**
* The maximum number of nominators rewarded for each validator.
* The maximum size of each `T::ExposurePage`.
*
* For each validator only the `$MaxNominatorRewardedPerValidator` biggest stakers can
* claim their reward. This used to limit the i/o cost for the nominator payout.
* An `ExposurePage` is weakly bounded to a maximum of `MaxExposurePageSize`
* nominators.
*
* For older non-paged exposure, a reward payout was restricted to the top
* `MaxExposurePageSize` nominators. This is to limit the i/o cost for the
* nominator payout.
*
* Note: `MaxExposurePageSize` is used to bound `ClaimedRewards` and is unsafe to reduce
* without handling it in a migration.
**/
maxNominatorRewardedPerValidator: u32 & AugmentedConst<ApiType>;
maxExposurePageSize: u32 & AugmentedConst<ApiType>;
/**
* The maximum number of `unlocking` chunks a [`StakingLedger`] can
* have. Effectively determines how many unique eras a staker may be
@@ -1418,10 +1472,12 @@ declare module '@polkadot/api-base/types/consts' {
};
timestamp: {
/**
* The minimum period between blocks. Beware that this is different to the *expected*
* period that the block production apparatus provides. Your chosen consensus system will
* generally work with this to determine a sensible block time. e.g. For Aura, it will be
* double this period on default settings.
* The minimum period between blocks.
*
* Be aware that this is different to the *expected* period that the block production
* apparatus provides. Your chosen consensus system will generally work with this to
* determine a sensible block time. For example, in the Aura pallet it will be double this
* period on default settings.
**/
minimumPeriod: u64 & AugmentedConst<ApiType>;
/**
@@ -1440,6 +1496,10 @@ declare module '@polkadot/api-base/types/consts' {
* Benchmarks depend on this value, be sure to update weights file when changing this value
**/
maximumReasonLength: u32 & AugmentedConst<ApiType>;
/**
* The maximum amount for a single tip.
**/
maxTipAmount: u128 & AugmentedConst<ApiType>;
/**
* The period for which a tip remains open after is has achieved threshold tippers.
**/
@@ -1459,10 +1519,10 @@ declare module '@polkadot/api-base/types/consts' {
};
transactionPayment: {
/**
* A fee mulitplier for `Operational` extrinsics to compute "virtual tip" to boost their
* A fee multiplier for `Operational` extrinsics to compute "virtual tip" to boost their
* `priority`
*
* This value is multipled by the `final_fee` to obtain a "virtual tip" that is later
* This value is multiplied by the `final_fee` to obtain a "virtual tip" that is later
* added to a tip component in regular `priority` calculations.
* It means that a `Normal` transaction can front-run a similarly-sized `Operational`
* extrinsic (with no tip), by including a tip value greater than the virtual tip.
@@ -1502,6 +1562,10 @@ declare module '@polkadot/api-base/types/consts' {
* The treasury's pallet id, used for deriving its sovereign account ID.
**/
palletId: FrameSupportPalletId & AugmentedConst<ApiType>;
/**
* The period during which an approved treasury spend has to be claimed.
**/
payoutPeriod: u32 & AugmentedConst<ApiType>;
/**
* Fraction of a proposal's value that should be bonded in order to place the proposal.
* An accepted proposal gets these back. A rejected proposal does not.
+84 -14
View File
@@ -108,7 +108,7 @@ declare module '@polkadot/api-base/types/errors' {
/**
* The account's identity does not have display field and website field.
**/
WithoutIdentityDisplayAndWebsite: AugmentedError<ApiType>;
WithoutRequiredIdentityFields: AugmentedError<ApiType>;
/**
* Generic error
**/
@@ -802,6 +802,10 @@ declare module '@polkadot/api-base/types/errors' {
* The size defined in `T::MaxValueSize` was exceeded.
**/
ValueTooLarge: AugmentedError<ApiType>;
/**
* Failed to decode the XCM program.
**/
XCMDecodeFailed: AugmentedError<ApiType>;
/**
* Generic error
**/
@@ -1340,10 +1344,6 @@ declare module '@polkadot/api-base/types/errors' {
* Sticky judgement.
**/
StickyJudgement: AugmentedError<ApiType>;
/**
* Too many additional fields.
**/
TooManyFields: AugmentedError<ApiType>;
/**
* Maximum amount of registrars reached. Cannot add any more.
**/
@@ -1463,6 +1463,10 @@ declare module '@polkadot/api-base/types/errors' {
* This can change at any time and may resolve in the future by re-trying.
**/
QueuePaused: AugmentedError<ApiType>;
/**
* Another call is in progress and needs to finish before this call can happen.
**/
RecursiveDisallowed: AugmentedError<ApiType>;
/**
* This message is temporarily unprocessable.
*
@@ -1887,9 +1891,9 @@ declare module '@polkadot/api-base/types/errors' {
/**
* The amount does not meet the minimum bond to either join or create a pool.
*
* The depositor can never unbond to a value less than
* `Pallet::depositor_min_bond`. The caller does not have nominating
* permissions for the pool. Members can never unbond to a value below `MinJoinBond`.
* The depositor can never unbond to a value less than `Pallet::depositor_min_bond`. The
* caller does not have nominating permissions for the pool. Members can never unbond to a
* value below `MinJoinBond`.
**/
MinimumBondNotMet: AugmentedError<ApiType>;
/**
@@ -1905,6 +1909,10 @@ declare module '@polkadot/api-base/types/errors' {
* other members to be permissionlessly unbonded.
**/
NotDestroying: AugmentedError<ApiType>;
/**
* No imbalance in the ED deposit for the pool.
**/
NothingToAdjust: AugmentedError<ApiType>;
/**
* Either a) the caller cannot make a valid kick or b) the pool is not destroying.
**/
@@ -2064,6 +2072,14 @@ declare module '@polkadot/api-base/types/errors' {
* Preimage is too large to store on-chain.
**/
TooBig: AugmentedError<ApiType>;
/**
* Too few hashes were requested to be upgraded (i.e. zero).
**/
TooFew: AugmentedError<ApiType>;
/**
* More than `MAX_HASH_UPGRADE_BULK_COUNT` hashes were requested to be upgraded at once.
**/
TooMany: AugmentedError<ApiType>;
/**
* Generic error
**/
@@ -2661,6 +2677,10 @@ declare module '@polkadot/api-base/types/errors' {
* Commission is too low. Must be at least `MinCommission`.
**/
CommissionTooLow: AugmentedError<ApiType>;
/**
* Used when attempting to use deprecated controller account logic.
**/
ControllerDeprecated: AugmentedError<ApiType>;
/**
* Duplicate index.
**/
@@ -2695,6 +2715,10 @@ declare module '@polkadot/api-base/types/errors' {
* Invalid number of nominations.
**/
InvalidNumberOfNominations: AugmentedError<ApiType>;
/**
* No nominators exist on this page.
**/
InvalidPage: AugmentedError<ApiType>;
/**
* Slash record index out of bounds.
**/
@@ -2776,7 +2800,7 @@ declare module '@polkadot/api-base/types/errors' {
};
sudo: {
/**
* Sender must be the Sudo account
* Sender must be the Sudo account.
**/
RequireSudo: AugmentedError<ApiType>;
/**
@@ -2789,6 +2813,10 @@ declare module '@polkadot/api-base/types/errors' {
* The origin filter prevent the call to be dispatched.
**/
CallFiltered: AugmentedError<ApiType>;
/**
* The specified [`Task`] failed during execution.
**/
FailedTask: AugmentedError<ApiType>;
/**
* Failed to extract the runtime version from the new runtime.
*
@@ -2800,6 +2828,10 @@ declare module '@polkadot/api-base/types/errors' {
* and the new runtime.
**/
InvalidSpecName: AugmentedError<ApiType>;
/**
* The specified [`Task`] is not valid.
**/
InvalidTask: AugmentedError<ApiType>;
/**
* Suicide called when the account has non-default composite data.
**/
@@ -2818,6 +2850,16 @@ declare module '@polkadot/api-base/types/errors' {
**/
[key: string]: AugmentedError<ApiType>;
};
tasksExample: {
/**
* The referenced task was not found.
**/
NotFound: AugmentedError<ApiType>;
/**
* Generic error
**/
[key: string]: AugmentedError<ApiType>;
};
technicalCommittee: {
/**
* Members are already initialized!
@@ -2891,6 +2933,10 @@ declare module '@polkadot/api-base/types/errors' {
* The tip was already found/started.
**/
AlreadyKnown: AugmentedError<ApiType>;
/**
* The tip given was too generous.
**/
MaxTipAmountExceeded: AugmentedError<ApiType>;
/**
* The account attempting to retract the tip is not the finder of the tip.
**/
@@ -2929,10 +2975,6 @@ declare module '@polkadot/api-base/types/errors' {
* Attempting to store empty transaction
**/
EmptyTransaction: AugmentedError<ApiType>;
/**
* Insufficient account balance.
**/
InsufficientFunds: AugmentedError<ApiType>;
/**
* Proof failed verification.
**/
@@ -2975,6 +3017,22 @@ declare module '@polkadot/api-base/types/errors' {
[key: string]: AugmentedError<ApiType>;
};
treasury: {
/**
* The payment has already been attempted.
**/
AlreadyAttempted: AugmentedError<ApiType>;
/**
* The spend is not yet eligible for payout.
**/
EarlyPayout: AugmentedError<ApiType>;
/**
* The balance of the asset kind is not convertible to the balance of the native asset.
**/
FailedToConvertBalance: AugmentedError<ApiType>;
/**
* The payment has neither failed nor succeeded yet.
**/
Inconclusive: AugmentedError<ApiType>;
/**
* The spend origin is valid but the amount it is allowed to spend is lower than the
* amount to be spent.
@@ -2985,13 +3043,25 @@ declare module '@polkadot/api-base/types/errors' {
**/
InsufficientProposersBalance: AugmentedError<ApiType>;
/**
* No proposal or bounty at that index.
* No proposal, bounty or spend at that index.
**/
InvalidIndex: AugmentedError<ApiType>;
/**
* The payout was not yet attempted/claimed.
**/
NotAttempted: AugmentedError<ApiType>;
/**
* There was some issue with the mechanism of payment.
**/
PayoutError: AugmentedError<ApiType>;
/**
* Proposal has not been approved.
**/
ProposalNotApproved: AugmentedError<ApiType>;
/**
* The spend has expired and cannot be claimed.
**/
SpendExpired: AugmentedError<ApiType>;
/**
* Too many approvals in the queue.
**/
+97 -12
View File
@@ -9,7 +9,7 @@ import type { ApiTypes, AugmentedEvent } from '@polkadot/api-base/types';
import type { Bytes, Null, Option, Result, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
import type { ITuple } from '@polkadot/types-codec/types';
import type { AccountId32, H256, Perbill, Permill, Perquintill } from '@polkadot/types/interfaces/runtime';
import type { FrameSupportDispatchDispatchInfo, FrameSupportDispatchPostDispatchInfo, FrameSupportMessagesProcessMessageError, FrameSupportPreimagesBounded, FrameSupportTokensMiscBalanceStatus, KitchensinkRuntimeProxyType, PalletAllianceCid, PalletAllianceUnscrupulousItem, PalletAssetConversionNativeOrAssetId, PalletBrokerCoretimeInterfaceCoreAssignment, PalletBrokerRegionId, PalletBrokerScheduleItem, PalletContractsOrigin, PalletConvictionVotingTally, PalletCoreFellowshipParamsType, PalletCoreFellowshipWish, PalletDemocracyMetadataOwner, PalletDemocracyVoteAccountVote, PalletDemocracyVoteThreshold, PalletElectionProviderMultiPhaseElectionCompute, PalletElectionProviderMultiPhasePhase, PalletImOnlineSr25519AppSr25519Public, PalletMultisigTimepoint, PalletNftsAttributeNamespace, PalletNftsPalletAttributes, PalletNftsPriceWithDirection, PalletNominationPoolsCommissionChangeRate, PalletNominationPoolsPoolState, PalletRankedCollectiveTally, PalletRankedCollectiveVoteRecord, PalletSafeModeExitReason, PalletSocietyGroupParams, PalletStakingExposure, PalletStakingForcing, PalletStakingValidatorPrefs, PalletStateTrieMigrationError, PalletStateTrieMigrationMigrationCompute, SpConsensusGrandpaAppPublic, SpNposElectionsElectionScore, SpRuntimeDispatchError, SpRuntimeDispatchErrorWithPostInfo, SpStatementStoreStatement, SpWeightsWeightV2Weight } from '@polkadot/types/lookup';
import type { FrameSupportDispatchDispatchInfo, FrameSupportDispatchPostDispatchInfo, FrameSupportMessagesProcessMessageError, FrameSupportPreimagesBounded, FrameSupportTokensMiscBalanceStatus, KitchensinkRuntimeProxyType, KitchensinkRuntimeRuntimeTask, PalletAllianceCid, PalletAllianceUnscrupulousItem, PalletAssetConversionNativeOrAssetId, PalletBrokerCoretimeInterfaceCoreAssignment, PalletBrokerRegionId, PalletBrokerScheduleItem, PalletContractsOrigin, PalletConvictionVotingTally, PalletCoreFellowshipParamsType, PalletCoreFellowshipWish, PalletDemocracyMetadataOwner, PalletDemocracyVoteAccountVote, PalletDemocracyVoteThreshold, PalletElectionProviderMultiPhaseElectionCompute, PalletElectionProviderMultiPhasePhase, PalletImOnlineSr25519AppSr25519Public, PalletMultisigTimepoint, PalletNftsAttributeNamespace, PalletNftsPalletAttributes, PalletNftsPriceWithDirection, PalletNominationPoolsCommissionChangeRate, PalletNominationPoolsCommissionClaimPermission, PalletNominationPoolsPoolState, PalletRankedCollectiveTally, PalletRankedCollectiveVoteRecord, PalletSafeModeExitReason, PalletSocietyGroupParams, PalletStakingForcing, PalletStakingRewardDestination, PalletStakingValidatorPrefs, PalletStateTrieMigrationError, PalletStateTrieMigrationMigrationCompute, SpConsensusGrandpaAppPublic, SpNposElectionsElectionScore, SpRuntimeDispatchError, SpRuntimeDispatchErrorWithPostInfo, SpStakingExposure, SpStatementStoreStatement, SpWeightsWeightV2Weight } from '@polkadot/types/lookup';
export type __AugmentedEvent<ApiType extends ApiTypes> = AugmentedEvent<ApiType>;
@@ -367,6 +367,10 @@ declare module '@polkadot/api-base/types/events' {
[key: string]: AugmentedEvent<ApiType>;
};
bounties: {
/**
* A bounty is approved.
**/
BountyApproved: AugmentedEvent<ApiType, [index: u32], { index: u32 }>;
/**
* A bounty is awarded to a beneficiary.
**/
@@ -395,6 +399,18 @@ declare module '@polkadot/api-base/types/events' {
* A bounty proposal was rejected; funds were slashed.
**/
BountyRejected: AugmentedEvent<ApiType, [index: u32, bond: u128], { index: u32, bond: u128 }>;
/**
* A bounty curator is accepted.
**/
CuratorAccepted: AugmentedEvent<ApiType, [bountyId: u32, curator: AccountId32], { bountyId: u32, curator: AccountId32 }>;
/**
* A bounty curator is proposed.
**/
CuratorProposed: AugmentedEvent<ApiType, [bountyId: u32, curator: AccountId32], { bountyId: u32, curator: AccountId32 }>;
/**
* A bounty curator is unassigned.
**/
CuratorUnassigned: AugmentedEvent<ApiType, [bountyId: u32], { bountyId: u32 }>;
/**
* Generic event
**/
@@ -981,7 +997,7 @@ declare module '@polkadot/api-base/types/events' {
/**
* At the end of the session, at least one validator was found to be offline.
**/
SomeOffline: AugmentedEvent<ApiType, [offline: Vec<ITuple<[AccountId32, PalletStakingExposure]>>], { offline: Vec<ITuple<[AccountId32, PalletStakingExposure]>> }>;
SomeOffline: AugmentedEvent<ApiType, [offline: Vec<ITuple<[AccountId32, SpStakingExposure]>>], { offline: Vec<ITuple<[AccountId32, SpStakingExposure]>> }>;
/**
* Generic event
**/
@@ -1039,11 +1055,11 @@ declare module '@polkadot/api-base/types/events' {
/**
* Message is processed.
**/
Processed: AugmentedEvent<ApiType, [id: U8aFixed, origin: u32, weightUsed: SpWeightsWeightV2Weight, success: bool], { id: U8aFixed, origin: u32, weightUsed: SpWeightsWeightV2Weight, success: bool }>;
Processed: AugmentedEvent<ApiType, [id: H256, origin: u32, weightUsed: SpWeightsWeightV2Weight, success: bool], { id: H256, origin: u32, weightUsed: SpWeightsWeightV2Weight, success: bool }>;
/**
* Message discarded due to an error in the `MessageProcessor` (usually a format error).
**/
ProcessingFailed: AugmentedEvent<ApiType, [id: U8aFixed, origin: u32, error: FrameSupportMessagesProcessMessageError], { id: U8aFixed, origin: u32, error: FrameSupportMessagesProcessMessageError }>;
ProcessingFailed: AugmentedEvent<ApiType, [id: H256, origin: u32, error: FrameSupportMessagesProcessMessageError], { id: H256, origin: u32, error: FrameSupportMessagesProcessMessageError }>;
/**
* Generic event
**/
@@ -1299,6 +1315,14 @@ declare module '@polkadot/api-base/types/events' {
* The removal can be voluntary (withdrawn all unbonded funds) or involuntary (kicked).
**/
MemberRemoved: AugmentedEvent<ApiType, [poolId: u32, member: AccountId32], { poolId: u32, member: AccountId32 }>;
/**
* Topped up deficit in frozen ED of the reward pool.
**/
MinBalanceDeficitAdjusted: AugmentedEvent<ApiType, [poolId: u32, amount: u128], { poolId: u32, amount: u128 }>;
/**
* Claimed excess frozen ED of af the reward pool.
**/
MinBalanceExcessAdjusted: AugmentedEvent<ApiType, [poolId: u32, amount: u128], { poolId: u32, amount: u128 }>;
/**
* A payout has been made to a member.
**/
@@ -1311,6 +1335,10 @@ declare module '@polkadot/api-base/types/events' {
* Pool commission has been claimed.
**/
PoolCommissionClaimed: AugmentedEvent<ApiType, [poolId: u32, commission: u128], { poolId: u32, commission: u128 }>;
/**
* Pool commission claim permission has been updated.
**/
PoolCommissionClaimPermissionUpdated: AugmentedEvent<ApiType, [poolId: u32, permission: Option<PalletNominationPoolsCommissionClaimPermission>], { poolId: u32, permission: Option<PalletNominationPoolsCommissionClaimPermission> }>;
/**
* A pool's commission setting has been changed.
**/
@@ -1582,7 +1610,7 @@ declare module '@polkadot/api-base/types/events' {
**/
DecisionStarted: AugmentedEvent<ApiType, [index: u32, track: u16, proposal: FrameSupportPreimagesBounded, tally: PalletRankedCollectiveTally], { index: u32, track: u16, proposal: FrameSupportPreimagesBounded, tally: PalletRankedCollectiveTally }>;
/**
* A deposit has been slashaed.
* A deposit has been slashed.
**/
DepositSlashed: AugmentedEvent<ApiType, [who: AccountId32, amount: u128], { who: AccountId32, amount: u128 }>;
/**
@@ -1676,7 +1704,7 @@ declare module '@polkadot/api-base/types/events' {
**/
DecisionStarted: AugmentedEvent<ApiType, [index: u32, track: u16, proposal: FrameSupportPreimagesBounded, tally: PalletConvictionVotingTally], { index: u32, track: u16, proposal: FrameSupportPreimagesBounded, tally: PalletConvictionVotingTally }>;
/**
* A deposit has been slashaed.
* A deposit has been slashed.
**/
DepositSlashed: AugmentedEvent<ApiType, [who: AccountId32, amount: u128], { who: AccountId32, amount: u128 }>;
/**
@@ -1722,6 +1750,16 @@ declare module '@polkadot/api-base/types/events' {
**/
[key: string]: AugmentedEvent<ApiType>;
};
rootTesting: {
/**
* Event dispatched when the trigger_defensive extrinsic is called.
**/
DefensiveTestCall: AugmentedEvent<ApiType, []>;
/**
* Generic event
**/
[key: string]: AugmentedEvent<ApiType>;
};
safeMode: {
/**
* Could not hold funds for entering or extending the safe-mode.
@@ -1827,6 +1865,16 @@ declare module '@polkadot/api-base/types/events' {
**/
[key: string]: AugmentedEvent<ApiType>;
};
skipFeelessPayment: {
/**
* A transaction fee was skipped.
**/
FeeSkipped: AugmentedEvent<ApiType, [who: AccountId32], { who: AccountId32 }>;
/**
* Generic event
**/
[key: string]: AugmentedEvent<ApiType>;
};
society: {
/**
* A candidate was dropped (due to an excess of bids in the system).
@@ -1939,9 +1987,9 @@ declare module '@polkadot/api-base/types/events' {
**/
PayoutStarted: AugmentedEvent<ApiType, [eraIndex: u32, validatorStash: AccountId32], { eraIndex: u32, validatorStash: AccountId32 }>;
/**
* The nominator has been rewarded by this amount.
* The nominator has been rewarded by this amount to this destination.
**/
Rewarded: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
Rewarded: AugmentedEvent<ApiType, [stash: AccountId32, dest: PalletStakingRewardDestination, amount: u128], { stash: AccountId32, dest: PalletStakingRewardDestination, amount: u128 }>;
/**
* A staker (validator or nominator) has been slashed by the given amount.
**/
@@ -2020,15 +2068,19 @@ declare module '@polkadot/api-base/types/events' {
};
sudo: {
/**
* The \[sudoer\] just switched identity; the old key is supplied if one existed.
* The sudo key has been updated.
**/
KeyChanged: AugmentedEvent<ApiType, [oldSudoer: Option<AccountId32>], { oldSudoer: Option<AccountId32> }>;
KeyChanged: AugmentedEvent<ApiType, [old: Option<AccountId32>, new_: AccountId32], { old: Option<AccountId32>, new_: AccountId32 }>;
/**
* A sudo just took place. \[result\]
* The key was permanently removed.
**/
KeyRemoved: AugmentedEvent<ApiType, []>;
/**
* A sudo call just took place.
**/
Sudid: AugmentedEvent<ApiType, [sudoResult: Result<Null, SpRuntimeDispatchError>], { sudoResult: Result<Null, SpRuntimeDispatchError> }>;
/**
* A sudo just took place. \[result\]
* A [sudo_as](Pallet::sudo_as) call just took place.
**/
SudoAsDone: AugmentedEvent<ApiType, [sudoResult: Result<Null, SpRuntimeDispatchError>], { sudoResult: Result<Null, SpRuntimeDispatchError> }>;
/**
@@ -2061,6 +2113,18 @@ declare module '@polkadot/api-base/types/events' {
* On on-chain remark happened.
**/
Remarked: AugmentedEvent<ApiType, [sender: AccountId32, hash_: H256], { sender: AccountId32, hash_: H256 }>;
/**
* A [`Task`] has finished executing.
**/
TaskCompleted: AugmentedEvent<ApiType, [task: KitchensinkRuntimeRuntimeTask], { task: KitchensinkRuntimeRuntimeTask }>;
/**
* A [`Task`] failed during execution.
**/
TaskFailed: AugmentedEvent<ApiType, [task: KitchensinkRuntimeRuntimeTask, err: SpRuntimeDispatchError], { task: KitchensinkRuntimeRuntimeTask, err: SpRuntimeDispatchError }>;
/**
* A [`Task`] has started executing
**/
TaskStarted: AugmentedEvent<ApiType, [task: KitchensinkRuntimeRuntimeTask], { task: KitchensinkRuntimeRuntimeTask }>;
/**
* Generic event
**/
@@ -2188,6 +2252,14 @@ declare module '@polkadot/api-base/types/events' {
[key: string]: AugmentedEvent<ApiType>;
};
treasury: {
/**
* A new asset spend proposal has been approved.
**/
AssetSpendApproved: AugmentedEvent<ApiType, [index: u32, assetKind: u32, amount: u128, beneficiary: AccountId32, validFrom: u32, expireAt: u32], { index: u32, assetKind: u32, amount: u128, beneficiary: AccountId32, validFrom: u32, expireAt: u32 }>;
/**
* An approved spend was voided.
**/
AssetSpendVoided: AugmentedEvent<ApiType, [index: u32], { index: u32 }>;
/**
* Some funds have been allocated.
**/
@@ -2200,6 +2272,14 @@ declare module '@polkadot/api-base/types/events' {
* Some funds have been deposited.
**/
Deposit: AugmentedEvent<ApiType, [value: u128], { value: u128 }>;
/**
* A payment happened.
**/
Paid: AugmentedEvent<ApiType, [index: u32, paymentId: Null], { index: u32, paymentId: Null }>;
/**
* A payment failed and can be retried.
**/
PaymentFailed: AugmentedEvent<ApiType, [index: u32, paymentId: Null], { index: u32, paymentId: Null }>;
/**
* New proposal.
**/
@@ -2220,6 +2300,11 @@ declare module '@polkadot/api-base/types/events' {
* We have ended a spend period and will now allocate funds.
**/
Spending: AugmentedEvent<ApiType, [budgetRemaining: u128], { budgetRemaining: u128 }>;
/**
* A spend was processed and removed from the storage. It might have been successfully
* paid or it may have expired.
**/
SpendProcessed: AugmentedEvent<ApiType, [index: u32], { index: u32 }>;
/**
* The inactive funds of the pallet have been updated.
**/
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-augment authors & contributors
// Copyright 2017-2024 @polkadot/api-augment authors & contributors
// SPDX-License-Identifier: Apache-2.0
import '../base.js';
+132 -23
View File
@@ -7,10 +7,10 @@ import '@polkadot/api-base/types/storage';
import type { ApiTypes, AugmentedQuery, QueryableStorageEntry } from '@polkadot/api-base/types';
import type { Data } from '@polkadot/types';
import type { BTreeSet, Bytes, Null, Option, Struct, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
import type { BTreeSet, Bytes, Null, Option, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';
import type { AccountId32, Call, H256, Perbill, Percent } from '@polkadot/types/interfaces/runtime';
import type { FrameSupportDispatchPerDispatchClassWeight, FrameSupportPreimagesBounded, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, KitchensinkRuntimeRuntimeHoldReason, KitchensinkRuntimeSessionKeys, PalletAllianceCid, PalletAllianceMemberRole, PalletAssetConversionNativeOrAssetId, PalletAssetConversionPoolInfo, PalletAssetsApproval, PalletAssetsAssetAccount, PalletAssetsAssetDetails, PalletAssetsAssetMetadata, PalletBagsListListBag, PalletBagsListListNode, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesIdAmount, PalletBalancesReserveData, PalletBountiesBounty, PalletBrokerAllowedRenewalId, PalletBrokerAllowedRenewalRecord, PalletBrokerConfigRecord, PalletBrokerContributionRecord, PalletBrokerInstaPoolHistoryRecord, PalletBrokerLeaseRecordItem, PalletBrokerPoolIoRecord, PalletBrokerRegionId, PalletBrokerRegionRecord, PalletBrokerSaleInfoRecord, PalletBrokerScheduleItem, PalletBrokerStatusRecord, PalletChildBountiesChildBounty, PalletCollectiveVotes, PalletContractsStorageContractInfo, PalletContractsStorageDeletionQueueManager, PalletContractsWasmCodeInfo, PalletConvictionVotingVoteVoting, PalletCoreFellowshipMemberStatus, PalletCoreFellowshipParamsType, PalletCoreFellowshipWish, PalletDemocracyMetadataOwner, PalletDemocracyReferendumInfo, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletElectionProviderMultiPhasePhase, PalletElectionProviderMultiPhaseReadySolution, PalletElectionProviderMultiPhaseRoundSnapshot, PalletElectionProviderMultiPhaseSignedSignedSubmission, PalletElectionProviderMultiPhaseSolutionOrSnapshotSize, PalletElectionsPhragmenSeatHolder, PalletElectionsPhragmenVoter, PalletFastUnstakeUnstakeRequest, PalletGrandpaStoredPendingChange, PalletGrandpaStoredState, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletImOnlineSr25519AppSr25519Public, PalletLotteryLotteryConfig, PalletMessageQueueBookState, PalletMessageQueuePage, PalletMultisigMultisig, PalletNftFractionalizationDetails, PalletNftsAttributeDeposit, PalletNftsAttributeNamespace, PalletNftsCollectionConfig, PalletNftsCollectionDetails, PalletNftsCollectionMetadata, PalletNftsItemConfig, PalletNftsItemDetails, PalletNftsItemMetadata, PalletNftsPendingSwap, PalletNisBid, PalletNisReceiptRecord, PalletNisSummaryRecord, PalletNominationPoolsBondedPoolInner, PalletNominationPoolsClaimPermission, PalletNominationPoolsPoolMember, PalletNominationPoolsRewardPool, PalletNominationPoolsSubPools, PalletPreimageRequestStatus, PalletProxyAnnouncement, PalletProxyProxyDefinition, PalletRankedCollectiveMemberRecord, PalletRankedCollectiveVoteRecord, PalletRecoveryActiveRecovery, PalletRecoveryRecoveryConfig, PalletReferendaReferendumInfoConvictionVotingTally, PalletReferendaReferendumInfoRankedCollectiveTally, PalletSalaryClaimantStatus, PalletSalaryStatusType, PalletSchedulerScheduled, PalletSocietyBid, PalletSocietyCandidacy, PalletSocietyGroupParams, PalletSocietyIntakeRecord, PalletSocietyMemberRecord, PalletSocietyPayoutRecord, PalletSocietyTally, PalletSocietyVote, PalletStakingActiveEraInfo, PalletStakingEraRewardPoints, PalletStakingExposure, PalletStakingForcing, PalletStakingNominations, PalletStakingRewardDestination, PalletStakingSlashingSlashingSpans, PalletStakingSlashingSpanRecord, PalletStakingStakingLedger, PalletStakingUnappliedSlash, PalletStakingValidatorPrefs, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletTipsOpenTip, PalletTransactionPaymentReleases, PalletTransactionStorageTransactionInfo, PalletTreasuryProposal, PalletUniquesCollectionDetails, PalletUniquesCollectionMetadata, PalletUniquesItemDetails, PalletUniquesItemMetadata, PalletVestingReleases, PalletVestingVestingInfo, SpAuthorityDiscoveryAppPublic, SpConsensusBabeAppPublic, SpConsensusBabeBabeEpochConfiguration, SpConsensusBabeDigestsNextConfigDescriptor, SpConsensusBabeDigestsPreDigest, SpCoreCryptoKeyTypeId, SpNposElectionsElectionScore, SpRuntimeDigest, SpStakingOffenceOffenceDetails } from '@polkadot/types/lookup';
import type { FrameSupportDispatchPerDispatchClassWeight, FrameSupportPreimagesBounded, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, KitchensinkRuntimeSessionKeys, PalletAllianceCid, PalletAllianceMemberRole, PalletAssetConversionNativeOrAssetId, PalletAssetConversionPoolInfo, PalletAssetsApproval, PalletAssetsAssetAccount, PalletAssetsAssetDetails, PalletAssetsAssetMetadata, PalletBagsListListBag, PalletBagsListListNode, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesIdAmountRuntimeFreezeReason, PalletBalancesIdAmountRuntimeHoldReason, PalletBalancesReserveData, PalletBountiesBounty, PalletBrokerAllowedRenewalId, PalletBrokerAllowedRenewalRecord, PalletBrokerConfigRecord, PalletBrokerContributionRecord, PalletBrokerInstaPoolHistoryRecord, PalletBrokerLeaseRecordItem, PalletBrokerPoolIoRecord, PalletBrokerRegionId, PalletBrokerRegionRecord, PalletBrokerSaleInfoRecord, PalletBrokerScheduleItem, PalletBrokerStatusRecord, PalletChildBountiesChildBounty, PalletCollectiveVotes, PalletContractsStorageContractInfo, PalletContractsStorageDeletionQueueManager, PalletContractsWasmCodeInfo, PalletConvictionVotingVoteVoting, PalletCoreFellowshipMemberStatus, PalletCoreFellowshipParamsType, PalletCoreFellowshipWish, PalletDemocracyMetadataOwner, PalletDemocracyReferendumInfo, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletElectionProviderMultiPhasePhase, PalletElectionProviderMultiPhaseReadySolution, PalletElectionProviderMultiPhaseRoundSnapshot, PalletElectionProviderMultiPhaseSignedSignedSubmission, PalletElectionProviderMultiPhaseSolutionOrSnapshotSize, PalletElectionsPhragmenSeatHolder, PalletElectionsPhragmenVoter, PalletFastUnstakeUnstakeRequest, PalletGrandpaStoredPendingChange, PalletGrandpaStoredState, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletImOnlineSr25519AppSr25519Public, PalletLotteryLotteryConfig, PalletMessageQueueBookState, PalletMessageQueuePage, PalletMixnetBoundedMixnode, PalletMultisigMultisig, PalletNftFractionalizationDetails, PalletNftsAttributeDeposit, PalletNftsAttributeNamespace, PalletNftsCollectionConfig, PalletNftsCollectionDetails, PalletNftsCollectionMetadata, PalletNftsItemConfig, PalletNftsItemDetails, PalletNftsItemMetadata, PalletNftsPendingSwap, PalletNisBid, PalletNisReceiptRecord, PalletNisSummaryRecord, PalletNominationPoolsBondedPoolInner, PalletNominationPoolsClaimPermission, PalletNominationPoolsPoolMember, PalletNominationPoolsRewardPool, PalletNominationPoolsSubPools, PalletPreimageOldRequestStatus, PalletPreimageRequestStatus, PalletProxyAnnouncement, PalletProxyProxyDefinition, PalletRankedCollectiveMemberRecord, PalletRankedCollectiveVoteRecord, PalletRecoveryActiveRecovery, PalletRecoveryRecoveryConfig, PalletReferendaReferendumInfoConvictionVotingTally, PalletReferendaReferendumInfoRankedCollectiveTally, PalletSalaryClaimantStatus, PalletSalaryStatusType, PalletSchedulerScheduled, PalletSocietyBid, PalletSocietyCandidacy, PalletSocietyGroupParams, PalletSocietyIntakeRecord, PalletSocietyMemberRecord, PalletSocietyPayoutRecord, PalletSocietyTally, PalletSocietyVote, PalletStakingActiveEraInfo, PalletStakingEraRewardPoints, PalletStakingForcing, PalletStakingNominations, PalletStakingRewardDestination, PalletStakingSlashingSlashingSpans, PalletStakingSlashingSpanRecord, PalletStakingStakingLedger, PalletStakingUnappliedSlash, PalletStakingValidatorPrefs, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletTipsOpenTip, PalletTransactionPaymentReleases, PalletTransactionStorageTransactionInfo, PalletTreasuryProposal, PalletTreasurySpendStatus, PalletUniquesCollectionDetails, PalletUniquesCollectionMetadata, PalletUniquesItemDetails, PalletUniquesItemMetadata, PalletVestingReleases, PalletVestingVestingInfo, SpAuthorityDiscoveryAppPublic, SpConsensusBabeAppPublic, SpConsensusBabeBabeEpochConfiguration, SpConsensusBabeDigestsNextConfigDescriptor, SpConsensusBabeDigestsPreDigest, SpConsensusGrandpaAppPublic, SpCoreCryptoKeyTypeId, SpMixnetAppPublic, SpNposElectionsElectionScore, SpRuntimeDigest, SpStakingExposure, SpStakingExposurePage, SpStakingOffenceOffenceDetails, SpStakingPagedExposureMetadata } from '@polkadot/types/lookup';
import type { Observable } from '@polkadot/types/types';
export type __AugmentedQuery<ApiType extends ApiTypes> = AugmentedQuery<ApiType, () => unknown>;
@@ -305,14 +305,11 @@ declare module '@polkadot/api-base/types/storage' {
/**
* Freeze locks on account balances.
**/
freezes: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<PalletBalancesIdAmount>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
freezes: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<PalletBalancesIdAmountRuntimeFreezeReason>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
/**
* Holds on account balances.
**/
holds: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<{
readonly id: KitchensinkRuntimeRuntimeHoldReason;
readonly amount: u128;
} & Struct>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
holds: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<PalletBalancesIdAmountRuntimeHoldReason>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
/**
* The total units of outstanding deactivated balance in the system.
**/
@@ -593,7 +590,7 @@ declare module '@polkadot/api-base/types/storage' {
lowestUnbaked: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
/**
* General information concerning any proposal or referendum.
* The `PreimageHash` refers to the preimage of the `Preimages` provider which can be a JSON
* The `Hash` refers to the preimage of the `Preimages` provider which can be a JSON
* dump or IPFS hash of a JSON file.
*
* Consider a garbage collection for a metadata of finished referendums to `unrequest` (remove)
@@ -825,6 +822,10 @@ declare module '@polkadot/api-base/types/storage' {
[key: string]: QueryableStorageEntry<ApiType>;
};
grandpa: {
/**
* The current list of authorities.
**/
authorities: AugmentedQuery<ApiType, () => Observable<Vec<ITuple<[SpConsensusGrandpaAppPublic, u64]>>>, []> & QueryableStorageEntry<ApiType, []>;
/**
* The number of changes (both in terms of keys and underlying economic responsibilities)
* in the "set" of Grandpa validators from genesis.
@@ -988,6 +989,34 @@ declare module '@polkadot/api-base/types/storage' {
**/
[key: string]: QueryableStorageEntry<ApiType>;
};
mixnet: {
/**
* Index of the current session. This may be offset relative to the session index tracked by
* eg `pallet_session`; mixnet session indices are independent.
**/
currentSessionIndex: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
/**
* Block in which the current session started.
**/
currentSessionStartBlock: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
/**
* Mixnode sets by session index. Only the mixnode sets for the previous, current, and next
* sessions are kept; older sets are discarded.
*
* The mixnodes in each set are keyed by authority index so we can easily check if an
* authority has registered a mixnode. The authority indices should only be used during
* registration; the authority indices for the very first session are made up.
**/
mixnodes: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletMixnetBoundedMixnode>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
/**
* Authority list for the next session.
**/
nextAuthorityIds: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<SpMixnetAppPublic>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
/**
* Generic query
**/
[key: string]: QueryableStorageEntry<ApiType>;
};
mmr: {
/**
* Hashes of the nodes in the MMR.
@@ -1224,6 +1253,14 @@ declare module '@polkadot/api-base/types/storage' {
* bonded pool, hence the name sub-pools. Keyed by the bonded pools account.
**/
subPoolsStorage: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletNominationPoolsSubPools>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
/**
* The sum of funds across all pools.
*
* This might be lower but never higher than the sum of `total_balance` of all [`PoolMembers`]
* because calling `pool_withdraw_unbonded` might decrease the total stake of the pool's
* `bonded_account` without adjusting the pallet-internal `UnbondingPool`'s.
**/
totalValueLocked: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;
/**
* Generic query
**/
@@ -1305,7 +1342,11 @@ declare module '@polkadot/api-base/types/storage' {
/**
* The request status of a given hash.
**/
statusFor: AugmentedQuery<ApiType, (arg: H256 | string | Uint8Array) => Observable<Option<PalletPreimageRequestStatus>>, [H256]> & QueryableStorageEntry<ApiType, [H256]>;
requestStatusFor: AugmentedQuery<ApiType, (arg: H256 | string | Uint8Array) => Observable<Option<PalletPreimageRequestStatus>>, [H256]> & QueryableStorageEntry<ApiType, [H256]>;
/**
* The request status of a given hash.
**/
statusFor: AugmentedQuery<ApiType, (arg: H256 | string | Uint8Array) => Observable<Option<PalletPreimageOldRequestStatus>>, [H256]> & QueryableStorageEntry<ApiType, [H256]>;
/**
* Generic query
**/
@@ -1374,7 +1415,7 @@ declare module '@polkadot/api-base/types/storage' {
decidingCount: AugmentedQuery<ApiType, (arg: u16 | AnyNumber | Uint8Array) => Observable<u32>, [u16]> & QueryableStorageEntry<ApiType, [u16]>;
/**
* The metadata is a general information concerning the referendum.
* The `PreimageHash` refers to the preimage of the `Preimages` provider which can be a JSON
* The `Hash` refers to the preimage of the `Preimages` provider which can be a JSON
* dump or IPFS hash of a JSON file.
*
* Consider a garbage collection for a metadata of finished referendums to `unrequest` (remove)
@@ -1431,7 +1472,7 @@ declare module '@polkadot/api-base/types/storage' {
decidingCount: AugmentedQuery<ApiType, (arg: u16 | AnyNumber | Uint8Array) => Observable<u32>, [u16]> & QueryableStorageEntry<ApiType, [u16]>;
/**
* The metadata is a general information concerning the referendum.
* The `PreimageHash` refers to the preimage of the `Preimages` provider which can be a JSON
* The `Hash` refers to the preimage of the `Preimages` provider which can be a JSON
* dump or IPFS hash of a JSON file.
*
* Consider a garbage collection for a metadata of finished referendums to `unrequest` (remove)
@@ -1670,6 +1711,15 @@ declare module '@polkadot/api-base/types/storage' {
* (`CountFor*`) in the system compared to the configured max (`Max*Count`).
**/
chillThreshold: AugmentedQuery<ApiType, () => Observable<Option<Percent>>, []> & QueryableStorageEntry<ApiType, []>;
/**
* History of claimed paged rewards by era and validator.
*
* This is keyed by era and validator stash which maps to the set of page indexes which have
* been claimed.
*
* It is removed after [`Config::HistoryDepth`] eras.
**/
claimedRewards: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array) => Observable<Vec<u32>>, [u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, AccountId32]>;
/**
* Counter for the related counted storage map
**/
@@ -1692,7 +1742,7 @@ declare module '@polkadot/api-base/types/storage' {
**/
currentPlannedSession: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
/**
* Rewards for the last `HISTORY_DEPTH` eras.
* Rewards for the last [`Config::HistoryDepth`] eras.
* If reward hasn't been set or has been removed then 0 reward is returned.
**/
erasRewardPoints: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<PalletStakingEraRewardPoints>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
@@ -1701,33 +1751,64 @@ declare module '@polkadot/api-base/types/storage' {
*
* This is keyed first by the era index to allow bulk deletion and then the stash account.
*
* Is it removed after `HISTORY_DEPTH` eras.
* Is it removed after [`Config::HistoryDepth`] eras.
* If stakers hasn't been set or has been removed then empty exposure is returned.
*
* Note: Deprecated since v14. Use `EraInfo` instead to work with exposures.
**/
erasStakers: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array) => Observable<PalletStakingExposure>, [u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, AccountId32]>;
erasStakers: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array) => Observable<SpStakingExposure>, [u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, AccountId32]>;
/**
* Clipped Exposure of validator at era.
*
* Note: This is deprecated, should be used as read-only and will be removed in the future.
* New `Exposure`s are stored in a paged manner in `ErasStakersPaged` instead.
*
* This is similar to [`ErasStakers`] but number of nominators exposed is reduced to the
* `T::MaxNominatorRewardedPerValidator` biggest stakers.
* `T::MaxExposurePageSize` biggest stakers.
* (Note: the field `total` and `own` of the exposure remains unchanged).
* This is used to limit the i/o cost for the nominator payout.
*
* This is keyed fist by the era index to allow bulk deletion and then the stash account.
*
* Is it removed after `HISTORY_DEPTH` eras.
* It is removed after [`Config::HistoryDepth`] eras.
* If stakers hasn't been set or has been removed then empty exposure is returned.
*
* Note: Deprecated since v14. Use `EraInfo` instead to work with exposures.
**/
erasStakersClipped: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array) => Observable<PalletStakingExposure>, [u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, AccountId32]>;
erasStakersClipped: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array) => Observable<SpStakingExposure>, [u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, AccountId32]>;
/**
* The session index at which the era start for the last `HISTORY_DEPTH` eras.
* Summary of validator exposure at a given era.
*
* This contains the total stake in support of the validator and their own stake. In addition,
* it can also be used to get the number of nominators backing this validator and the number of
* exposure pages they are divided into. The page count is useful to determine the number of
* pages of rewards that needs to be claimed.
*
* This is keyed first by the era index to allow bulk deletion and then the stash account.
* Should only be accessed through `EraInfo`.
*
* Is it removed after [`Config::HistoryDepth`] eras.
* If stakers hasn't been set or has been removed then empty overview is returned.
**/
erasStakersOverview: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array) => Observable<Option<SpStakingPagedExposureMetadata>>, [u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, AccountId32]>;
/**
* Paginated exposure of a validator at given era.
*
* This is keyed first by the era index to allow bulk deletion, then stash account and finally
* the page. Should only be accessed through `EraInfo`.
*
* This is cleared after [`Config::HistoryDepth`] eras.
**/
erasStakersPaged: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<Option<SpStakingExposurePage>>, [u32, AccountId32, u32]> & QueryableStorageEntry<ApiType, [u32, AccountId32, u32]>;
/**
* The session index at which the era start for the last [`Config::HistoryDepth`] eras.
*
* Note: This tracks the starting session (i.e. session index when era start being active)
* for the eras in `[CurrentEra - HISTORY_DEPTH, CurrentEra]`.
**/
erasStartSessionIndex: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
/**
* The total amount staked for the last `HISTORY_DEPTH` eras.
* The total amount staked for the last [`Config::HistoryDepth`] eras.
* If total hasn't been set or has been removed then 0 stake is returned.
**/
erasTotalStake: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u128>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
@@ -1736,11 +1817,11 @@ declare module '@polkadot/api-base/types/storage' {
*
* This is keyed first by the era index to allow bulk deletion and then the stash account.
*
* Is it removed after `HISTORY_DEPTH` eras.
* Is it removed after [`Config::HistoryDepth`] eras.
**/
erasValidatorPrefs: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array) => Observable<PalletStakingValidatorPrefs>, [u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, AccountId32]>;
/**
* The total validator era payout for the last `HISTORY_DEPTH` eras.
* The total validator era payout for the last [`Config::HistoryDepth`] eras.
*
* Eras that haven't finished yet or has been removed doesn't have reward.
**/
@@ -1757,6 +1838,9 @@ declare module '@polkadot/api-base/types/storage' {
invulnerables: AugmentedQuery<ApiType, () => Observable<Vec<AccountId32>>, []> & QueryableStorageEntry<ApiType, []>;
/**
* Map from all (unlocked) "controller" accounts to the info regarding the staking.
*
* Note: All the reads and mutations to this storage *MUST* be done through the methods exposed
* by [`StakingLedger`] to ensure data and lock consistency.
**/
ledger: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Option<PalletStakingStakingLedger>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
/**
@@ -1997,6 +2081,20 @@ declare module '@polkadot/api-base/types/storage' {
**/
[key: string]: QueryableStorageEntry<ApiType>;
};
tasksExample: {
/**
* Numbers to be added into the total.
**/
numbers: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
/**
* Some running total.
**/
total: AugmentedQuery<ApiType, () => Observable<ITuple<[u32, u32]>>, []> & QueryableStorageEntry<ApiType, []>;
/**
* Generic query
**/
[key: string]: QueryableStorageEntry<ApiType>;
};
technicalCommittee: {
/**
* The current members of the collective. This is stored sorted (just by value).
@@ -2043,11 +2141,14 @@ declare module '@polkadot/api-base/types/storage' {
};
timestamp: {
/**
* Did the timestamp get updated in this block?
* Whether the timestamp has been updated in this block.
*
* This value is updated to `true` upon successful submission of a timestamp by a node.
* It is then checked at the end of each block execution in the `on_finalize` hook.
**/
didUpdate: AugmentedQuery<ApiType, () => Observable<bool>, []> & QueryableStorageEntry<ApiType, []>;
/**
* Current time for the current block.
* The current time for the current block.
**/
now: AugmentedQuery<ApiType, () => Observable<u64>, []> & QueryableStorageEntry<ApiType, []>;
/**
@@ -2129,6 +2230,14 @@ declare module '@polkadot/api-base/types/storage' {
* Proposals that have been made.
**/
proposals: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletTreasuryProposal>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
/**
* The count of spends that have been made.
**/
spendCount: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
/**
* Spends that have been approved and being processed.
**/
spends: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletTreasurySpendStatus>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
/**
* Generic query
**/
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-augment authors & contributors
// Copyright 2017-2024 @polkadot/api-augment authors & contributors
// SPDX-License-Identifier: Apache-2.0
import '@polkadot/types-augment/registry/substrate';
+69 -15
View File
@@ -10,7 +10,7 @@ import type { Data } from '@polkadot/types';
import type { Bytes, Compact, Option, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
import type { AnyNumber, IMethod, ITuple } from '@polkadot/types-codec/types';
import type { AccountId32, Call, H256, MultiAddress, Perbill, Percent, Perquintill } from '@polkadot/types/interfaces/runtime';
import type { FrameSupportPreimagesBounded, FrameSupportScheduleDispatchTime, KitchensinkRuntimeOriginCaller, KitchensinkRuntimeProxyType, KitchensinkRuntimeSessionKeys, PalletAllianceCid, PalletAllianceDisbandWitness, PalletAllianceUnscrupulousItem, PalletAssetConversionNativeOrAssetId, PalletBrokerConfigRecord, PalletBrokerCoreMask, PalletBrokerFinality, PalletBrokerRegionId, PalletBrokerScheduleItem, PalletContractsWasmDeterminism, PalletConvictionVotingConviction, PalletConvictionVotingVoteAccountVote, PalletCoreFellowshipParamsType, PalletCoreFellowshipWish, PalletDemocracyConviction, PalletDemocracyMetadataOwner, PalletDemocracyVoteAccountVote, PalletElectionProviderMultiPhaseRawSolution, PalletElectionProviderMultiPhaseSolutionOrSnapshotSize, PalletElectionsPhragmenRenouncing, PalletIdentityBitFlags, PalletIdentityIdentityInfo, PalletIdentityJudgement, PalletImOnlineHeartbeat, PalletImOnlineSr25519AppSr25519Signature, PalletMultisigTimepoint, PalletNftsAttributeNamespace, PalletNftsCancelAttributesApprovalWitness, PalletNftsCollectionConfig, PalletNftsDestroyWitness, PalletNftsItemConfig, PalletNftsItemTip, PalletNftsMintSettings, PalletNftsMintWitness, PalletNftsPreSignedAttributes, PalletNftsPreSignedMint, PalletNftsPriceWithDirection, PalletNominationPoolsBondExtra, PalletNominationPoolsClaimPermission, PalletNominationPoolsCommissionChangeRate, PalletNominationPoolsConfigOpAccountId32, PalletNominationPoolsConfigOpPerbill, PalletNominationPoolsConfigOpU128, PalletNominationPoolsConfigOpU32, PalletNominationPoolsPoolState, PalletStakingPalletConfigOpPerbill, PalletStakingPalletConfigOpPercent, PalletStakingPalletConfigOpU128, PalletStakingPalletConfigOpU32, PalletStakingRewardDestination, PalletStakingValidatorPrefs, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletStateTrieMigrationProgress, PalletUniquesDestroyWitness, PalletVestingVestingInfo, SpConsensusBabeDigestsNextConfigDescriptor, SpConsensusGrandpaEquivocationProof, SpConsensusSlotsEquivocationProof, SpNposElectionsElectionScore, SpNposElectionsSupport, SpRuntimeMultiSignature, SpSessionMembershipProof, SpTransactionStorageProofTransactionStorageProof, SpWeightsWeightV2Weight } from '@polkadot/types/lookup';
import type { FrameSupportPreimagesBounded, FrameSupportScheduleDispatchTime, KitchensinkRuntimeOriginCaller, KitchensinkRuntimeProxyType, KitchensinkRuntimeRuntimeTask, KitchensinkRuntimeSessionKeys, PalletAllianceCid, PalletAllianceDisbandWitness, PalletAllianceUnscrupulousItem, PalletAssetConversionNativeOrAssetId, PalletBrokerConfigRecord, PalletBrokerCoreMask, PalletBrokerFinality, PalletBrokerRegionId, PalletBrokerScheduleItem, PalletContractsWasmDeterminism, PalletConvictionVotingConviction, PalletConvictionVotingVoteAccountVote, PalletCoreFellowshipParamsType, PalletCoreFellowshipWish, PalletDemocracyConviction, PalletDemocracyMetadataOwner, PalletDemocracyVoteAccountVote, PalletElectionProviderMultiPhaseRawSolution, PalletElectionProviderMultiPhaseSolutionOrSnapshotSize, PalletElectionsPhragmenRenouncing, PalletIdentityJudgement, PalletIdentityLegacyIdentityInfo, PalletImOnlineHeartbeat, PalletImOnlineSr25519AppSr25519Signature, PalletMixnetRegistration, PalletMultisigTimepoint, PalletNftsAttributeNamespace, PalletNftsCancelAttributesApprovalWitness, PalletNftsCollectionConfig, PalletNftsDestroyWitness, PalletNftsItemConfig, PalletNftsItemTip, PalletNftsMintSettings, PalletNftsMintWitness, PalletNftsPreSignedAttributes, PalletNftsPreSignedMint, PalletNftsPriceWithDirection, PalletNominationPoolsBondExtra, PalletNominationPoolsClaimPermission, PalletNominationPoolsCommissionChangeRate, PalletNominationPoolsCommissionClaimPermission, PalletNominationPoolsConfigOpAccountId32, PalletNominationPoolsConfigOpPerbill, PalletNominationPoolsConfigOpU128, PalletNominationPoolsConfigOpU32, PalletNominationPoolsPoolState, PalletStakingPalletConfigOpPerbill, PalletStakingPalletConfigOpPercent, PalletStakingPalletConfigOpU128, PalletStakingPalletConfigOpU32, PalletStakingRewardDestination, PalletStakingValidatorPrefs, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletStateTrieMigrationProgress, PalletUniquesDestroyWitness, PalletVestingVestingInfo, SpConsensusBabeDigestsNextConfigDescriptor, SpConsensusGrandpaEquivocationProof, SpConsensusSlotsEquivocationProof, SpMixnetAppSignature, SpNposElectionsElectionScore, SpNposElectionsSupport, SpRuntimeMultiSignature, SpSessionMembershipProof, SpTransactionStorageProofTransactionStorageProof, SpWeightsWeightV2Weight } from '@polkadot/types/lookup';
export type __AugmentedSubmittable = AugmentedSubmittable<() => unknown>;
export type __SubmittableExtrinsic<ApiType extends ApiTypes> = SubmittableExtrinsic<ApiType>;
@@ -331,14 +331,6 @@ declare module '@polkadot/api-base/types/submittable' {
* See [`Pallet::force_unreserve`].
**/
forceUnreserve: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, u128]>;
/**
* See [`Pallet::set_balance_deprecated`].
**/
setBalanceDeprecated: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, newFree: Compact<u128> | AnyNumber | Uint8Array, oldReserved: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>, Compact<u128>]>;
/**
* See [`Pallet::transfer`].
**/
transfer: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>]>;
/**
* See [`Pallet::transfer_all`].
**/
@@ -910,11 +902,11 @@ declare module '@polkadot/api-base/types/submittable' {
/**
* See [`Pallet::set_fields`].
**/
setFields: AugmentedSubmittable<(index: Compact<u32> | AnyNumber | Uint8Array, fields: PalletIdentityBitFlags) => SubmittableExtrinsic<ApiType>, [Compact<u32>, PalletIdentityBitFlags]>;
setFields: AugmentedSubmittable<(index: Compact<u32> | AnyNumber | Uint8Array, fields: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, u64]>;
/**
* See [`Pallet::set_identity`].
**/
setIdentity: AugmentedSubmittable<(info: PalletIdentityIdentityInfo | { additional?: any; display?: any; legal?: any; web?: any; riot?: any; email?: any; pgpFingerprint?: any; image?: any; twitter?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletIdentityIdentityInfo]>;
setIdentity: AugmentedSubmittable<(info: PalletIdentityLegacyIdentityInfo | { additional?: any; display?: any; legal?: any; web?: any; riot?: any; email?: any; pgpFingerprint?: any; image?: any; twitter?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletIdentityLegacyIdentityInfo]>;
/**
* See [`Pallet::set_subs`].
**/
@@ -996,6 +988,16 @@ declare module '@polkadot/api-base/types/submittable' {
**/
[key: string]: SubmittableExtrinsicFunction<ApiType>;
};
mixnet: {
/**
* See `Pallet::register`.
**/
register: AugmentedSubmittable<(registration: PalletMixnetRegistration | { blockNumber?: any; sessionIndex?: any; authorityIndex?: any; mixnode?: any } | string | Uint8Array, signature: SpMixnetAppSignature | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletMixnetRegistration, SpMixnetAppSignature]>;
/**
* Generic tx
**/
[key: string]: SubmittableExtrinsicFunction<ApiType>;
};
multisig: {
/**
* See [`Pallet::approve_as_multi`].
@@ -1229,6 +1231,10 @@ declare module '@polkadot/api-base/types/submittable' {
[key: string]: SubmittableExtrinsicFunction<ApiType>;
};
nominationPools: {
/**
* See [`Pallet::adjust_pool_deposit`].
**/
adjustPoolDeposit: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
/**
* See [`Pallet::bond_extra`].
**/
@@ -1285,6 +1291,10 @@ declare module '@polkadot/api-base/types/submittable' {
* See [`Pallet::set_commission_change_rate`].
**/
setCommissionChangeRate: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array, changeRate: PalletNominationPoolsCommissionChangeRate | { maxIncrease?: any; minDelay?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletNominationPoolsCommissionChangeRate]>;
/**
* See [`Pallet::set_commission_claim_permission`].
**/
setCommissionClaimPermission: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array, permission: Option<PalletNominationPoolsCommissionClaimPermission> | null | Uint8Array | PalletNominationPoolsCommissionClaimPermission | { Permissionless: any } | { Account: any } | string) => SubmittableExtrinsic<ApiType>, [u32, Option<PalletNominationPoolsCommissionClaimPermission>]>;
/**
* See [`Pallet::set_commission_max`].
**/
@@ -1467,6 +1477,10 @@ declare module '@polkadot/api-base/types/submittable' {
[key: string]: SubmittableExtrinsicFunction<ApiType>;
};
preimage: {
/**
* See [`Pallet::ensure_updated`].
**/
ensureUpdated: AugmentedSubmittable<(hashes: Vec<H256> | (H256 | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<H256>]>;
/**
* See [`Pallet::note_preimage`].
**/
@@ -1702,9 +1716,13 @@ declare module '@polkadot/api-base/types/submittable' {
};
rootTesting: {
/**
* See [`Pallet::fill_block`].
* See `Pallet::fill_block`.
**/
fillBlock: AugmentedSubmittable<(ratio: Perbill | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Perbill]>;
/**
* See `Pallet::trigger_defensive`.
**/
triggerDefensive: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
/**
* Generic tx
**/
@@ -1820,7 +1838,7 @@ declare module '@polkadot/api-base/types/submittable' {
/**
* See [`Pallet::set_keys`].
**/
setKeys: AugmentedSubmittable<(keys: KitchensinkRuntimeSessionKeys | { grandpa?: any; babe?: any; imOnline?: any; authorityDiscovery?: any } | string | Uint8Array, proof: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [KitchensinkRuntimeSessionKeys, Bytes]>;
setKeys: AugmentedSubmittable<(keys: KitchensinkRuntimeSessionKeys | { grandpa?: any; babe?: any; imOnline?: any; authorityDiscovery?: any; mixnet?: any } | string | Uint8Array, proof: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [KitchensinkRuntimeSessionKeys, Bytes]>;
/**
* Generic tx
**/
@@ -1932,7 +1950,7 @@ declare module '@polkadot/api-base/types/submittable' {
/**
* See [`Pallet::chill_other`].
**/
chillOther: AugmentedSubmittable<(controller: AccountId32 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32]>;
chillOther: AugmentedSubmittable<(stash: AccountId32 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32]>;
/**
* See [`Pallet::force_apply_min_commission`].
**/
@@ -1969,6 +1987,10 @@ declare module '@polkadot/api-base/types/submittable' {
* See [`Pallet::payout_stakers`].
**/
payoutStakers: AugmentedSubmittable<(validatorStash: AccountId32 | string | Uint8Array, era: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32, u32]>;
/**
* See [`Pallet::payout_stakers_by_page`].
**/
payoutStakersByPage: AugmentedSubmittable<(validatorStash: AccountId32 | string | Uint8Array, era: u32 | AnyNumber | Uint8Array, page: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32, u32, u32]>;
/**
* See [`Pallet::reap_stash`].
**/
@@ -2009,6 +2031,10 @@ declare module '@polkadot/api-base/types/submittable' {
* See [`Pallet::unbond`].
**/
unbond: AugmentedSubmittable<(value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>]>;
/**
* See [`Pallet::update_payee`].
**/
updatePayee: AugmentedSubmittable<(controller: AccountId32 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32]>;
/**
* See [`Pallet::validate`].
**/
@@ -2053,6 +2079,10 @@ declare module '@polkadot/api-base/types/submittable' {
[key: string]: SubmittableExtrinsicFunction<ApiType>;
};
sudo: {
/**
* See [`Pallet::remove_key`].
**/
removeKey: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
/**
* See [`Pallet::set_key`].
**/
@@ -2075,6 +2105,10 @@ declare module '@polkadot/api-base/types/submittable' {
[key: string]: SubmittableExtrinsicFunction<ApiType>;
};
system: {
/**
* See [`Pallet::do_task`].
**/
doTask: AugmentedSubmittable<(task: KitchensinkRuntimeRuntimeTask | { TasksExample: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [KitchensinkRuntimeRuntimeTask]>;
/**
* See [`Pallet::kill_prefix`].
**/
@@ -2239,6 +2273,14 @@ declare module '@polkadot/api-base/types/submittable' {
* See [`Pallet::approve_proposal`].
**/
approveProposal: AugmentedSubmittable<(proposalId: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>]>;
/**
* See [`Pallet::check_status`].
**/
checkStatus: AugmentedSubmittable<(index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
/**
* See [`Pallet::payout`].
**/
payout: AugmentedSubmittable<(index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
/**
* See [`Pallet::propose_spend`].
**/
@@ -2254,7 +2296,15 @@ declare module '@polkadot/api-base/types/submittable' {
/**
* See [`Pallet::spend`].
**/
spend: AugmentedSubmittable<(amount: Compact<u128> | AnyNumber | Uint8Array, beneficiary: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, MultiAddress]>;
spend: AugmentedSubmittable<(assetKind: u32 | AnyNumber | Uint8Array, amount: Compact<u128> | AnyNumber | Uint8Array, beneficiary: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, validFrom: Option<u32> | null | Uint8Array | u32 | AnyNumber) => SubmittableExtrinsic<ApiType>, [u32, Compact<u128>, MultiAddress, Option<u32>]>;
/**
* See [`Pallet::spend_local`].
**/
spendLocal: AugmentedSubmittable<(amount: Compact<u128> | AnyNumber | Uint8Array, beneficiary: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, MultiAddress]>;
/**
* See [`Pallet::void_spend`].
**/
voidSpend: AugmentedSubmittable<(index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
/**
* Generic tx
**/
@@ -2415,6 +2465,10 @@ declare module '@polkadot/api-base/types/submittable' {
[key: string]: SubmittableExtrinsicFunction<ApiType>;
};
vesting: {
/**
* See [`Pallet::force_remove_vesting_schedule`].
**/
forceRemoveVestingSchedule: AugmentedSubmittable<(target: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, scheduleIndex: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, u32]>;
/**
* See [`Pallet::force_vested_transfer`].
**/
+6 -6
View File
@@ -14,16 +14,16 @@
"url": "https://github.com/polkadot-js/api.git"
},
"sideEffects": [
"./detectPackage.js",
"./detectPackage.cjs"
"./packageDetect.js",
"./packageDetect.cjs"
],
"type": "module",
"version": "10.11.1",
"version": "10.12.1",
"main": "index.js",
"dependencies": {
"@polkadot/rpc-core": "10.11.1",
"@polkadot/types": "10.11.1",
"@polkadot/util": "^12.6.1",
"@polkadot/rpc-core": "10.12.1",
"@polkadot/types": "10.12.1",
"@polkadot/util": "^12.6.2",
"rxjs": "^7.8.1",
"tslib": "^2.6.2"
}
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { packageInfo } from './packageInfo.js';
-7
View File
@@ -1,7 +0,0 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { packageInfo as rpcInfo } from '@polkadot/rpc-core/packageInfo';
import { packageInfo as typesInfo } from '@polkadot/types/packageInfo';
export default [rpcInfo, typesInfo];
-11
View File
@@ -1,11 +0,0 @@
// Copyright 2017-2023 @polkadot/api-base 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.js';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, others);
+2 -2
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
import './detectPackage.js';
import './packageDetect.js';
export * from './bundle.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
export * from './index.js';
+13
View File
@@ -0,0 +1,13 @@
// Copyright 2017-2024 @polkadot/api-base 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 rpcInfo } from '@polkadot/rpc-core/packageInfo';
import { packageInfo as typesInfo } from '@polkadot/types/packageInfo';
import { detectPackage } from '@polkadot/util';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, [rpcInfo, typesInfo]);
+2 -2
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
export const packageInfo = { name: '@polkadot/api-base', path: 'auto', type: 'auto', version: '10.11.1' };
export const packageInfo = { name: '@polkadot/api-base', path: 'auto', type: 'auto', version: '10.12.1' };
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Observable } from 'rxjs';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Observable } from 'rxjs';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Observable } from 'rxjs';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { PalletConstantMetadataLatest } from '@polkadot/types/interfaces';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Observable } from 'rxjs';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { IsError } from '@polkadot/types/metadata/decorate/types';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { IsEvent } from '@polkadot/types/metadata/decorate/types';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api authors & contributors
// Copyright 2017-2024 @polkadot/api authors & contributors
// SPDX-License-Identifier: Apache-2.0
// These are augmented, do an augmentation export
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Observable } from 'rxjs';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Observable } from 'rxjs';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-base authors & contributors
// Copyright 2017-2024 @polkadot/api-base authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Observable } from 'rxjs';
+13 -12
View File
@@ -14,25 +14,26 @@
"url": "https://github.com/polkadot-js/api.git"
},
"sideEffects": [
"./detectPackage.js",
"./detectPackage.cjs"
"./packageDetect.js",
"./packageDetect.cjs"
],
"type": "module",
"version": "10.11.1",
"version": "10.12.1",
"main": "index.js",
"dependencies": {
"@polkadot/api": "10.11.1",
"@polkadot/api-augment": "10.11.1",
"@polkadot/types": "10.11.1",
"@polkadot/types-codec": "10.11.1",
"@polkadot/types-create": "10.11.1",
"@polkadot/util": "^12.6.1",
"@polkadot/util-crypto": "^12.6.1",
"@polkadot/api": "10.12.1",
"@polkadot/api-augment": "10.12.1",
"@polkadot/types": "10.12.1",
"@polkadot/types-codec": "10.12.1",
"@polkadot/types-create": "10.12.1",
"@polkadot/util": "^12.6.2",
"@polkadot/util-crypto": "^12.6.2",
"rxjs": "^7.8.1",
"tslib": "^2.6.2"
},
"devDependencies": {
"@polkadot/api-augment": "10.11.1",
"@polkadot/keyring": "^12.6.1"
"@polkadot/api-augment": "10.12.1",
"@polkadot/keyring": "^12.6.2",
"@polkadot/types-support": "10.12.1"
}
}
+111 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
@@ -9,8 +9,10 @@ import fs from 'node:fs';
import process from 'node:process';
import { TypeDefInfo } from '@polkadot/types/types';
import rpcMetadata from '@polkadot/types-support/metadata/static-substrate-contracts-node';
import { blake2AsHex } from '@polkadot/util-crypto';
import { Metadata, TypeRegistry } from '../../../types/src/bundle.js';
import abis from '../test/contracts/index.js';
import { Abi } from './index.js';
@@ -122,4 +124,112 @@ describe('Abi', (): void => {
// the hash as per the actual Abi
expect(bundle.source.hash).toEqual(abi.info.source.wasmHash.toHex());
});
describe('Events', (): void => {
const registry = new TypeRegistry();
beforeAll((): void => {
const metadata = new Metadata(registry, rpcMetadata);
registry.setMetadata(metadata);
});
it('decoding <=ink!v4 event', (): void => {
const abiJson = abis['ink_v4_erc20Metadata'];
expect(abiJson).toBeDefined();
const abi = new Abi(abiJson);
const eventRecordHex =
'0x0001000000080360951b8baf569bca905a279c12d6ce17db7cdce23a42563870ef585129ce5dc64d010001d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d018eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a4800505a4f7e9f4eb106000000000000000c0045726332303a3a5472616e7366657200000000000000000000000000000000da2d695d3b5a304e0039e7fc4419c34fa0c1f239189c99bb72a6484f1634782b2b00c7d40fe6d84d660f3e6bed90f218e022a0909f7e1a7ea35ada8b6e003564';
const record = registry.createType('EventRecord', eventRecordHex);
const decodedEvent = abi.decodeEvent(record);
expect(decodedEvent.event.args.length).toEqual(3);
expect(decodedEvent.args.length).toEqual(3);
expect(decodedEvent.event.identifier).toEqual('Transfer');
const decodedEventHuman = decodedEvent.event.args.reduce((prev, cur, index) => {
return {
...prev,
[cur.name]: decodedEvent.args[index].toHuman()
};
}, {});
const expectedEvent = {
from: '5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY',
to: '5FHneW46xGXgs5mUiveU4sbTyGBzmstUspZC92UhjJM694ty',
value: '123.4567 MUnit'
};
expect(decodedEventHuman).toEqual(expectedEvent);
});
it('decoding >=ink!v5 event', (): void => {
const abiJson = abis['ink_v5_erc20Metadata'];
expect(abiJson).toBeDefined();
const abi = new Abi(abiJson);
const eventRecordHex =
'0x00010000000803da17150e96b3955a4db6ad35ddeb495f722f9c1d84683113bfb096bf3faa30f2490101d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d018eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a4800505a4f7e9f4eb106000000000000000cb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cbd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48';
const record = registry.createType('EventRecord', eventRecordHex);
const decodedEvent = abi.decodeEvent(record);
expect(decodedEvent.event.args.length).toEqual(3);
expect(decodedEvent.args.length).toEqual(3);
expect(decodedEvent.event.identifier).toEqual('erc20::erc20::Transfer');
const decodedEventHuman = decodedEvent.event.args.reduce((prev, cur, index) => {
return {
...prev,
[cur.name]: decodedEvent.args[index].toHuman()
};
}, {});
const expectedEvent = {
from: '5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY',
to: '5FHneW46xGXgs5mUiveU4sbTyGBzmstUspZC92UhjJM694ty',
value: '123.4567 MUnit'
};
expect(decodedEventHuman).toEqual(expectedEvent);
});
it('decoding >=ink!v5 anonymous event', (): void => {
const abiJson = abis['ink_v5_erc20AnonymousTransferMetadata'];
expect(abiJson).toBeDefined();
const abi = new Abi(abiJson);
expect(abi.events[0].identifier).toEqual('erc20::erc20::Transfer');
expect(abi.events[0].signatureTopic).toEqual(null);
const eventRecordWithAnonymousEventHex = '0x00010000000803538e726248a9c155911e7d99f4f474c3408630a2f6275dd501d4471c7067ad2c490101d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d018eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a4800505a4f7e9f4eb1060000000000000008d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48';
const record = registry.createType('EventRecord', eventRecordWithAnonymousEventHex);
const decodedEvent = abi.decodeEvent(record);
expect(decodedEvent.event.args.length).toEqual(3);
expect(decodedEvent.args.length).toEqual(3);
expect(decodedEvent.event.identifier).toEqual('erc20::erc20::Transfer');
const decodedEventHuman = decodedEvent.event.args.reduce((prev, cur, index) => {
return {
...prev,
[cur.name]: decodedEvent.args[index].toHuman()
};
}, {});
const expectedEvent = {
from: '5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY',
to: '5FHneW46xGXgs5mUiveU4sbTyGBzmstUspZC92UhjJM694ty',
value: '123.4567 MUnit'
};
expect(decodedEventHuman).toEqual(expectedEvent);
});
});
});
+121 -23
View File
@@ -1,16 +1,16 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Bytes } from '@polkadot/types';
import type { ChainProperties, ContractConstructorSpecLatest, ContractEventSpecLatest, ContractMessageParamSpecLatest, ContractMessageSpecLatest, ContractMetadata, ContractMetadataLatest, ContractProjectInfo, ContractTypeSpec } from '@polkadot/types/interfaces';
import type { Bytes, Vec } from '@polkadot/types';
import type { ChainProperties, ContractConstructorSpecLatest, ContractEventParamSpecLatest, ContractMessageParamSpecLatest, ContractMessageSpecLatest, ContractMetadata, ContractMetadataV4, ContractMetadataV5, ContractProjectInfo, ContractTypeSpec, EventRecord } from '@polkadot/types/interfaces';
import type { Codec, Registry, TypeDef } from '@polkadot/types/types';
import type { AbiConstructor, AbiEvent, AbiMessage, AbiParam, DecodedEvent, DecodedMessage } from '../types.js';
import type { AbiConstructor, AbiEvent, AbiEventParam, AbiMessage, AbiMessageParam, AbiParam, DecodedEvent, DecodedMessage } from '../types.js';
import { Option, TypeRegistry } from '@polkadot/types';
import { TypeDefInfo } from '@polkadot/types-create';
import { assertReturn, compactAddLength, compactStripLength, isBn, isNumber, isObject, isString, isUndefined, logger, stringCamelCase, stringify, u8aConcat, u8aToHex } from '@polkadot/util';
import { convertVersions, enumVersions } from './toLatest.js';
import { convertVersions, enumVersions } from './toLatestCompatible.js';
interface AbiJson {
version?: string;
@@ -18,6 +18,10 @@ interface AbiJson {
[key: string]: unknown;
}
type EventOf<M> = M extends {spec: { events: Vec<infer E>}} ? E : never
export type ContractMetadataSupported = ContractMetadataV4 | ContractMetadataV5;
type ContractEventSupported = EventOf<ContractMetadataSupported>;
const l = logger('Abi');
const PRIMITIVE_ALWAYS = ['AccountId', 'AccountIndex', 'Address', 'Balance'];
@@ -32,7 +36,7 @@ function findMessage <T extends AbiMessage> (list: T[], messageOrId: T | string
return assertReturn(message, () => `Attempted to call an invalid contract interface, ${stringify(messageOrId)}`);
}
function getLatestMeta (registry: Registry, json: AbiJson): ContractMetadataLatest {
function getMetadata (registry: Registry, json: AbiJson): ContractMetadataSupported {
// this is for V1, V2, V3
const vx = enumVersions.find((v) => isObject(json[v]));
@@ -50,20 +54,23 @@ function getLatestMeta (registry: Registry, json: AbiJson): ContractMetadataLate
? { [`V${jsonVersion}`]: json }
: { V0: json }
);
const converter = convertVersions.find(([v]) => metadata[`is${v}`]);
if (!converter) {
throw new Error(`Unable to convert ABI with version ${metadata.type} to latest`);
throw new Error(`Unable to convert ABI with version ${metadata.type} to a supported version`);
}
return converter[1](registry, metadata[`as${converter[0]}`]);
const upgradedMetadata = converter[1](registry, metadata[`as${converter[0]}`]);
return upgradedMetadata;
}
function parseJson (json: Record<string, unknown>, chainProperties?: ChainProperties): [Record<string, unknown>, Registry, ContractMetadataLatest, ContractProjectInfo] {
function parseJson (json: Record<string, unknown>, chainProperties?: ChainProperties): [Record<string, unknown>, Registry, ContractMetadataSupported, ContractProjectInfo] {
const registry = new TypeRegistry();
const info = registry.createType('ContractProjectInfo', json) as unknown as ContractProjectInfo;
const latest = getLatestMeta(registry, json as unknown as AbiJson);
const lookup = registry.createType('PortableRegistry', { types: latest.types }, true);
const metadata = getMetadata(registry, json as unknown as AbiJson);
const lookup = registry.createType('PortableRegistry', { types: metadata.types }, true);
// attach the lookup to the registry - now the types are known
registry.setLookup(lookup);
@@ -77,7 +84,7 @@ function parseJson (json: Record<string, unknown>, chainProperties?: ChainProper
lookup.getTypeDef(id)
);
return [json, registry, latest, info];
return [json, registry, metadata, info];
}
/**
@@ -102,7 +109,7 @@ export class Abi {
readonly info: ContractProjectInfo;
readonly json: Record<string, unknown>;
readonly messages: AbiMessage[];
readonly metadata: ContractMetadataLatest;
readonly metadata: ContractMetadataSupported;
readonly registry: Registry;
readonly environment = new Map<string, TypeDef | Codec>();
@@ -123,8 +130,8 @@ export class Abi {
: null
})
);
this.events = this.metadata.spec.events.map((spec: ContractEventSpecLatest, index) =>
this.#createEvent(spec, index)
this.events = this.metadata.spec.events.map((_: ContractEventSupported, index: number) =>
this.#createEvent(index)
);
this.messages = this.metadata.spec.messages.map((spec: ContractMessageSpecLatest, index): AbiMessage =>
this.#createMessage(spec, index, {
@@ -162,7 +169,59 @@ export class Abi {
/**
* Warning: Unstable API, bound to change
*/
public decodeEvent (data: Bytes | Uint8Array): DecodedEvent {
public decodeEvent (record: EventRecord): DecodedEvent {
switch (this.metadata.version.toString()) {
// earlier version are hoisted to v4
case '4':
return this.#decodeEventV4(record);
// Latest
default:
return this.#decodeEventV5(record);
}
}
#decodeEventV5 = (record: EventRecord): DecodedEvent => {
// Find event by first topic, which potentially is the signature_topic
const signatureTopic = record.topics[0];
const data = record.event.data[1] as Bytes;
if (signatureTopic) {
const event = this.events.find((e) => e.signatureTopic !== undefined && e.signatureTopic !== null && e.signatureTopic === signatureTopic.toHex());
// Early return if event found by signature topic
if (event) {
return event.fromU8a(data);
}
}
// If no event returned yet, it might be anonymous
const amountOfTopics = record.topics.length;
const potentialEvents = this.events.filter((e) => {
// event can't have a signature topic
if (e.signatureTopic !== null && e.signatureTopic !== undefined) {
return false;
}
// event should have same amount of indexed fields as emitted topics
const amountIndexed = e.args.filter((a) => a.indexed).length;
if (amountIndexed !== amountOfTopics) {
return false;
}
// If all conditions met, it's a potential event
return true;
});
if (potentialEvents.length === 1) {
return potentialEvents[0].fromU8a(data);
}
throw new Error('Unable to determine event');
};
#decodeEventV4 = (record: EventRecord): DecodedEvent => {
const data = record.event.data[1] as Bytes;
const index = data[0];
const event = this.events[index];
@@ -171,7 +230,7 @@ export class Abi {
}
return event.fromU8a(data.subarray(1));
}
};
/**
* Warning: Unstable API, bound to change
@@ -195,7 +254,7 @@ export class Abi {
return findMessage(this.messages, messageOrId);
}
#createArgs = (args: ContractMessageParamSpecLatest[], spec: unknown): AbiParam[] => {
#createArgs = (args: ContractMessageParamSpecLatest[] | ContractEventParamSpecLatest[], spec: unknown): AbiParam[] => {
return args.map(({ label, type }, index): AbiParam => {
try {
if (!isObject(type)) {
@@ -233,8 +292,47 @@ export class Abi {
});
};
#createEvent = (spec: ContractEventSpecLatest, index: number): AbiEvent => {
const args = this.#createArgs(spec.args, spec);
#createMessageParams = (args: ContractMessageParamSpecLatest[], spec: unknown): AbiMessageParam[] => {
return this.#createArgs(args, spec);
};
#createEventParams = (args: ContractEventParamSpecLatest[], spec: unknown): AbiEventParam[] => {
const params = this.#createArgs(args, spec);
return params.map((p, index): AbiEventParam => ({ ...p, indexed: args[index].indexed.toPrimitive() }));
};
#createEvent = (index: number): AbiEvent => {
// TODO TypeScript would narrow this type to the correct version,
// but version is `Text` so I need to call `toString()` here,
// which breaks the type inference.
switch (this.metadata.version.toString()) {
case '4':
return this.#createEventV4((this.metadata as ContractMetadataV4).spec.events[index], index);
default:
return this.#createEventV5((this.metadata as ContractMetadataV5).spec.events[index], index);
}
};
#createEventV5 = (spec: EventOf<ContractMetadataV5>, index: number): AbiEvent => {
const args = this.#createEventParams(spec.args, spec);
const event = {
args,
docs: spec.docs.map((d) => d.toString()),
fromU8a: (data: Uint8Array): DecodedEvent => ({
args: this.#decodeArgs(args, data),
event
}),
identifier: [spec.module_path, spec.label].join('::'),
index,
signatureTopic: spec.signature_topic.isSome ? spec.signature_topic.unwrap().toHex() : null
};
return event;
};
#createEventV4 = (spec: EventOf<ContractMetadataV4>, index: number): AbiEvent => {
const args = this.#createEventParams(spec.args, spec);
const event = {
args,
docs: spec.docs.map((d) => d.toString()),
@@ -250,7 +348,7 @@ export class Abi {
};
#createMessage = (spec: ContractMessageSpecLatest | ContractConstructorSpecLatest, index: number, add: Partial<AbiMessage> = {}): AbiMessage => {
const args = this.#createArgs(spec.args, spec);
const args = this.#createMessageParams(spec.args, spec);
const identifier = spec.label.toString();
const message = {
...add,
@@ -267,7 +365,7 @@ export class Abi {
path: identifier.split('::').map((s) => stringCamelCase(s)),
selector: spec.selector,
toU8a: (params: unknown[]) =>
this.#encodeArgs(spec, args, params)
this.#encodeMessageArgs(spec, args, params)
};
return message;
@@ -299,7 +397,7 @@ export class Abi {
return message.fromU8a(trimmed.subarray(4));
};
#encodeArgs = ({ label, selector }: ContractMessageSpecLatest | ContractConstructorSpecLatest, args: AbiParam[], data: unknown[]): Uint8Array => {
#encodeMessageArgs = ({ label, selector }: ContractMessageSpecLatest | ContractConstructorSpecLatest, args: AbiMessageParam[], data: unknown[]): Uint8Array => {
if (data.length !== args.length) {
throw new Error(`Expected ${args.length} arguments to contract message '${label.toString()}', found ${data.length}`);
}
-41
View File
@@ -1,41 +0,0 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ContractMetadataLatest, ContractMetadataV4 } from '@polkadot/types/interfaces';
import type { Registry } from '@polkadot/types/types';
import { v0ToV1 } from './toV1.js';
import { v1ToV2 } from './toV2.js';
import { v2ToV3 } from './toV3.js';
import { v3ToV4 } from './toV4.js';
// The versions where an enum is used, aka V0 is missing
// (Order from newest, i.e. we expect more on newest vs oldest)
export const enumVersions = ['V4', 'V3', 'V2', 'V1'] as const;
type Versions = typeof enumVersions[number] | 'V0';
type Converter = (registry: Registry, vx: any) => ContractMetadataLatest;
// Helper to convert metadata from one step to the next
function createConverter <I, O> (next: (registry: Registry, input: O) => ContractMetadataLatest, step: (registry: Registry, input: I) => O): (registry: Registry, input: I) => ContractMetadataLatest {
return (registry: Registry, input: I): ContractMetadataLatest =>
next(registry, step(registry, input));
}
export function v4ToLatest (_registry: Registry, v4: ContractMetadataV4): ContractMetadataLatest {
return v4;
}
export const v3ToLatest = /*#__PURE__*/ createConverter(v4ToLatest, v3ToV4);
export const v2ToLatest = /*#__PURE__*/ createConverter(v3ToLatest, v2ToV3);
export const v1ToLatest = /*#__PURE__*/ createConverter(v2ToLatest, v1ToV2);
export const v0ToLatest = /*#__PURE__*/ createConverter(v1ToLatest, v0ToV1);
export const convertVersions: [Versions, Converter][] = [
['V4', v4ToLatest],
['V3', v3ToLatest],
['V2', v2ToLatest],
['V1', v1ToLatest],
['V0', v0ToLatest]
];
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
@@ -6,12 +6,12 @@
import { TypeRegistry } from '@polkadot/types';
import abis from '../test/contracts/index.js';
import { v0ToLatest, v1ToLatest, v2ToLatest, v3ToLatest, v4ToLatest } from './toLatest.js';
import { v0ToLatestCompatible, v1ToLatestCompatible, v2ToLatestCompatible, v3ToLatestCompatible, v4ToLatestCompatible, v5ToLatestCompatible } from './toLatestCompatible.js';
describe('v0ToLatest', (): void => {
describe('v0ToLatestCompatible', (): void => {
const registry = new TypeRegistry();
const contract = registry.createType('ContractMetadata', { V0: abis['ink_v0_erc20'] });
const latest = v0ToLatest(registry, contract.asV0);
const latest = v0ToLatestCompatible(registry, contract.asV0);
it('has the correct constructors', (): void => {
expect(
@@ -48,12 +48,16 @@ describe('v0ToLatest', (): void => {
latest.spec.events[0].args.map(({ label }) => label.toString())
).toEqual(['from', 'to', 'value']);
});
it('has the latest compatible version number', (): void => {
expect(latest.version.toString()).toEqual('4');
});
});
describe('v1ToLatest', (): void => {
describe('v1ToLatestCompatible', (): void => {
const registry = new TypeRegistry();
const contract = registry.createType('ContractMetadata', { V1: abis['ink_v1_flipper']['V1'] });
const latest = v1ToLatest(registry, contract.asV1);
const latest = v1ToLatestCompatible(registry, contract.asV1);
it('has the correct constructors', (): void => {
expect(
@@ -69,7 +73,7 @@ describe('v1ToLatest', (): void => {
it('has the correct messages with namespaced method name', (): void => {
const contract = registry.createType('ContractMetadata', { V1: abis['ink_v1_psp22']['V1'] });
const latest = v1ToLatest(registry, contract.asV1);
const latest = v1ToLatestCompatible(registry, contract.asV1);
expect(
latest.spec.messages.map(({ label }) => label.toString())
@@ -83,24 +87,32 @@ describe('v1ToLatest', (): void => {
latest.spec.constructors[0].args.map(({ label }) => label.toString())
).toEqual(['init_value']);
});
it('has the latest compatible version number', (): void => {
expect(latest.version.toString()).toEqual('4');
});
});
describe('v2ToLatest', (): void => {
describe('v2ToLatestCompatible', (): void => {
const registry = new TypeRegistry();
const contract = registry.createType('ContractMetadata', { V2: abis['ink_v2_flipper']['V2'] });
const latest = v2ToLatest(registry, contract.asV2);
const latest = v2ToLatestCompatible(registry, contract.asV2);
it('has the correct constructor flag', (): void => {
expect(
latest.spec.constructors[0].payable.isTrue
).toEqual(true);
});
it('has the latest compatible version number', (): void => {
expect(latest.version.toString()).toEqual('4');
});
});
describe('v3ToLatest', (): void => {
describe('v3ToLatestCompatible', (): void => {
const registry = new TypeRegistry();
const contract = registry.createType('ContractMetadata', { V3: abis['ink_v3_flipper']['V3'] });
const latest = v3ToLatest(registry, contract.asV3);
const latest = v3ToLatestCompatible(registry, contract.asV3);
it('has the correct constructor flags', (): void => {
expect(
@@ -113,7 +125,7 @@ describe('v3ToLatest', (): void => {
it('has the correct messages', (): void => {
const contract = registry.createType('ContractMetadata', { V3: abis['ink_v3_traitErc20']['V3'] });
const latest = v3ToLatest(registry, contract.asV3);
const latest = v3ToLatestCompatible(registry, contract.asV3);
expect(
latest.spec.messages.map(({ label }) => label.toString())
@@ -121,12 +133,16 @@ describe('v3ToLatest', (): void => {
'BaseErc20::total_supply', 'BaseErc20::balance_of', 'BaseErc20::allowance', 'BaseErc20::transfer', 'BaseErc20::approve', 'BaseErc20::transfer_from'
]);
});
it('has the latest compatible version number', (): void => {
expect(latest.version.toString()).toEqual('4');
});
});
describe('v4ToLatest', (): void => {
describe('v4ToLatestCompatible', (): void => {
const registry = new TypeRegistry();
const contract = registry.createType('ContractMetadata', { V4: abis['ink_v4_flipperContract'] });
const latest = v4ToLatest(registry, contract.asV4);
const latest = v4ToLatestCompatible(registry, contract.asV4);
it('has the correct constructor flags', (): void => {
expect(
@@ -136,4 +152,42 @@ describe('v4ToLatest', (): void => {
latest.spec.constructors[1].payable.isTrue
).toEqual(false);
});
it('has the latest compatible version number', (): void => {
expect(latest.version.toString()).toEqual('4');
});
});
describe('v5ToLatestCompatible', (): void => {
const registry = new TypeRegistry();
const contract = registry.createType('ContractMetadata', { V5: abis['ink_v5_erc20Metadata'] });
const latest = v5ToLatestCompatible(registry, contract.asV5);
it('has the correct messages', (): void => {
expect(
latest.spec.messages.map(({ label }) => label.toString())
).toEqual(['total_supply', 'balance_of', 'allowance', 'transfer', 'approve', 'transfer_from']);
});
it('has new event fields', (): void => {
expect(
latest.spec.events.length
).toEqual(2);
expect(
latest.spec.events.every((e) => e.has('module_path'))
).toEqual(true);
expect(latest.spec.events[0].module_path.toString()).toEqual('erc20::erc20');
expect(
latest.spec.events.every((e) => e.has('signature_topic'))
).toEqual(true);
expect(latest.spec.events[0].signature_topic.toHex()).toEqual('0xb5b61a3e6a21a16be4f044b517c28ac692492f73c5bfd3f60178ad98c767f4cb');
});
it('has the latest compatible version number', (): void => {
expect(latest.version.toString()).toEqual('5');
});
});
@@ -0,0 +1,47 @@
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ContractMetadataV4, ContractMetadataV5 } from '@polkadot/types/interfaces';
import type { Registry } from '@polkadot/types/types';
import type { ContractMetadataSupported } from './index.js';
import { v0ToV1 } from './toV1.js';
import { v1ToV2 } from './toV2.js';
import { v2ToV3 } from './toV3.js';
import { v3ToV4 } from './toV4.js';
// The versions where an enum is used, aka V0 is missing
// (Order from newest, i.e. we expect more on newest vs oldest)
export const enumVersions = ['V5', 'V4', 'V3', 'V2', 'V1'] as const;
type Versions = typeof enumVersions[number] | 'V0';
type Converter = (registry: Registry, vx: any) => ContractMetadataSupported;
// Helper to convert metadata from one step to the next
function createConverter <I, O> (next: (registry: Registry, input: O) => ContractMetadataSupported, step: (registry: Registry, input: I) => O): (registry: Registry, input: I) => ContractMetadataSupported {
return (registry: Registry, input: I): ContractMetadataSupported =>
next(registry, step(registry, input));
}
export function v5ToLatestCompatible (_registry: Registry, v5: ContractMetadataV5): ContractMetadataV5 {
return v5;
}
export function v4ToLatestCompatible (_registry: Registry, v4: ContractMetadataV4): ContractMetadataV4 {
return v4;
}
export const v3ToLatestCompatible = /*#__PURE__*/ createConverter(v4ToLatestCompatible, v3ToV4);
export const v2ToLatestCompatible = /*#__PURE__*/ createConverter(v3ToLatestCompatible, v2ToV3);
export const v1ToLatestCompatible = /*#__PURE__*/ createConverter(v2ToLatestCompatible, v1ToV2);
export const v0ToLatestCompatible = /*#__PURE__*/ createConverter(v1ToLatestCompatible, v0ToV1);
export const convertVersions: [Versions, Converter][] = [
['V5', v5ToLatestCompatible],
['V4', v4ToLatestCompatible],
['V3', v3ToLatestCompatible],
['V2', v2ToLatestCompatible],
['V1', v1ToLatestCompatible],
['V0', v0ToLatestCompatible]
];
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ContractMetadataV0, ContractMetadataV1 } from '@polkadot/types/interfaces';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Text } from '@polkadot/types';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ContractMetadataV2, ContractMetadataV3 } from '@polkadot/types/interfaces';
+3 -2
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ContractMetadataV3, ContractMetadataV4 } from '@polkadot/types/interfaces';
@@ -15,6 +15,7 @@ export function v3ToV4 (registry: Registry, v3: ContractMetadataV3): ContractMet
messages: v3.spec.messages.map((m) =>
registry.createType('ContractMessageSpecV3', objectSpread({}, m))
)
})
}),
version: registry.createType('Text', '4')
}));
}
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import '@polkadot/api-augment';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api authors & contributors
// Copyright 2017-2024 @polkadot/api authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ApiBase } from '@polkadot/api/base';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ApiBase } from '@polkadot/api/base';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ApiBase } from '@polkadot/api/base';
+3 -4
View File
@@ -1,10 +1,9 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ApiBase } from '@polkadot/api/base';
import type { SubmittableExtrinsic } from '@polkadot/api/submittable/types';
import type { ApiTypes, DecorateMethod } from '@polkadot/api/types';
import type { Bytes } from '@polkadot/types';
import type { AccountId, ContractExecResult, EventRecord, Weight, WeightV2 } from '@polkadot/types/interfaces';
import type { ISubmittableResult } from '@polkadot/types/types';
import type { Abi } from '../Abi/index.js';
@@ -115,9 +114,9 @@ export class Contract<ApiType extends ApiTypes> extends Base<ApiType> {
// ContractEmitted is the current generation, ContractExecution is the previous generation
new ContractSubmittableResult(result, applyOnEvent(result, ['ContractEmitted', 'ContractExecution'], (records: EventRecord[]) =>
records
.map(({ event: { data: [, data] } }): DecodedEvent | null => {
.map((record): DecodedEvent | null => {
try {
return this.abi.decodeEvent(data as Bytes);
return this.abi.decodeEvent(record);
} catch (error) {
l.error(`Unable to decode contract event: ${(error as Error).message}`);
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api authors & contributors
// Copyright 2017-2024 @polkadot/api authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { Blueprint, BlueprintSubmittableResult, extendBlueprint } from './Blueprint.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ApiBase } from '@polkadot/api/base';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Observable } from 'rxjs';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { SubmittableResult } from '@polkadot/api';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
// all named
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Simple non-runnable checks to test type definitions in the editor itself
-7
View File
@@ -1,7 +0,0 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { packageInfo as apiInfo } from '@polkadot/api/packageInfo';
import { packageInfo as typesInfo } from '@polkadot/types/packageInfo';
export default [apiInfo, typesInfo];
@@ -1,11 +0,0 @@
// Copyright 2017-2023 @polkadot/api-contract 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.js';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, others);
+2 -2
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import './detectPackage.js';
import './packageDetect.js';
export * from './bundle.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
export * from './index.js';
@@ -0,0 +1,13 @@
// Copyright 2017-2024 @polkadot/api-contract 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 apiInfo } from '@polkadot/api/packageInfo';
import { packageInfo as typesInfo } from '@polkadot/types/packageInfo';
import { detectPackage } from '@polkadot/util';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, [apiInfo, typesInfo]);
+2 -2
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
export const packageInfo = { name: '@polkadot/api-contract', path: 'auto', type: 'auto', version: '10.11.1' };
export const packageInfo = { name: '@polkadot/api-contract', path: 'auto', type: 'auto', version: '10.12.1' };
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ApiPromise } from '@polkadot/api';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { BlueprintSubmittableResult as BaseBlueprintSubmittableResult, CodeSubmittableResult as BaseCodeSubmittableResult } from '../base/index.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ApiRx } from '@polkadot/api';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { BlueprintSubmittableResult as BaseBlueprintSubmittableResult, CodeSubmittableResult as BaseCodeSubmittableResult } from '../base/index.js';
@@ -0,0 +1,253 @@
[
{
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"info": "Result",
"lookupIndex": 1,
"type": "Result<Null, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 2,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 3,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup3"
}
]
},
{
"info": "Null",
"lookupIndex": 2,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"info": "Enum",
"lookupIndex": 3,
"lookupName": "InkPrimitivesLangError",
"type": "{\"_enum\":[\"__Unused0\",\"CouldNotReadInput\"]}",
"docs": [],
"namespace": "ink_primitives::LangError",
"sub": [
{
"index": 0,
"info": "Null",
"name": "__Unused0",
"type": "Null"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "CouldNotReadInput"
}
]
},
{
"info": "Result",
"lookupIndex": 4,
"type": "Result<u128, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 3,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup3"
}
]
},
{
"info": "Plain",
"lookupIndex": 5,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
},
{
"info": "VecFixed",
"lookupIndex": 6,
"type": "[u8;32]",
"docs": [],
"namespace": "",
"length": 32,
"sub": {
"info": "Plain",
"lookupIndex": 7,
"type": "u8",
"docs": [],
"namespace": ""
}
},
{
"info": "Plain",
"lookupIndex": 7,
"type": "u8",
"docs": [],
"namespace": ""
},
{
"info": "Result",
"lookupIndex": 8,
"type": "Result<Result<Null, Erc20Error>, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Result",
"lookupIndex": 9,
"type": "Result<Null, Erc20Error>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 2,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 10,
"lookupName": "Erc20Error",
"type": "Lookup10"
}
]
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 3,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup3"
}
]
},
{
"info": "Result",
"lookupIndex": 9,
"type": "Result<Null, Erc20Error>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 2,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 10,
"lookupName": "Erc20Error",
"type": "Lookup10"
}
]
},
{
"info": "Enum",
"lookupIndex": 10,
"lookupName": "Erc20Error",
"type": "{\"_enum\":[\"InsufficientBalance\",\"InsufficientAllowance\"]}",
"docs": [],
"namespace": "erc20::erc20::Error",
"sub": [
{
"info": "Null",
"type": "Null",
"index": 0,
"name": "InsufficientBalance"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "InsufficientAllowance"
}
]
},
{
"info": "Option",
"lookupIndex": 11,
"type": "Option<AccountId>",
"docs": [],
"namespace": "Option",
"sub": {
"info": "Plain",
"lookupIndex": 5,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
}
},
{
"info": "Plain",
"lookupIndex": 12,
"type": "Hash",
"docs": [],
"namespace": "ink_primitives::types::Hash",
"lookupNameRoot": "InkPrimitivesHash"
},
{
"info": "Plain",
"lookupIndex": 13,
"type": "u64",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 14,
"type": "u32",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 15,
"type": "NoChainExtension",
"docs": [],
"namespace": "ink_env::types::NoChainExtension",
"lookupNameRoot": "InkEnvNoChainExtension"
}
]
@@ -0,0 +1,253 @@
[
{
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"info": "Result",
"lookupIndex": 1,
"type": "Result<Null, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 2,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 3,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup3"
}
]
},
{
"info": "Null",
"lookupIndex": 2,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"info": "Enum",
"lookupIndex": 3,
"lookupName": "InkPrimitivesLangError",
"type": "{\"_enum\":[\"__Unused0\",\"CouldNotReadInput\"]}",
"docs": [],
"namespace": "ink_primitives::LangError",
"sub": [
{
"index": 0,
"info": "Null",
"name": "__Unused0",
"type": "Null"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "CouldNotReadInput"
}
]
},
{
"info": "Result",
"lookupIndex": 4,
"type": "Result<u128, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 3,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup3"
}
]
},
{
"info": "Plain",
"lookupIndex": 5,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
},
{
"info": "VecFixed",
"lookupIndex": 6,
"type": "[u8;32]",
"docs": [],
"namespace": "",
"length": 32,
"sub": {
"info": "Plain",
"lookupIndex": 7,
"type": "u8",
"docs": [],
"namespace": ""
}
},
{
"info": "Plain",
"lookupIndex": 7,
"type": "u8",
"docs": [],
"namespace": ""
},
{
"info": "Result",
"lookupIndex": 8,
"type": "Result<Result<Null, Erc20Error>, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Result",
"lookupIndex": 9,
"type": "Result<Null, Erc20Error>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 2,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 10,
"lookupName": "Erc20Error",
"type": "Lookup10"
}
]
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 3,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup3"
}
]
},
{
"info": "Result",
"lookupIndex": 9,
"type": "Result<Null, Erc20Error>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 2,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 10,
"lookupName": "Erc20Error",
"type": "Lookup10"
}
]
},
{
"info": "Enum",
"lookupIndex": 10,
"lookupName": "Erc20Error",
"type": "{\"_enum\":[\"InsufficientBalance\",\"InsufficientAllowance\"]}",
"docs": [],
"namespace": "erc20::erc20::Error",
"sub": [
{
"info": "Null",
"type": "Null",
"index": 0,
"name": "InsufficientBalance"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "InsufficientAllowance"
}
]
},
{
"info": "Option",
"lookupIndex": 11,
"type": "Option<AccountId>",
"docs": [],
"namespace": "Option",
"sub": {
"info": "Plain",
"lookupIndex": 5,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
}
},
{
"info": "Plain",
"lookupIndex": 12,
"type": "Hash",
"docs": [],
"namespace": "ink_primitives::types::Hash",
"lookupNameRoot": "InkPrimitivesHash"
},
{
"info": "Plain",
"lookupIndex": 13,
"type": "u64",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 14,
"type": "u32",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 15,
"type": "NoChainExtension",
"docs": [],
"namespace": "ink_env::types::NoChainExtension",
"lookupNameRoot": "InkEnvNoChainExtension"
}
]
@@ -0,0 +1,370 @@
[
{
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"info": "Null",
"lookupIndex": 1,
"type": "Null",
"docs": [],
"namespace": "ink_storage::lazy::mapping::Mapping"
},
{
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
},
{
"info": "VecFixed",
"lookupIndex": 3,
"type": "[u8;32]",
"docs": [],
"namespace": "",
"length": 32,
"sub": {
"info": "Plain",
"lookupIndex": 4,
"type": "u8",
"docs": [],
"namespace": ""
}
},
{
"info": "Plain",
"lookupIndex": 4,
"type": "u8",
"docs": [],
"namespace": ""
},
{
"info": "Null",
"lookupIndex": 5,
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ResolverKey"
},
{
"info": "Null",
"lookupIndex": 6,
"lookupName": "InkStorageTraitsImplsAutoKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::AutoKey"
},
{
"info": "Null",
"lookupIndex": 7,
"lookupName": "InkStorageTraitsImplsManualKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ManualKey"
},
{
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"info": "Null",
"lookupIndex": 9,
"lookupName": "InkStorageLazyMapping",
"type": "Null",
"docs": [],
"namespace": "ink_storage::lazy::mapping::Mapping"
},
{
"info": "Tuple",
"lookupIndex": 10,
"type": "(AccountId,AccountId)",
"docs": [],
"namespace": "",
"sub": [
{
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
},
{
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
}
]
},
{
"info": "Null",
"lookupIndex": 11,
"lookupName": "InkStorageTraitsImplsResolverKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ResolverKey"
},
{
"info": "Null",
"lookupIndex": 12,
"lookupName": "InkStorageTraitsImplsManualKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ManualKey"
},
{
"info": "Struct",
"lookupIndex": 13,
"lookupName": "Erc20",
"type": "{\"totalSupply\":\"u128\",\"balances\":\"Null\",\"allowances\":\"InkStorageLazyMapping\"}",
"docs": [],
"namespace": "erc20::erc20::Erc20",
"sub": [
{
"docs": [],
"name": "totalSupply",
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"namespace": "",
"typeName": ""
},
{
"docs": [],
"name": "balances",
"info": "Null",
"lookupIndex": 1,
"type": "Null",
"namespace": "ink_storage::lazy::mapping::Mapping",
"typeName": ""
},
{
"docs": [],
"name": "allowances",
"info": "Null",
"lookupIndex": 9,
"lookupName": "InkStorageLazyMapping",
"type": "Null",
"namespace": "ink_storage::lazy::mapping::Mapping",
"typeName": ""
}
]
},
{
"info": "Result",
"lookupIndex": 14,
"type": "Result<Null, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup15"
}
]
},
{
"info": "Enum",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "{\"_enum\":[\"__Unused0\",\"CouldNotReadInput\"]}",
"docs": [],
"namespace": "ink_primitives::LangError",
"sub": [
{
"index": 0,
"info": "Null",
"name": "__Unused0",
"type": "Null"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "CouldNotReadInput"
}
]
},
{
"info": "Result",
"lookupIndex": 16,
"type": "Result<u128, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup15"
}
]
},
{
"info": "Result",
"lookupIndex": 17,
"type": "Result<Result<Null, Erc20Error>, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Result",
"lookupIndex": 18,
"type": "Result<Null, Erc20Error>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 19,
"lookupName": "Erc20Error",
"type": "Lookup19"
}
]
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup15"
}
]
},
{
"info": "Result",
"lookupIndex": 18,
"type": "Result<Null, Erc20Error>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 19,
"lookupName": "Erc20Error",
"type": "Lookup19"
}
]
},
{
"info": "Enum",
"lookupIndex": 19,
"lookupName": "Erc20Error",
"type": "{\"_enum\":[\"InsufficientBalance\",\"InsufficientAllowance\"]}",
"docs": [],
"namespace": "erc20::erc20::Error",
"sub": [
{
"info": "Null",
"type": "Null",
"index": 0,
"name": "InsufficientBalance"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "InsufficientAllowance"
}
]
},
{
"info": "Option",
"lookupIndex": 20,
"type": "Option<AccountId>",
"docs": [],
"namespace": "Option",
"sub": {
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
}
},
{
"info": "Plain",
"lookupIndex": 21,
"type": "Hash",
"docs": [],
"namespace": "ink_primitives::types::Hash",
"lookupNameRoot": "InkPrimitivesHash"
},
{
"info": "Plain",
"lookupIndex": 22,
"type": "u64",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 23,
"type": "u32",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 24,
"type": "NoChainExtension",
"docs": [],
"namespace": "ink_env::types::NoChainExtension",
"lookupNameRoot": "InkEnvNoChainExtension"
}
]
@@ -0,0 +1,370 @@
[
{
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"info": "Null",
"lookupIndex": 1,
"type": "Null",
"docs": [],
"namespace": "ink_storage::lazy::mapping::Mapping"
},
{
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
},
{
"info": "VecFixed",
"lookupIndex": 3,
"type": "[u8;32]",
"docs": [],
"namespace": "",
"length": 32,
"sub": {
"info": "Plain",
"lookupIndex": 4,
"type": "u8",
"docs": [],
"namespace": ""
}
},
{
"info": "Plain",
"lookupIndex": 4,
"type": "u8",
"docs": [],
"namespace": ""
},
{
"info": "Null",
"lookupIndex": 5,
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ResolverKey"
},
{
"info": "Null",
"lookupIndex": 6,
"lookupName": "InkStorageTraitsImplsAutoKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::AutoKey"
},
{
"info": "Null",
"lookupIndex": 7,
"lookupName": "InkStorageTraitsImplsManualKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ManualKey"
},
{
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"info": "Null",
"lookupIndex": 9,
"lookupName": "InkStorageLazyMapping",
"type": "Null",
"docs": [],
"namespace": "ink_storage::lazy::mapping::Mapping"
},
{
"info": "Tuple",
"lookupIndex": 10,
"type": "(AccountId,AccountId)",
"docs": [],
"namespace": "",
"sub": [
{
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
},
{
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
}
]
},
{
"info": "Null",
"lookupIndex": 11,
"lookupName": "InkStorageTraitsImplsResolverKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ResolverKey"
},
{
"info": "Null",
"lookupIndex": 12,
"lookupName": "InkStorageTraitsImplsManualKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ManualKey"
},
{
"info": "Struct",
"lookupIndex": 13,
"lookupName": "Erc20",
"type": "{\"totalSupply\":\"u128\",\"balances\":\"Null\",\"allowances\":\"InkStorageLazyMapping\"}",
"docs": [],
"namespace": "erc20::erc20::Erc20",
"sub": [
{
"docs": [],
"name": "totalSupply",
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"namespace": "",
"typeName": ""
},
{
"docs": [],
"name": "balances",
"info": "Null",
"lookupIndex": 1,
"type": "Null",
"namespace": "ink_storage::lazy::mapping::Mapping",
"typeName": ""
},
{
"docs": [],
"name": "allowances",
"info": "Null",
"lookupIndex": 9,
"lookupName": "InkStorageLazyMapping",
"type": "Null",
"namespace": "ink_storage::lazy::mapping::Mapping",
"typeName": ""
}
]
},
{
"info": "Result",
"lookupIndex": 14,
"type": "Result<Null, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup15"
}
]
},
{
"info": "Enum",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "{\"_enum\":[\"__Unused0\",\"CouldNotReadInput\"]}",
"docs": [],
"namespace": "ink_primitives::LangError",
"sub": [
{
"index": 0,
"info": "Null",
"name": "__Unused0",
"type": "Null"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "CouldNotReadInput"
}
]
},
{
"info": "Result",
"lookupIndex": 16,
"type": "Result<u128, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup15"
}
]
},
{
"info": "Result",
"lookupIndex": 17,
"type": "Result<Result<Null, Erc20Error>, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Result",
"lookupIndex": 18,
"type": "Result<Null, Erc20Error>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 19,
"lookupName": "Erc20Error",
"type": "Lookup19"
}
]
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup15"
}
]
},
{
"info": "Result",
"lookupIndex": 18,
"type": "Result<Null, Erc20Error>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 19,
"lookupName": "Erc20Error",
"type": "Lookup19"
}
]
},
{
"info": "Enum",
"lookupIndex": 19,
"lookupName": "Erc20Error",
"type": "{\"_enum\":[\"InsufficientBalance\",\"InsufficientAllowance\"]}",
"docs": [],
"namespace": "erc20::erc20::Error",
"sub": [
{
"info": "Null",
"type": "Null",
"index": 0,
"name": "InsufficientBalance"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "InsufficientAllowance"
}
]
},
{
"info": "Option",
"lookupIndex": 20,
"type": "Option<AccountId>",
"docs": [],
"namespace": "Option",
"sub": {
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
}
},
{
"info": "Plain",
"lookupIndex": 21,
"type": "Hash",
"docs": [],
"namespace": "ink_primitives::types::Hash",
"lookupNameRoot": "InkPrimitivesHash"
},
{
"info": "Plain",
"lookupIndex": 22,
"type": "u64",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 23,
"type": "u32",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 24,
"type": "NoChainExtension",
"docs": [],
"namespace": "ink_env::types::NoChainExtension",
"lookupNameRoot": "InkEnvNoChainExtension"
}
]
@@ -0,0 +1,370 @@
[
{
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"info": "Null",
"lookupIndex": 1,
"type": "Null",
"docs": [],
"namespace": "ink_storage::lazy::mapping::Mapping"
},
{
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
},
{
"info": "VecFixed",
"lookupIndex": 3,
"type": "[u8;32]",
"docs": [],
"namespace": "",
"length": 32,
"sub": {
"info": "Plain",
"lookupIndex": 4,
"type": "u8",
"docs": [],
"namespace": ""
}
},
{
"info": "Plain",
"lookupIndex": 4,
"type": "u8",
"docs": [],
"namespace": ""
},
{
"info": "Null",
"lookupIndex": 5,
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ResolverKey"
},
{
"info": "Null",
"lookupIndex": 6,
"lookupName": "InkStorageTraitsImplsAutoKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::AutoKey"
},
{
"info": "Null",
"lookupIndex": 7,
"lookupName": "InkStorageTraitsImplsManualKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ManualKey"
},
{
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"info": "Null",
"lookupIndex": 9,
"lookupName": "InkStorageLazyMapping",
"type": "Null",
"docs": [],
"namespace": "ink_storage::lazy::mapping::Mapping"
},
{
"info": "Tuple",
"lookupIndex": 10,
"type": "(AccountId,AccountId)",
"docs": [],
"namespace": "",
"sub": [
{
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
},
{
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
}
]
},
{
"info": "Null",
"lookupIndex": 11,
"lookupName": "InkStorageTraitsImplsResolverKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ResolverKey"
},
{
"info": "Null",
"lookupIndex": 12,
"lookupName": "InkStorageTraitsImplsManualKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ManualKey"
},
{
"info": "Struct",
"lookupIndex": 13,
"lookupName": "Erc20",
"type": "{\"totalSupply\":\"u128\",\"balances\":\"Null\",\"allowances\":\"InkStorageLazyMapping\"}",
"docs": [],
"namespace": "erc20::erc20::Erc20",
"sub": [
{
"docs": [],
"name": "totalSupply",
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"namespace": "",
"typeName": ""
},
{
"docs": [],
"name": "balances",
"info": "Null",
"lookupIndex": 1,
"type": "Null",
"namespace": "ink_storage::lazy::mapping::Mapping",
"typeName": ""
},
{
"docs": [],
"name": "allowances",
"info": "Null",
"lookupIndex": 9,
"lookupName": "InkStorageLazyMapping",
"type": "Null",
"namespace": "ink_storage::lazy::mapping::Mapping",
"typeName": ""
}
]
},
{
"info": "Result",
"lookupIndex": 14,
"type": "Result<Null, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup15"
}
]
},
{
"info": "Enum",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "{\"_enum\":[\"__Unused0\",\"CouldNotReadInput\"]}",
"docs": [],
"namespace": "ink_primitives::LangError",
"sub": [
{
"index": 0,
"info": "Null",
"name": "__Unused0",
"type": "Null"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "CouldNotReadInput"
}
]
},
{
"info": "Result",
"lookupIndex": 16,
"type": "Result<u128, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup15"
}
]
},
{
"info": "Result",
"lookupIndex": 17,
"type": "Result<Result<Null, Erc20Error>, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Result",
"lookupIndex": 18,
"type": "Result<Null, Erc20Error>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 19,
"lookupName": "Erc20Error",
"type": "Lookup19"
}
]
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup15"
}
]
},
{
"info": "Result",
"lookupIndex": 18,
"type": "Result<Null, Erc20Error>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 19,
"lookupName": "Erc20Error",
"type": "Lookup19"
}
]
},
{
"info": "Enum",
"lookupIndex": 19,
"lookupName": "Erc20Error",
"type": "{\"_enum\":[\"InsufficientBalance\",\"InsufficientAllowance\"]}",
"docs": [],
"namespace": "erc20::erc20::Error",
"sub": [
{
"info": "Null",
"type": "Null",
"index": 0,
"name": "InsufficientBalance"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "InsufficientAllowance"
}
]
},
{
"info": "Option",
"lookupIndex": 20,
"type": "Option<AccountId>",
"docs": [],
"namespace": "Option",
"sub": {
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
}
},
{
"info": "Plain",
"lookupIndex": 21,
"type": "Hash",
"docs": [],
"namespace": "ink_primitives::types::Hash",
"lookupNameRoot": "InkPrimitivesHash"
},
{
"info": "Plain",
"lookupIndex": 22,
"type": "u64",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 23,
"type": "u32",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 24,
"type": "NoChainExtension",
"docs": [],
"namespace": "ink_env::types::NoChainExtension",
"lookupNameRoot": "InkEnvNoChainExtension"
}
]
@@ -0,0 +1,370 @@
[
{
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"info": "Null",
"lookupIndex": 1,
"type": "Null",
"docs": [],
"namespace": "ink_storage::lazy::mapping::Mapping"
},
{
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
},
{
"info": "VecFixed",
"lookupIndex": 3,
"type": "[u8;32]",
"docs": [],
"namespace": "",
"length": 32,
"sub": {
"info": "Plain",
"lookupIndex": 4,
"type": "u8",
"docs": [],
"namespace": ""
}
},
{
"info": "Plain",
"lookupIndex": 4,
"type": "u8",
"docs": [],
"namespace": ""
},
{
"info": "Null",
"lookupIndex": 5,
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ResolverKey"
},
{
"info": "Null",
"lookupIndex": 6,
"lookupName": "InkStorageTraitsImplsAutoKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::AutoKey"
},
{
"info": "Null",
"lookupIndex": 7,
"lookupName": "InkStorageTraitsImplsManualKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ManualKey"
},
{
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"info": "Null",
"lookupIndex": 9,
"lookupName": "InkStorageLazyMapping",
"type": "Null",
"docs": [],
"namespace": "ink_storage::lazy::mapping::Mapping"
},
{
"info": "Tuple",
"lookupIndex": 10,
"type": "(AccountId,AccountId)",
"docs": [],
"namespace": "",
"sub": [
{
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
},
{
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
}
]
},
{
"info": "Null",
"lookupIndex": 11,
"lookupName": "InkStorageTraitsImplsResolverKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ResolverKey"
},
{
"info": "Null",
"lookupIndex": 12,
"lookupName": "InkStorageTraitsImplsManualKey",
"type": "Null",
"docs": [],
"namespace": "ink_storage_traits::impls::ManualKey"
},
{
"info": "Struct",
"lookupIndex": 13,
"lookupName": "Erc20",
"type": "{\"totalSupply\":\"u128\",\"balances\":\"Null\",\"allowances\":\"InkStorageLazyMapping\"}",
"docs": [],
"namespace": "erc20::erc20::Erc20",
"sub": [
{
"docs": [],
"name": "totalSupply",
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"namespace": "",
"typeName": ""
},
{
"docs": [],
"name": "balances",
"info": "Null",
"lookupIndex": 1,
"type": "Null",
"namespace": "ink_storage::lazy::mapping::Mapping",
"typeName": ""
},
{
"docs": [],
"name": "allowances",
"info": "Null",
"lookupIndex": 9,
"lookupName": "InkStorageLazyMapping",
"type": "Null",
"namespace": "ink_storage::lazy::mapping::Mapping",
"typeName": ""
}
]
},
{
"info": "Result",
"lookupIndex": 14,
"type": "Result<Null, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup15"
}
]
},
{
"info": "Enum",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "{\"_enum\":[\"__Unused0\",\"CouldNotReadInput\"]}",
"docs": [],
"namespace": "ink_primitives::LangError",
"sub": [
{
"index": 0,
"info": "Null",
"name": "__Unused0",
"type": "Null"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "CouldNotReadInput"
}
]
},
{
"info": "Result",
"lookupIndex": 16,
"type": "Result<u128, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Plain",
"lookupIndex": 0,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup15"
}
]
},
{
"info": "Result",
"lookupIndex": 17,
"type": "Result<Result<Null, Erc20Error>, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Result",
"lookupIndex": 18,
"type": "Result<Null, Erc20Error>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 19,
"lookupName": "Erc20Error",
"type": "Lookup19"
}
]
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 15,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup15"
}
]
},
{
"info": "Result",
"lookupIndex": 18,
"type": "Result<Null, Erc20Error>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 8,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 19,
"lookupName": "Erc20Error",
"type": "Lookup19"
}
]
},
{
"info": "Enum",
"lookupIndex": 19,
"lookupName": "Erc20Error",
"type": "{\"_enum\":[\"InsufficientBalance\",\"InsufficientAllowance\"]}",
"docs": [],
"namespace": "erc20::erc20::Error",
"sub": [
{
"info": "Null",
"type": "Null",
"index": 0,
"name": "InsufficientBalance"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "InsufficientAllowance"
}
]
},
{
"info": "Option",
"lookupIndex": 20,
"type": "Option<AccountId>",
"docs": [],
"namespace": "Option",
"sub": {
"info": "Plain",
"lookupIndex": 2,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
}
},
{
"info": "Plain",
"lookupIndex": 21,
"type": "Hash",
"docs": [],
"namespace": "ink_primitives::types::Hash",
"lookupNameRoot": "InkPrimitivesHash"
},
{
"info": "Plain",
"lookupIndex": 22,
"type": "u64",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 23,
"type": "u32",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 24,
"type": "NoChainExtension",
"docs": [],
"namespace": "ink_env::types::NoChainExtension",
"lookupNameRoot": "InkEnvNoChainExtension"
}
]
@@ -0,0 +1,174 @@
[
{
"info": "Plain",
"lookupIndex": 0,
"type": "bool",
"docs": [],
"namespace": ""
},
{
"info": "Struct",
"lookupIndex": 1,
"lookupName": "Flipper",
"type": "{\"value\":\"bool\"}",
"docs": [],
"namespace": "flipper::flipper::Flipper",
"sub": [
{
"docs": [],
"name": "value",
"info": "Plain",
"lookupIndex": 0,
"type": "bool",
"namespace": "",
"typeName": ""
}
]
},
{
"info": "Result",
"lookupIndex": 2,
"type": "Result<Null, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 3,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 4,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup4"
}
]
},
{
"info": "Null",
"lookupIndex": 3,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"info": "Enum",
"lookupIndex": 4,
"lookupName": "InkPrimitivesLangError",
"type": "{\"_enum\":[\"__Unused0\",\"CouldNotReadInput\"]}",
"docs": [],
"namespace": "ink_primitives::LangError",
"sub": [
{
"index": 0,
"info": "Null",
"name": "__Unused0",
"type": "Null"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "CouldNotReadInput"
}
]
},
{
"info": "Result",
"lookupIndex": 5,
"type": "Result<bool, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Plain",
"lookupIndex": 0,
"type": "bool",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 4,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup4"
}
]
},
{
"info": "Plain",
"lookupIndex": 6,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
},
{
"info": "VecFixed",
"lookupIndex": 7,
"type": "[u8;32]",
"docs": [],
"namespace": "",
"length": 32,
"sub": {
"info": "Plain",
"lookupIndex": 8,
"type": "u8",
"docs": [],
"namespace": ""
}
},
{
"info": "Plain",
"lookupIndex": 8,
"type": "u8",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 9,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 10,
"type": "Hash",
"docs": [],
"namespace": "ink_primitives::types::Hash",
"lookupNameRoot": "InkPrimitivesHash"
},
{
"info": "Plain",
"lookupIndex": 11,
"type": "u64",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 12,
"type": "u32",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 13,
"type": "NoChainExtension",
"docs": [],
"namespace": "ink_env::types::NoChainExtension",
"lookupNameRoot": "InkEnvNoChainExtension"
}
]
@@ -0,0 +1,174 @@
[
{
"info": "Plain",
"lookupIndex": 0,
"type": "bool",
"docs": [],
"namespace": ""
},
{
"info": "Struct",
"lookupIndex": 1,
"lookupName": "Flipper",
"type": "{\"value\":\"bool\"}",
"docs": [],
"namespace": "flipper::flipper::Flipper",
"sub": [
{
"docs": [],
"name": "value",
"info": "Plain",
"lookupIndex": 0,
"type": "bool",
"namespace": "",
"typeName": ""
}
]
},
{
"info": "Result",
"lookupIndex": 2,
"type": "Result<Null, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Null",
"lookupIndex": 3,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 4,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup4"
}
]
},
{
"info": "Null",
"lookupIndex": 3,
"type": "Null",
"docs": [],
"namespace": ""
},
{
"info": "Enum",
"lookupIndex": 4,
"lookupName": "InkPrimitivesLangError",
"type": "{\"_enum\":[\"__Unused0\",\"CouldNotReadInput\"]}",
"docs": [],
"namespace": "ink_primitives::LangError",
"sub": [
{
"index": 0,
"info": "Null",
"name": "__Unused0",
"type": "Null"
},
{
"info": "Null",
"type": "Null",
"index": 1,
"name": "CouldNotReadInput"
}
]
},
{
"info": "Result",
"lookupIndex": 5,
"type": "Result<bool, InkPrimitivesLangError>",
"docs": [],
"namespace": "Result",
"sub": [
{
"name": "Ok",
"info": "Plain",
"lookupIndex": 0,
"type": "bool",
"docs": [],
"namespace": ""
},
{
"name": "Error",
"docs": [],
"info": "Si",
"lookupIndex": 4,
"lookupName": "InkPrimitivesLangError",
"type": "Lookup4"
}
]
},
{
"info": "Plain",
"lookupIndex": 6,
"type": "AccountId",
"docs": [],
"namespace": "ink_primitives::types::AccountId",
"lookupNameRoot": "InkPrimitivesAccountId"
},
{
"info": "VecFixed",
"lookupIndex": 7,
"type": "[u8;32]",
"docs": [],
"namespace": "",
"length": 32,
"sub": {
"info": "Plain",
"lookupIndex": 8,
"type": "u8",
"docs": [],
"namespace": ""
}
},
{
"info": "Plain",
"lookupIndex": 8,
"type": "u8",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 9,
"type": "u128",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 10,
"type": "Hash",
"docs": [],
"namespace": "ink_primitives::types::Hash",
"lookupNameRoot": "InkPrimitivesHash"
},
{
"info": "Plain",
"lookupIndex": 11,
"type": "u64",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 12,
"type": "u32",
"docs": [],
"namespace": ""
},
{
"info": "Plain",
"lookupIndex": 13,
"type": "NoChainExtension",
"docs": [],
"namespace": "ink_env::types::NoChainExtension",
"lookupNameRoot": "InkEnvNoChainExtension"
}
]
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import ink from './ink/index.js';
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { createVersionedExport } from '../util.js';
@@ -7,5 +7,6 @@ import * as v1 from './v1/index.js';
import * as v2 from './v2/index.js';
import * as v3 from './v3/index.js';
import * as v4 from './v4/index.js';
import * as v5 from './v5/index.js';
export default createVersionedExport({ v0, v1, v2, v3, v4 });
export default createVersionedExport({ v0, v1, v2, v3, v4, v5 });
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { default as delegator } from './delegator.json' assert { type: 'json' };
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { default as flipper } from './flipper.contract.json' assert { type: 'json' };
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { default as erc20 } from './erc20.contract.json' assert { type: 'json' };
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { default as flipper } from './flipper.contract.json' assert { type: 'json' };
File diff suppressed because one or more lines are too long
@@ -0,0 +1,821 @@
{
"source": {
"hash": "0x114f55289bcdfd0d28e0bbd1c63452b4e45901a022b1011d298fa2eb12d1711d",
"language": "ink! 4.3.0",
"compiler": "rustc 1.75.0",
"build_info": {
"build_mode": "Debug",
"cargo_contract_version": "3.2.0",
"rust_toolchain": "stable-aarch64-apple-darwin",
"wasm_opt_settings": {
"keep_debug_symbols": false,
"optimization_passes": "Z"
}
}
},
"contract": {
"name": "erc20",
"version": "4.3.0",
"authors": [
"Parity Technologies <admin@parity.io>"
]
},
"spec": {
"constructors": [
{
"args": [
{
"label": "total_supply",
"type": {
"displayName": [
"Balance"
],
"type": 0
}
}
],
"default": false,
"docs": [
"Creates a new ERC-20 contract with the specified initial supply."
],
"label": "new",
"payable": false,
"returnType": {
"displayName": [
"ink_primitives",
"ConstructorResult"
],
"type": 1
},
"selector": "0x9bae9d5e"
}
],
"docs": [],
"environment": {
"accountId": {
"displayName": [
"AccountId"
],
"type": 5
},
"balance": {
"displayName": [
"Balance"
],
"type": 0
},
"blockNumber": {
"displayName": [
"BlockNumber"
],
"type": 14
},
"chainExtension": {
"displayName": [
"ChainExtension"
],
"type": 15
},
"hash": {
"displayName": [
"Hash"
],
"type": 12
},
"maxEventTopics": 4,
"timestamp": {
"displayName": [
"Timestamp"
],
"type": 13
}
},
"events": [
{
"args": [
{
"docs": [],
"indexed": true,
"label": "from",
"type": {
"displayName": [
"Option"
],
"type": 11
}
},
{
"docs": [],
"indexed": true,
"label": "to",
"type": {
"displayName": [
"Option"
],
"type": 11
}
},
{
"docs": [],
"indexed": false,
"label": "value",
"type": {
"displayName": [
"Balance"
],
"type": 0
}
}
],
"docs": [
"Event emitted when a token transfer occurs."
],
"label": "Transfer"
},
{
"args": [
{
"docs": [],
"indexed": true,
"label": "owner",
"type": {
"displayName": [
"AccountId"
],
"type": 5
}
},
{
"docs": [],
"indexed": true,
"label": "spender",
"type": {
"displayName": [
"AccountId"
],
"type": 5
}
},
{
"docs": [],
"indexed": false,
"label": "value",
"type": {
"displayName": [
"Balance"
],
"type": 0
}
}
],
"docs": [
"Event emitted when an approval occurs that `spender` is allowed to withdraw",
"up to the amount of `value` tokens from `owner`."
],
"label": "Approval"
}
],
"lang_error": {
"displayName": [
"ink",
"LangError"
],
"type": 3
},
"messages": [
{
"args": [],
"default": false,
"docs": [
" Returns the total token supply."
],
"label": "total_supply",
"mutates": false,
"payable": false,
"returnType": {
"displayName": [
"ink",
"MessageResult"
],
"type": 4
},
"selector": "0xdb6375a8"
},
{
"args": [
{
"label": "owner",
"type": {
"displayName": [
"AccountId"
],
"type": 5
}
}
],
"default": false,
"docs": [
" Returns the account balance for the specified `owner`.",
"",
" Returns `0` if the account is non-existent."
],
"label": "balance_of",
"mutates": false,
"payable": false,
"returnType": {
"displayName": [
"ink",
"MessageResult"
],
"type": 4
},
"selector": "0x0f755a56"
},
{
"args": [
{
"label": "owner",
"type": {
"displayName": [
"AccountId"
],
"type": 5
}
},
{
"label": "spender",
"type": {
"displayName": [
"AccountId"
],
"type": 5
}
}
],
"default": false,
"docs": [
" Returns the amount which `spender` is still allowed to withdraw from `owner`.",
"",
" Returns `0` if no allowance has been set."
],
"label": "allowance",
"mutates": false,
"payable": false,
"returnType": {
"displayName": [
"ink",
"MessageResult"
],
"type": 4
},
"selector": "0x6a00165e"
},
{
"args": [
{
"label": "to",
"type": {
"displayName": [
"AccountId"
],
"type": 5
}
},
{
"label": "value",
"type": {
"displayName": [
"Balance"
],
"type": 0
}
}
],
"default": false,
"docs": [
" Transfers `value` amount of tokens from the caller's account to account `to`.",
"",
" On success a `Transfer` event is emitted.",
"",
" # Errors",
"",
" Returns `InsufficientBalance` error if there are not enough tokens on",
" the caller's account balance."
],
"label": "transfer",
"mutates": true,
"payable": false,
"returnType": {
"displayName": [
"ink",
"MessageResult"
],
"type": 8
},
"selector": "0x84a15da1"
},
{
"args": [
{
"label": "spender",
"type": {
"displayName": [
"AccountId"
],
"type": 5
}
},
{
"label": "value",
"type": {
"displayName": [
"Balance"
],
"type": 0
}
}
],
"default": false,
"docs": [
" Allows `spender` to withdraw from the caller's account multiple times, up to",
" the `value` amount.",
"",
" If this function is called again it overwrites the current allowance with",
" `value`.",
"",
" An `Approval` event is emitted."
],
"label": "approve",
"mutates": true,
"payable": false,
"returnType": {
"displayName": [
"ink",
"MessageResult"
],
"type": 8
},
"selector": "0x681266a0"
},
{
"args": [
{
"label": "from",
"type": {
"displayName": [
"AccountId"
],
"type": 5
}
},
{
"label": "to",
"type": {
"displayName": [
"AccountId"
],
"type": 5
}
},
{
"label": "value",
"type": {
"displayName": [
"Balance"
],
"type": 0
}
}
],
"default": false,
"docs": [
" Transfers `value` tokens on the behalf of `from` to the account `to`.",
"",
" This can be used to allow a contract to transfer tokens on ones behalf and/or",
" to charge fees in sub-currencies, for example.",
"",
" On success a `Transfer` event is emitted.",
"",
" # Errors",
"",
" Returns `InsufficientAllowance` error if there are not enough tokens allowed",
" for the caller to withdraw from `from`.",
"",
" Returns `InsufficientBalance` error if there are not enough tokens on",
" the account balance of `from`."
],
"label": "transfer_from",
"mutates": true,
"payable": false,
"returnType": {
"displayName": [
"ink",
"MessageResult"
],
"type": 8
},
"selector": "0x0b396f18"
}
]
},
"storage": {
"root": {
"layout": {
"struct": {
"fields": [
{
"layout": {
"leaf": {
"key": "0x00000000",
"ty": 0
}
},
"name": "total_supply"
},
{
"layout": {
"root": {
"layout": {
"leaf": {
"key": "0x2623dce7",
"ty": 0
}
},
"root_key": "0x2623dce7"
}
},
"name": "balances"
},
{
"layout": {
"root": {
"layout": {
"leaf": {
"key": "0xeca021b7",
"ty": 0
}
},
"root_key": "0xeca021b7"
}
},
"name": "allowances"
}
],
"name": "Erc20"
}
},
"root_key": "0x00000000"
}
},
"types": [
{
"id": 0,
"type": {
"def": {
"primitive": "u128"
}
}
},
{
"id": 1,
"type": {
"def": {
"variant": {
"variants": [
{
"fields": [
{
"type": 2
}
],
"index": 0,
"name": "Ok"
},
{
"fields": [
{
"type": 3
}
],
"index": 1,
"name": "Err"
}
]
}
},
"params": [
{
"name": "T",
"type": 2
},
{
"name": "E",
"type": 3
}
],
"path": [
"Result"
]
}
},
{
"id": 2,
"type": {
"def": {
"tuple": []
}
}
},
{
"id": 3,
"type": {
"def": {
"variant": {
"variants": [
{
"index": 1,
"name": "CouldNotReadInput"
}
]
}
},
"path": [
"ink_primitives",
"LangError"
]
}
},
{
"id": 4,
"type": {
"def": {
"variant": {
"variants": [
{
"fields": [
{
"type": 0
}
],
"index": 0,
"name": "Ok"
},
{
"fields": [
{
"type": 3
}
],
"index": 1,
"name": "Err"
}
]
}
},
"params": [
{
"name": "T",
"type": 0
},
{
"name": "E",
"type": 3
}
],
"path": [
"Result"
]
}
},
{
"id": 5,
"type": {
"def": {
"composite": {
"fields": [
{
"type": 6,
"typeName": "[u8; 32]"
}
]
}
},
"path": [
"ink_primitives",
"types",
"AccountId"
]
}
},
{
"id": 6,
"type": {
"def": {
"array": {
"len": 32,
"type": 7
}
}
}
},
{
"id": 7,
"type": {
"def": {
"primitive": "u8"
}
}
},
{
"id": 8,
"type": {
"def": {
"variant": {
"variants": [
{
"fields": [
{
"type": 9
}
],
"index": 0,
"name": "Ok"
},
{
"fields": [
{
"type": 3
}
],
"index": 1,
"name": "Err"
}
]
}
},
"params": [
{
"name": "T",
"type": 9
},
{
"name": "E",
"type": 3
}
],
"path": [
"Result"
]
}
},
{
"id": 9,
"type": {
"def": {
"variant": {
"variants": [
{
"fields": [
{
"type": 2
}
],
"index": 0,
"name": "Ok"
},
{
"fields": [
{
"type": 10
}
],
"index": 1,
"name": "Err"
}
]
}
},
"params": [
{
"name": "T",
"type": 2
},
{
"name": "E",
"type": 10
}
],
"path": [
"Result"
]
}
},
{
"id": 10,
"type": {
"def": {
"variant": {
"variants": [
{
"index": 0,
"name": "InsufficientBalance"
},
{
"index": 1,
"name": "InsufficientAllowance"
}
]
}
},
"path": [
"erc20",
"erc20",
"Error"
]
}
},
{
"id": 11,
"type": {
"def": {
"variant": {
"variants": [
{
"index": 0,
"name": "None"
},
{
"fields": [
{
"type": 5
}
],
"index": 1,
"name": "Some"
}
]
}
},
"params": [
{
"name": "T",
"type": 5
}
],
"path": [
"Option"
]
}
},
{
"id": 12,
"type": {
"def": {
"composite": {
"fields": [
{
"type": 6,
"typeName": "[u8; 32]"
}
]
}
},
"path": [
"ink_primitives",
"types",
"Hash"
]
}
},
{
"id": 13,
"type": {
"def": {
"primitive": "u64"
}
}
},
{
"id": 14,
"type": {
"def": {
"primitive": "u32"
}
}
},
{
"id": 15,
"type": {
"def": {
"variant": {}
},
"path": [
"ink_env",
"types",
"NoChainExtension"
]
}
}
],
"version": "4"
}
@@ -1,5 +1,7 @@
// Copyright 2017-2023 @polkadot/api-contract authors & contributors
// Copyright 2017-2024 @polkadot/api-contract authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { default as erc20Contract } from './erc20.contract.json' assert { type: 'json' };
export { default as erc20Metadata } from './erc20.json' assert { type: 'json' };
export { default as flipperContract } from './flipper.contract.json' assert { type: 'json' };
export { default as flipperMetadata } from './flipper.json' assert { type: 'json' };

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