Skip to content

v1.3.3

Choose a tag to compare

@lucas2brh lucas2brh released this 11 Jul 08:09
· 56 commits to main since this release
0b35892

TypeScript SDK v1.3.3 Release Notes

Version 1.3.3 introduces license token limit controls, adds new license management methods, and includes developer experience improvements. This release primarily focuses on enhancing license management capabilities while maintaining backward compatibility with minimal breaking changes.

Features & Enhancements

  • Adds comprehensive support for license token limits. The SDK now supports setting total license token limits through the maxLicenseTokens parameter in LicenseTermsDataInput, which automatically configures the TotalLicenseTokenLimitHook. Additionally, introduces the new setMaxLicenseTokens method in the License module for setting limits on existing license terms(#572). The following methods support license token limiting:
    • mintAndRegisterIpAssetWithPilTerms
    • registerIpAndAttachPilTerms
    • registerPilTermsAndAttach
    • registerIPAndAttachLicenseTermsAndDistributeRoyaltyTokens
    • mintAndRegisterIpAndAttachPilTermsAndDistributeRoyaltyTokens
    • batchRegisterIpAssetsWithOptimizedWorkflows
    • batchMintAndRegisterIpAssetWithPilTerms
    • setMaxLicenseTokens (new method)
  • Improves code quality by enabling ESLint between unit and integration tests and resolving all lint issues across the codebase(#563).

Breaking Changes

  • In the IP Asset module, the response field ipIdAndTokenId in batchRegisterIpAssetsWithOptimizedWorkflows has been renamed to ipAssetsWithLicenseTerms for better semantic clarity(#572).

New Features Usage Examples

Setting License Token Limits:

// When registering IP with PIL terms
const result = await client.ipAsset.mintAndRegisterIpAssetWithPilTerms({
  spgNftContract: nftContractAddress,
  licenseTermsData: [
      ...
      maxLicenseTokens: 100, // Limit this license to 100 tokens
    },
  ],
});

// Setting limits for existing license terms
const setLimitResult = await client.license.setMaxLicenseTokens({
  ipId: ipIdAddress,
  licenseTermsId: licenseTermsId,
  maxLicenseTokens: 100,
});

Migration Guide

Migrating from v1.3.2 to v1.3.3

  • Update references to the response field in batchRegisterIpAssetsWithOptimizedWorkflows:

Old syntax:

const result = await client.ipAsset.batchRegisterIpAssetsWithOptimizedWorkflows({
  requests: requests,
});
// Accessing: result.ipIdAndTokenId

New syntax:

const result = await client.ipAsset.batchRegisterIpAssetsWithOptimizedWorkflows({
  requests: requests,
});
// Accessing: result.ipAssetsWithLicenseTerms

Migrating from v1.2.x