Skip to content

Commit

Permalink
fix!: update post-condition names for non-fungible tokens
Browse files Browse the repository at this point in the history
BREAKING CHANGE:
Post-conditions for NFTs were renamed to be more clear: `Owns` to `Sends`, `DoesNotOwn` to `DoesNotSend`.
  • Loading branch information
janniks committed Sep 30, 2022
1 parent fc7e50c commit 9fbdcea
Show file tree
Hide file tree
Showing 6 changed files with 13 additions and 13 deletions.
4 changes: 2 additions & 2 deletions packages/bns/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -708,7 +708,7 @@ export async function buildTransferNameTx({
];
const postConditionSender = createNonFungiblePostCondition(
publicKeyToAddress(getAddressVersion(network), createStacksPublicKey(publicKey)),
NonFungibleConditionCode.DoesNotOwn,
NonFungibleConditionCode.DoesNotSend,
parseAssetInfoString(`${getBnsContractAddress(network)}.bns::names`),
tupleCV({
name: bufferCVFromString(name),
Expand All @@ -717,7 +717,7 @@ export async function buildTransferNameTx({
);
const postConditionReceiver = createNonFungiblePostCondition(
newOwnerAddress,
NonFungibleConditionCode.Owns,
NonFungibleConditionCode.Sends,
parseAssetInfoString(`${getBnsContractAddress(network)}.bns::names`),
tupleCV({
name: bufferCVFromString(name),
Expand Down
8 changes: 4 additions & 4 deletions packages/bns/tests/bns.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -709,7 +709,7 @@ test('transferName', async () => {
const { namespace, name } = decodeFQN(fullyQualifiedName);
const nameTransferPostConditionOne = createNonFungiblePostCondition(
publicKeyToAddress(getAddressVersion(network), createStacksPublicKey(publicKey)),
NonFungibleConditionCode.DoesNotOwn,
NonFungibleConditionCode.DoesNotSend,
parseAssetInfoString(`${getBnsContractAddress(network)}.bns::names`),
tupleCV({
name: bufferCVFromString(name),
Expand All @@ -718,7 +718,7 @@ test('transferName', async () => {
);
const nameTransferPostConditionTwo = createNonFungiblePostCondition(
newOwnerAddress,
NonFungibleConditionCode.Owns,
NonFungibleConditionCode.Sends,
parseAssetInfoString(`${getBnsContractAddress(network)}.bns::names`),
tupleCV({
name: bufferCVFromString(name),
Expand Down Expand Up @@ -777,7 +777,7 @@ test('transferName optionalArguments', async () => {
const { namespace, name } = decodeFQN(fullyQualifiedName);
const nameTransferPostConditionOne = createNonFungiblePostCondition(
publicKeyToAddress(getAddressVersion(network), createStacksPublicKey(publicKey)),
NonFungibleConditionCode.DoesNotOwn,
NonFungibleConditionCode.DoesNotSend,
parseAssetInfoString(`${getBnsContractAddress(network)}.bns::names`),
tupleCV({
name: bufferCVFromString(name),
Expand All @@ -786,7 +786,7 @@ test('transferName optionalArguments', async () => {
);
const nameTransferPostConditionTwo = createNonFungiblePostCondition(
newOwnerAddress,
NonFungibleConditionCode.Owns,
NonFungibleConditionCode.Sends,
parseAssetInfoString(`${getBnsContractAddress(network)}.bns::names`),
tupleCV({
name: bufferCVFromString(name),
Expand Down
2 changes: 1 addition & 1 deletion packages/transactions/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -475,7 +475,7 @@ import {

// With a standard principal
const postConditionAddress = 'SP2ZD731ANQZT6J4K3F5N8A40ZXWXC1XFXHVVQFKE';
const postConditionCode = NonFungibleConditionCode.Owns;
const postConditionCode = NonFungibleConditionCode.Sends;
const assetAddress = 'SP62M8MEFH32WGSB7XSF9WJZD7TQB48VQB5ANWSJ';
const assetContractName = 'test-asset-contract';
const assetName = 'test-asset';
Expand Down
4 changes: 2 additions & 2 deletions packages/transactions/src/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -126,8 +126,8 @@ enum FungibleConditionCode {
}

enum NonFungibleConditionCode {
DoesNotOwn = 0x10,
Owns = 0x11,
DoesNotSend = 0x10,
Sends = 0x11,
}

enum PostConditionPrincipalID {
Expand Down
4 changes: 2 additions & 2 deletions packages/transactions/tests/builder.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -870,14 +870,14 @@ test('Make contract-call with post conditions', async () => {
),
makeStandardNonFungiblePostCondition(
postConditionAddress,
NonFungibleConditionCode.Owns,
NonFungibleConditionCode.Sends,
info,
bufferCVFromString(tokenAssetName)
),
makeContractNonFungiblePostCondition(
postConditionAddress,
contractName,
NonFungibleConditionCode.DoesNotOwn,
NonFungibleConditionCode.DoesNotSend,
info,
bufferCVFromString(tokenAssetName)
),
Expand Down
4 changes: 2 additions & 2 deletions packages/transactions/tests/postcondition.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ test('Non-fungible post condition serialization and deserialization', () => {
const contractName = 'contract-name';
const principal = createContractPrincipal(address, contractName);

const conditionCode = NonFungibleConditionCode.Owns;
const conditionCode = NonFungibleConditionCode.Sends;

const assetAddress = 'SP2ZP4GJDZJ1FDHTQ963F0292PE9J9752TZJ68F21';
const assetContractName = 'contract_name';
Expand Down Expand Up @@ -124,7 +124,7 @@ test('Non-fungible post condition with string IDs serialization and deserializat
const address = 'SP2JXKMSH007NPYAQHKJPQMAQYAD90NQGTVJVQ02B';
const contractName = 'contract-name';

const conditionCode = NonFungibleConditionCode.Owns;
const conditionCode = NonFungibleConditionCode.Sends;

const assetAddress = 'SP2ZP4GJDZJ1FDHTQ963F0292PE9J9752TZJ68F21';
const assetContractName = 'contract_name';
Expand Down

0 comments on commit 9fbdcea

Please sign in to comment.