@lukso/lsp8-contracts 0.15.0-rc.5 → 0.16.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -1
- package/artifacts/ILSP8IdentifiableDigitalAsset.json +0 -112
- package/artifacts/LSP8Burnable.json +0 -11
- package/artifacts/LSP8BurnableInitAbstract.json +0 -16
- package/artifacts/LSP8CappedSupply.json +0 -11
- package/artifacts/LSP8CappedSupplyInitAbstract.json +0 -16
- package/artifacts/LSP8Enumerable.json +0 -11
- package/artifacts/LSP8EnumerableInitAbstract.json +0 -16
- package/artifacts/LSP8IdentifiableDigitalAsset.json +0 -11
- package/artifacts/LSP8IdentifiableDigitalAssetInitAbstract.json +0 -16
- package/artifacts/LSP8Mintable.json +2 -13
- package/artifacts/LSP8MintableInit.json +2 -13
- package/artifacts/LSP8Votes.json +1230 -0
- package/artifacts/LSP8VotesInitAbstract.json +1222 -0
- package/compatibility-abis/LSP8IdentifiableDigitalAsset-v0.12.0.json +739 -748
- package/compatibility-abis/LSP8IdentifiableDigitalAsset-v0.13.0.json +890 -899
- package/compatibility-abis/LSP8IdentifiableDigitalAsset-v0.14.0.json +890 -899
- package/compatibility-abis/LSP8IdentifiableDigitalAsset.json +927 -0
- package/compatibility-abis/README.md +34 -0
- package/contracts/ILSP8IdentifiableDigitalAsset.sol +2 -8
- package/contracts/LSP8Constants.sol +4 -0
- package/contracts/LSP8IdentifiableDigitalAsset.sol +796 -36
- package/contracts/LSP8IdentifiableDigitalAssetInitAbstract.sol +806 -36
- package/contracts/extensions/LSP8CappedSupply.sol +1 -1
- package/contracts/extensions/LSP8CappedSupplyInitAbstract.sol +1 -1
- package/contracts/extensions/LSP8Enumerable.sol +6 -5
- package/contracts/extensions/LSP8EnumerableInitAbstract.sol +5 -5
- package/contracts/extensions/LSP8Votes.sol +94 -0
- package/contracts/extensions/LSP8VotesConstants.sol +8 -0
- package/contracts/extensions/LSP8VotesInitAbstract.sol +116 -0
- package/dist/index.cjs +10 -1
- package/dist/index.d.cts +23 -17
- package/dist/index.d.mts +23 -17
- package/dist/index.d.ts +23 -17
- package/dist/index.mjs +10 -2
- package/package.json +7 -8
- package/types/index.ts +3958 -1854
- package/contracts/LSP8IdentifiableDigitalAssetCore.sol +0 -806
- package/types/common.ts +0 -131
- package/types/contracts/ILSP8IdentifiableDigitalAsset.ts +0 -706
- package/types/contracts/LSP8IdentifiableDigitalAsset.ts +0 -778
- package/types/contracts/LSP8IdentifiableDigitalAssetInitAbstract.ts +0 -813
- package/types/contracts/extensions/LSP8Burnable.ts +0 -797
- package/types/contracts/extensions/LSP8BurnableInitAbstract.ts +0 -829
- package/types/contracts/extensions/LSP8CappedSupply.ts +0 -792
- package/types/contracts/extensions/LSP8CappedSupplyInitAbstract.ts +0 -824
- package/types/contracts/extensions/LSP8Enumerable.ts +0 -790
- package/types/contracts/extensions/LSP8EnumerableInitAbstract.ts +0 -821
- package/types/contracts/presets/LSP8Mintable.ts +0 -797
- package/types/contracts/presets/LSP8MintableInit.ts +0 -860
@@ -2,8 +2,42 @@
|
|
2
2
|
|
3
3
|
This folder contains historical ABIs from previous release versions.
|
4
4
|
|
5
|
+
**🧬 Interface ID changes**
|
6
|
+
|
5
7
|
- `v0.14.0`: LSP8 interface ID was `0x3a271706`.
|
6
8
|
- `v0.13.0`: LSP8 interface ID was `0xecad9f75`.
|
7
9
|
- `v0.12.0`: LSP8 interface ID was `0x30dc5278`.
|
8
10
|
|
9
11
|
This is to enable dApps and projects to be backward compatible in their interfaces to display and interact with LSP8 token contracts deployed with these old versions, by consuming their old ABIs.
|
12
|
+
|
13
|
+
## List of ABI changes from `0.12.0` to `0.13.0`:
|
14
|
+
|
15
|
+
**Events**
|
16
|
+
|
17
|
+
- event `AuthorizedOperator` renamed to `OperatorAuthorizationChanged`
|
18
|
+
- event `RevokedOperator` renamed to `OperatorRevoked`
|
19
|
+
|
20
|
+
**Functions**
|
21
|
+
|
22
|
+
- new function `batchCalls(bytes[])`.
|
23
|
+
- new function `getTokenIdData(bytes32)`, `getTokenIdDataBatch(bytes32[])`, `setTokenIdData(bytes32,bytes)` and `setTokenIdDataBatch(bytes32[],bytes[])`.
|
24
|
+
- `version()` endpoint removed from `0.12.0`.
|
25
|
+
|
26
|
+
**Errors**
|
27
|
+
|
28
|
+
- new custom errors: `LSP4TokenTypeNotEditable()`, `LSP8BatchCallFailed(uint256)`, `LSP8TokenIdsDataEmptyArray()` and `LSP8TokenIdsDataLengthMismatch()`.
|
29
|
+
- custom error `LSP8TokenIdTypeNotEditable` renamed to `LSP8TokenIdSchemaNotEditable`
|
30
|
+
|
31
|
+
## List of ABI changes from `0.13.0` to `0.14.0`:
|
32
|
+
|
33
|
+
- custom error `LSP8TokenIdSchemaNotEditable` renamed to `LSP8TokenIdFormatNotEditable`.
|
34
|
+
- functions renamed as follow:
|
35
|
+
- `getTokenIdData(bytes32)` --> `getDataForTokenId(bytes32)`
|
36
|
+
- `getTokenIdDataBatch(bytes32[])` --> `getDataBatchForTokenId(bytes32[])`
|
37
|
+
- `setTokenIdData(bytes32,bytes)` --> `setDataForTokenId(bytes32,bytes)`
|
38
|
+
- `setTokenIdDataBatch(bytes32[],bytes[])` --> `setDataBatchForTokenId(bytes32[],bytes[])`
|
39
|
+
|
40
|
+
## List of ABI changes from `0.14.0` to `latest`:
|
41
|
+
|
42
|
+
- removed custom error `LSP8CannotSendToSelf()`.
|
43
|
+
- new custom errors `LSP8TokenOwnerChanged` and `LSP8RevokeOperatorNotAuthorized`.
|
@@ -1,16 +1,10 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.4;
|
3
3
|
|
4
|
-
// interfaces
|
5
|
-
import {IERC165} from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
|
6
|
-
import {
|
7
|
-
IERC725Y
|
8
|
-
} from "@erc725/smart-contracts/contracts/interfaces/IERC725Y.sol";
|
9
|
-
|
10
4
|
/**
|
11
5
|
* @title Interface of the LSP8 - Identifiable Digital Asset standard, a non-fungible digital asset.
|
12
6
|
*/
|
13
|
-
interface ILSP8IdentifiableDigitalAsset
|
7
|
+
interface ILSP8IdentifiableDigitalAsset {
|
14
8
|
// --- Events
|
15
9
|
|
16
10
|
/**
|
@@ -254,7 +248,7 @@ interface ILSP8IdentifiableDigitalAsset is IERC165, IERC725Y {
|
|
254
248
|
* @param from The address that owns the given `tokenId`.
|
255
249
|
* @param to The address that will receive the `tokenId`.
|
256
250
|
* @param tokenId The token ID to transfer.
|
257
|
-
* @param force When set to `true`, the `to` address CAN be any
|
251
|
+
* @param force When set to `true`, the `to` address CAN be any address.
|
258
252
|
* When set to `false`, the `to` address MUST be a contract that supports the LSP1 UniversalReceiver standard.
|
259
253
|
* @param data Any additional data the caller wants included in the emitted event, and sent in the hooks of the `from` and `to` addresses.
|
260
254
|
*
|
@@ -4,6 +4,10 @@ pragma solidity ^0.8.4;
|
|
4
4
|
// --- ERC165 interface ids
|
5
5
|
bytes4 constant _INTERFACEID_LSP8 = 0x3a271706;
|
6
6
|
|
7
|
+
bytes4 constant _INTERFACEID_LSP8_V0_12_0 = 0x30dc5278;
|
8
|
+
|
9
|
+
bytes4 constant _INTERFACEID_LSP8_V0_14_0 = 0xecad9f75;
|
10
|
+
|
7
11
|
// --- ERC725Y Data Keys
|
8
12
|
|
9
13
|
// keccak256('LSP8TokenIdFormat')
|