@story-protocol/core-sdk 1.2.0-rc.3 → 1.2.0-rc.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -747,7 +747,7 @@ function _inherits(subClass, superClass) {
747
747
  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
748
748
  /**
749
749
  *
750
- */var royaltyTokenDistributionWorkflowsAbi=[{type:"constructor",inputs:[{name:"accessController",internalType:"address",type:"address"},{name:"coreMetadataModule",internalType:"address",type:"address"},{name:"ipAssetRegistry",internalType:"address",type:"address"},{name:"licenseRegistry",internalType:"address",type:"address"},{name:"licensingModule",internalType:"address",type:"address"},{name:"pilTemplate",internalType:"address",type:"address"},{name:"royaltyModule",internalType:"address",type:"address"}],stateMutability:"nonpayable"},{type:"error",inputs:[{name:"authority",internalType:"address",type:"address"}],name:"AccessManagedInvalidAuthority"},{type:"error",inputs:[{name:"caller",internalType:"address",type:"address"},{name:"delay",internalType:"uint32",type:"uint32"}],name:"AccessManagedRequiredDelay"},{type:"error",inputs:[{name:"caller",internalType:"address",type:"address"}],name:"AccessManagedUnauthorized"},{type:"error",inputs:[{name:"target",internalType:"address",type:"address"}],name:"AddressEmptyCode"},{type:"error",inputs:[{name:"account",internalType:"address",type:"address"}],name:"AddressInsufficientBalance"},{type:"error",inputs:[{name:"implementation",internalType:"address",type:"address"}],name:"ERC1967InvalidImplementation"},{type:"error",inputs:[],name:"ERC1967NonPayable"},{type:"error",inputs:[],name:"FailedInnerCall"},{type:"error",inputs:[],name:"InvalidInitialization"},{type:"error",inputs:[],name:"NotInitializing"},{type:"error",inputs:[],name:"RoyaltyTokenDistributionWorkflows__RoyaltyVaultNotDeployed"},{type:"error",inputs:[],name:"RoyaltyTokenDistributionWorkflows__TotalPercentagesExceeds100Percent"},{type:"error",inputs:[],name:"RoyaltyTokenDistributionWorkflows__ZeroAddressParam"},{type:"error",inputs:[{name:"token",internalType:"address",type:"address"}],name:"SafeERC20FailedOperation"},{type:"error",inputs:[],name:"UUPSUnauthorizedCallContext"},{type:"error",inputs:[{name:"slot",internalType:"bytes32",type:"bytes32"}],name:"UUPSUnsupportedProxiableUUID"},{type:"error",inputs:[],name:"Workflow__CallerNotAuthorizedToMint"},{type:"event",anonymous:false,inputs:[{name:"authority",internalType:"address",type:"address",indexed:false}],name:"AuthorityUpdated"},{type:"event",anonymous:false,inputs:[{name:"version",internalType:"uint64",type:"uint64",indexed:false}],name:"Initialized"},{type:"event",anonymous:false,inputs:[{name:"implementation",internalType:"address",type:"address",indexed:true}],name:"Upgraded"},{type:"function",inputs:[],name:"ACCESS_CONTROLLER",outputs:[{name:"",internalType:"contract IAccessController",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"CORE_METADATA_MODULE",outputs:[{name:"",internalType:"contract ICoreMetadataModule",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"IP_ASSET_REGISTRY",outputs:[{name:"",internalType:"contract IIPAssetRegistry",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"LICENSE_REGISTRY",outputs:[{name:"",internalType:"contract ILicenseRegistry",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"LICENSING_MODULE",outputs:[{name:"",internalType:"contract ILicensingModule",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"PIL_TEMPLATE",outputs:[{name:"",internalType:"contract IPILicenseTemplate",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"ROYALTY_MODULE",outputs:[{name:"",internalType:"contract IRoyaltyModule",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"UPGRADE_INTERFACE_VERSION",outputs:[{name:"",internalType:"string",type:"string"}],stateMutability:"view"},{type:"function",inputs:[],name:"authority",outputs:[{name:"",internalType:"address",type:"address"}],stateMutability:"view"},{type:"function",inputs:[{name:"ipId",internalType:"address",type:"address"},{name:"ipRoyaltyVault",internalType:"address",type:"address"},{name:"royaltyShares",internalType:"struct WorkflowStructs.RoyaltyShare[]",type:"tuple[]",components:[{name:"author",internalType:"address",type:"address"},{name:"percentage",internalType:"uint32",type:"uint32"}]},{name:"sigApproveRoyaltyTokens",internalType:"struct WorkflowStructs.SignatureData",type:"tuple",components:[{name:"signer",internalType:"address",type:"address"},{name:"deadline",internalType:"uint256",type:"uint256"},{name:"signature",internalType:"bytes",type:"bytes"}]}],name:"distributeRoyaltyTokens",outputs:[],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"accessManager",internalType:"address",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable"},{type:"function",inputs:[],name:"isConsumingScheduledOp",outputs:[{name:"",internalType:"bytes4",type:"bytes4"}],stateMutability:"view"},{type:"function",inputs:[{name:"spgNftContract",internalType:"address",type:"address"},{name:"recipient",internalType:"address",type:"address"},{name:"ipMetadata",internalType:"struct WorkflowStructs.IPMetadata",type:"tuple",components:[{name:"ipMetadataURI",internalType:"string",type:"string"},{name:"ipMetadataHash",internalType:"bytes32",type:"bytes32"},{name:"nftMetadataURI",internalType:"string",type:"string"},{name:"nftMetadataHash",internalType:"bytes32",type:"bytes32"}]},{name:"terms",internalType:"struct PILTerms",type:"tuple",components:[{name:"transferable",internalType:"bool",type:"bool"},{name:"royaltyPolicy",internalType:"address",type:"address"},{name:"defaultMintingFee",internalType:"uint256",type:"uint256"},{name:"expiration",internalType:"uint256",type:"uint256"},{name:"commercialUse",internalType:"bool",type:"bool"},{name:"commercialAttribution",internalType:"bool",type:"bool"},{name:"commercializerChecker",internalType:"address",type:"address"},{name:"commercializerCheckerData",internalType:"bytes",type:"bytes"},{name:"commercialRevShare",internalType:"uint32",type:"uint32"},{name:"commercialRevCeiling",internalType:"uint256",type:"uint256"},{name:"derivativesAllowed",internalType:"bool",type:"bool"},{name:"derivativesAttribution",internalType:"bool",type:"bool"},{name:"derivativesApproval",internalType:"bool",type:"bool"},{name:"derivativesReciprocal",internalType:"bool",type:"bool"},{name:"derivativeRevCeiling",internalType:"uint256",type:"uint256"},{name:"currency",internalType:"address",type:"address"},{name:"uri",internalType:"string",type:"string"}]},{name:"royaltyShares",internalType:"struct WorkflowStructs.RoyaltyShare[]",type:"tuple[]",components:[{name:"author",internalType:"address",type:"address"},{name:"percentage",internalType:"uint32",type:"uint32"}]}],name:"mintAndRegisterIpAndAttachPILTermsAndDistributeRoyaltyTokens",outputs:[{name:"ipId",internalType:"address",type:"address"},{name:"tokenId",internalType:"uint256",type:"uint256"},{name:"licenseTermsId",internalType:"uint256",type:"uint256"}],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"spgNftContract",internalType:"address",type:"address"},{name:"recipient",internalType:"address",type:"address"},{name:"ipMetadata",internalType:"struct WorkflowStructs.IPMetadata",type:"tuple",components:[{name:"ipMetadataURI",internalType:"string",type:"string"},{name:"ipMetadataHash",internalType:"bytes32",type:"bytes32"},{name:"nftMetadataURI",internalType:"string",type:"string"},{name:"nftMetadataHash",internalType:"bytes32",type:"bytes32"}]},{name:"derivData",internalType:"struct WorkflowStructs.MakeDerivative",type:"tuple",components:[{name:"parentIpIds",internalType:"address[]",type:"address[]"},{name:"licenseTemplate",internalType:"address",type:"address"},{name:"licenseTermsIds",internalType:"uint256[]",type:"uint256[]"},{name:"royaltyContext",internalType:"bytes",type:"bytes"}]},{name:"royaltyShares",internalType:"struct WorkflowStructs.RoyaltyShare[]",type:"tuple[]",components:[{name:"author",internalType:"address",type:"address"},{name:"percentage",internalType:"uint32",type:"uint32"}]}],name:"mintAndRegisterIpAndMakeDerivativeAndDistributeRoyaltyTokens",outputs:[{name:"ipId",internalType:"address",type:"address"},{name:"tokenId",internalType:"uint256",type:"uint256"}],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"data",internalType:"bytes[]",type:"bytes[]"}],name:"multicall",outputs:[{name:"results",internalType:"bytes[]",type:"bytes[]"}],stateMutability:"nonpayable"},{type:"function",inputs:[],name:"proxiableUUID",outputs:[{name:"",internalType:"bytes32",type:"bytes32"}],stateMutability:"view"},{type:"function",inputs:[{name:"nftContract",internalType:"address",type:"address"},{name:"tokenId",internalType:"uint256",type:"uint256"},{name:"ipMetadata",internalType:"struct WorkflowStructs.IPMetadata",type:"tuple",components:[{name:"ipMetadataURI",internalType:"string",type:"string"},{name:"ipMetadataHash",internalType:"bytes32",type:"bytes32"},{name:"nftMetadataURI",internalType:"string",type:"string"},{name:"nftMetadataHash",internalType:"bytes32",type:"bytes32"}]},{name:"terms",internalType:"struct PILTerms",type:"tuple",components:[{name:"transferable",internalType:"bool",type:"bool"},{name:"royaltyPolicy",internalType:"address",type:"address"},{name:"defaultMintingFee",internalType:"uint256",type:"uint256"},{name:"expiration",internalType:"uint256",type:"uint256"},{name:"commercialUse",internalType:"bool",type:"bool"},{name:"commercialAttribution",internalType:"bool",type:"bool"},{name:"commercializerChecker",internalType:"address",type:"address"},{name:"commercializerCheckerData",internalType:"bytes",type:"bytes"},{name:"commercialRevShare",internalType:"uint32",type:"uint32"},{name:"commercialRevCeiling",internalType:"uint256",type:"uint256"},{name:"derivativesAllowed",internalType:"bool",type:"bool"},{name:"derivativesAttribution",internalType:"bool",type:"bool"},{name:"derivativesApproval",internalType:"bool",type:"bool"},{name:"derivativesReciprocal",internalType:"bool",type:"bool"},{name:"derivativeRevCeiling",internalType:"uint256",type:"uint256"},{name:"currency",internalType:"address",type:"address"},{name:"uri",internalType:"string",type:"string"}]},{name:"sigMetadata",internalType:"struct WorkflowStructs.SignatureData",type:"tuple",components:[{name:"signer",internalType:"address",type:"address"},{name:"deadline",internalType:"uint256",type:"uint256"},{name:"signature",internalType:"bytes",type:"bytes"}]},{name:"sigAttach",internalType:"struct WorkflowStructs.SignatureData",type:"tuple",components:[{name:"signer",internalType:"address",type:"address"},{name:"deadline",internalType:"uint256",type:"uint256"},{name:"signature",internalType:"bytes",type:"bytes"}]}],name:"registerIpAndAttachPILTermsAndDeployRoyaltyVault",outputs:[{name:"ipId",internalType:"address",type:"address"},{name:"licenseTermsId",internalType:"uint256",type:"uint256"},{name:"ipRoyaltyVault",internalType:"address",type:"address"}],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"nftContract",internalType:"address",type:"address"},{name:"tokenId",internalType:"uint256",type:"uint256"},{name:"ipMetadata",internalType:"struct WorkflowStructs.IPMetadata",type:"tuple",components:[{name:"ipMetadataURI",internalType:"string",type:"string"},{name:"ipMetadataHash",internalType:"bytes32",type:"bytes32"},{name:"nftMetadataURI",internalType:"string",type:"string"},{name:"nftMetadataHash",internalType:"bytes32",type:"bytes32"}]},{name:"derivData",internalType:"struct WorkflowStructs.MakeDerivative",type:"tuple",components:[{name:"parentIpIds",internalType:"address[]",type:"address[]"},{name:"licenseTemplate",internalType:"address",type:"address"},{name:"licenseTermsIds",internalType:"uint256[]",type:"uint256[]"},{name:"royaltyContext",internalType:"bytes",type:"bytes"}]},{name:"sigMetadata",internalType:"struct WorkflowStructs.SignatureData",type:"tuple",components:[{name:"signer",internalType:"address",type:"address"},{name:"deadline",internalType:"uint256",type:"uint256"},{name:"signature",internalType:"bytes",type:"bytes"}]},{name:"sigRegister",internalType:"struct WorkflowStructs.SignatureData",type:"tuple",components:[{name:"signer",internalType:"address",type:"address"},{name:"deadline",internalType:"uint256",type:"uint256"},{name:"signature",internalType:"bytes",type:"bytes"}]}],name:"registerIpAndMakeDerivativeAndDeployRoyaltyVault",outputs:[{name:"ipId",internalType:"address",type:"address"},{name:"ipRoyaltyVault",internalType:"address",type:"address"}],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"newAuthority",internalType:"address",type:"address"}],name:"setAuthority",outputs:[],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"newNftContractBeacon",internalType:"address",type:"address"}],name:"setNftContractBeacon",outputs:[],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"newImplementation",internalType:"address",type:"address"},{name:"data",internalType:"bytes",type:"bytes"}],name:"upgradeToAndCall",outputs:[],stateMutability:"payable"}];/**
750
+ */var royaltyTokenDistributionWorkflowsAbi=[{type:"constructor",inputs:[{name:"accessController",internalType:"address",type:"address"},{name:"coreMetadataModule",internalType:"address",type:"address"},{name:"ipAssetRegistry",internalType:"address",type:"address"},{name:"licenseRegistry",internalType:"address",type:"address"},{name:"licensingModule",internalType:"address",type:"address"},{name:"pilTemplate",internalType:"address",type:"address"},{name:"royaltyModule",internalType:"address",type:"address"}],stateMutability:"nonpayable"},{type:"error",inputs:[{name:"authority",internalType:"address",type:"address"}],name:"AccessManagedInvalidAuthority"},{type:"error",inputs:[{name:"caller",internalType:"address",type:"address"},{name:"delay",internalType:"uint32",type:"uint32"}],name:"AccessManagedRequiredDelay"},{type:"error",inputs:[{name:"caller",internalType:"address",type:"address"}],name:"AccessManagedUnauthorized"},{type:"error",inputs:[{name:"target",internalType:"address",type:"address"}],name:"AddressEmptyCode"},{type:"error",inputs:[{name:"account",internalType:"address",type:"address"}],name:"AddressInsufficientBalance"},{type:"error",inputs:[{name:"implementation",internalType:"address",type:"address"}],name:"ERC1967InvalidImplementation"},{type:"error",inputs:[],name:"ERC1967NonPayable"},{type:"error",inputs:[],name:"FailedInnerCall"},{type:"error",inputs:[],name:"InvalidInitialization"},{type:"error",inputs:[],name:"NotInitializing"},{type:"error",inputs:[],name:"RoyaltyTokenDistributionWorkflows__RoyaltyVaultNotDeployed"},{type:"error",inputs:[],name:"RoyaltyTokenDistributionWorkflows__TotalPercentagesExceeds100Percent"},{type:"error",inputs:[],name:"RoyaltyTokenDistributionWorkflows__ZeroAddressParam"},{type:"error",inputs:[{name:"token",internalType:"address",type:"address"}],name:"SafeERC20FailedOperation"},{type:"error",inputs:[],name:"UUPSUnauthorizedCallContext"},{type:"error",inputs:[{name:"slot",internalType:"bytes32",type:"bytes32"}],name:"UUPSUnsupportedProxiableUUID"},{type:"error",inputs:[],name:"Workflow__CallerNotAuthorizedToMint"},{type:"event",anonymous:false,inputs:[{name:"authority",internalType:"address",type:"address",indexed:false}],name:"AuthorityUpdated"},{type:"event",anonymous:false,inputs:[{name:"version",internalType:"uint64",type:"uint64",indexed:false}],name:"Initialized"},{type:"event",anonymous:false,inputs:[{name:"implementation",internalType:"address",type:"address",indexed:true}],name:"Upgraded"},{type:"function",inputs:[],name:"ACCESS_CONTROLLER",outputs:[{name:"",internalType:"contract IAccessController",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"CORE_METADATA_MODULE",outputs:[{name:"",internalType:"contract ICoreMetadataModule",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"IP_ASSET_REGISTRY",outputs:[{name:"",internalType:"contract IIPAssetRegistry",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"LICENSE_REGISTRY",outputs:[{name:"",internalType:"contract ILicenseRegistry",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"LICENSING_MODULE",outputs:[{name:"",internalType:"contract ILicensingModule",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"PIL_TEMPLATE",outputs:[{name:"",internalType:"contract IPILicenseTemplate",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"ROYALTY_MODULE",outputs:[{name:"",internalType:"contract IRoyaltyModule",type:"address"}],stateMutability:"view"},{type:"function",inputs:[],name:"UPGRADE_INTERFACE_VERSION",outputs:[{name:"",internalType:"string",type:"string"}],stateMutability:"view"},{type:"function",inputs:[],name:"authority",outputs:[{name:"",internalType:"address",type:"address"}],stateMutability:"view"},{type:"function",inputs:[{name:"ipId",internalType:"address",type:"address"},{name:"ipRoyaltyVault",internalType:"address",type:"address"},{name:"royaltyShares",internalType:"struct WorkflowStructs.RoyaltyShare[]",type:"tuple[]",components:[{name:"author",internalType:"address",type:"address"},{name:"percentage",internalType:"uint32",type:"uint32"}]},{name:"sigApproveRoyaltyTokens",internalType:"struct WorkflowStructs.SignatureData",type:"tuple",components:[{name:"signer",internalType:"address",type:"address"},{name:"deadline",internalType:"uint256",type:"uint256"},{name:"signature",internalType:"bytes",type:"bytes"}]}],name:"distributeRoyaltyTokens",outputs:[],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"accessManager",internalType:"address",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable"},{type:"function",inputs:[],name:"isConsumingScheduledOp",outputs:[{name:"",internalType:"bytes4",type:"bytes4"}],stateMutability:"view"},{type:"function",inputs:[{name:"spgNftContract",internalType:"address",type:"address"},{name:"recipient",internalType:"address",type:"address"},{name:"ipMetadata",internalType:"struct WorkflowStructs.IPMetadata",type:"tuple",components:[{name:"ipMetadataURI",internalType:"string",type:"string"},{name:"ipMetadataHash",internalType:"bytes32",type:"bytes32"},{name:"nftMetadataURI",internalType:"string",type:"string"},{name:"nftMetadataHash",internalType:"bytes32",type:"bytes32"}]},{name:"terms",internalType:"struct PILTerms[]",type:"tuple[]",components:[{name:"transferable",internalType:"bool",type:"bool"},{name:"royaltyPolicy",internalType:"address",type:"address"},{name:"defaultMintingFee",internalType:"uint256",type:"uint256"},{name:"expiration",internalType:"uint256",type:"uint256"},{name:"commercialUse",internalType:"bool",type:"bool"},{name:"commercialAttribution",internalType:"bool",type:"bool"},{name:"commercializerChecker",internalType:"address",type:"address"},{name:"commercializerCheckerData",internalType:"bytes",type:"bytes"},{name:"commercialRevShare",internalType:"uint32",type:"uint32"},{name:"commercialRevCeiling",internalType:"uint256",type:"uint256"},{name:"derivativesAllowed",internalType:"bool",type:"bool"},{name:"derivativesAttribution",internalType:"bool",type:"bool"},{name:"derivativesApproval",internalType:"bool",type:"bool"},{name:"derivativesReciprocal",internalType:"bool",type:"bool"},{name:"derivativeRevCeiling",internalType:"uint256",type:"uint256"},{name:"currency",internalType:"address",type:"address"},{name:"uri",internalType:"string",type:"string"}]},{name:"royaltyShares",internalType:"struct WorkflowStructs.RoyaltyShare[]",type:"tuple[]",components:[{name:"author",internalType:"address",type:"address"},{name:"percentage",internalType:"uint32",type:"uint32"}]}],name:"mintAndRegisterIpAndAttachPILTermsAndDistributeRoyaltyTokens",outputs:[{name:"ipId",internalType:"address",type:"address"},{name:"tokenId",internalType:"uint256",type:"uint256"},{name:"licenseTermsIds",internalType:"uint256[]",type:"uint256[]"}],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"spgNftContract",internalType:"address",type:"address"},{name:"recipient",internalType:"address",type:"address"},{name:"ipMetadata",internalType:"struct WorkflowStructs.IPMetadata",type:"tuple",components:[{name:"ipMetadataURI",internalType:"string",type:"string"},{name:"ipMetadataHash",internalType:"bytes32",type:"bytes32"},{name:"nftMetadataURI",internalType:"string",type:"string"},{name:"nftMetadataHash",internalType:"bytes32",type:"bytes32"}]},{name:"derivData",internalType:"struct WorkflowStructs.MakeDerivative",type:"tuple",components:[{name:"parentIpIds",internalType:"address[]",type:"address[]"},{name:"licenseTemplate",internalType:"address",type:"address"},{name:"licenseTermsIds",internalType:"uint256[]",type:"uint256[]"},{name:"royaltyContext",internalType:"bytes",type:"bytes"}]},{name:"royaltyShares",internalType:"struct WorkflowStructs.RoyaltyShare[]",type:"tuple[]",components:[{name:"author",internalType:"address",type:"address"},{name:"percentage",internalType:"uint32",type:"uint32"}]}],name:"mintAndRegisterIpAndMakeDerivativeAndDistributeRoyaltyTokens",outputs:[{name:"ipId",internalType:"address",type:"address"},{name:"tokenId",internalType:"uint256",type:"uint256"}],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"data",internalType:"bytes[]",type:"bytes[]"}],name:"multicall",outputs:[{name:"results",internalType:"bytes[]",type:"bytes[]"}],stateMutability:"nonpayable"},{type:"function",inputs:[],name:"proxiableUUID",outputs:[{name:"",internalType:"bytes32",type:"bytes32"}],stateMutability:"view"},{type:"function",inputs:[{name:"nftContract",internalType:"address",type:"address"},{name:"tokenId",internalType:"uint256",type:"uint256"},{name:"ipMetadata",internalType:"struct WorkflowStructs.IPMetadata",type:"tuple",components:[{name:"ipMetadataURI",internalType:"string",type:"string"},{name:"ipMetadataHash",internalType:"bytes32",type:"bytes32"},{name:"nftMetadataURI",internalType:"string",type:"string"},{name:"nftMetadataHash",internalType:"bytes32",type:"bytes32"}]},{name:"terms",internalType:"struct PILTerms[]",type:"tuple[]",components:[{name:"transferable",internalType:"bool",type:"bool"},{name:"royaltyPolicy",internalType:"address",type:"address"},{name:"defaultMintingFee",internalType:"uint256",type:"uint256"},{name:"expiration",internalType:"uint256",type:"uint256"},{name:"commercialUse",internalType:"bool",type:"bool"},{name:"commercialAttribution",internalType:"bool",type:"bool"},{name:"commercializerChecker",internalType:"address",type:"address"},{name:"commercializerCheckerData",internalType:"bytes",type:"bytes"},{name:"commercialRevShare",internalType:"uint32",type:"uint32"},{name:"commercialRevCeiling",internalType:"uint256",type:"uint256"},{name:"derivativesAllowed",internalType:"bool",type:"bool"},{name:"derivativesAttribution",internalType:"bool",type:"bool"},{name:"derivativesApproval",internalType:"bool",type:"bool"},{name:"derivativesReciprocal",internalType:"bool",type:"bool"},{name:"derivativeRevCeiling",internalType:"uint256",type:"uint256"},{name:"currency",internalType:"address",type:"address"},{name:"uri",internalType:"string",type:"string"}]},{name:"sigMetadata",internalType:"struct WorkflowStructs.SignatureData",type:"tuple",components:[{name:"signer",internalType:"address",type:"address"},{name:"deadline",internalType:"uint256",type:"uint256"},{name:"signature",internalType:"bytes",type:"bytes"}]},{name:"sigAttach",internalType:"struct WorkflowStructs.SignatureData",type:"tuple",components:[{name:"signer",internalType:"address",type:"address"},{name:"deadline",internalType:"uint256",type:"uint256"},{name:"signature",internalType:"bytes",type:"bytes"}]}],name:"registerIpAndAttachPILTermsAndDeployRoyaltyVault",outputs:[{name:"ipId",internalType:"address",type:"address"},{name:"licenseTermsIds",internalType:"uint256[]",type:"uint256[]"},{name:"ipRoyaltyVault",internalType:"address",type:"address"}],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"nftContract",internalType:"address",type:"address"},{name:"tokenId",internalType:"uint256",type:"uint256"},{name:"ipMetadata",internalType:"struct WorkflowStructs.IPMetadata",type:"tuple",components:[{name:"ipMetadataURI",internalType:"string",type:"string"},{name:"ipMetadataHash",internalType:"bytes32",type:"bytes32"},{name:"nftMetadataURI",internalType:"string",type:"string"},{name:"nftMetadataHash",internalType:"bytes32",type:"bytes32"}]},{name:"derivData",internalType:"struct WorkflowStructs.MakeDerivative",type:"tuple",components:[{name:"parentIpIds",internalType:"address[]",type:"address[]"},{name:"licenseTemplate",internalType:"address",type:"address"},{name:"licenseTermsIds",internalType:"uint256[]",type:"uint256[]"},{name:"royaltyContext",internalType:"bytes",type:"bytes"}]},{name:"sigMetadata",internalType:"struct WorkflowStructs.SignatureData",type:"tuple",components:[{name:"signer",internalType:"address",type:"address"},{name:"deadline",internalType:"uint256",type:"uint256"},{name:"signature",internalType:"bytes",type:"bytes"}]},{name:"sigRegister",internalType:"struct WorkflowStructs.SignatureData",type:"tuple",components:[{name:"signer",internalType:"address",type:"address"},{name:"deadline",internalType:"uint256",type:"uint256"},{name:"signature",internalType:"bytes",type:"bytes"}]}],name:"registerIpAndMakeDerivativeAndDeployRoyaltyVault",outputs:[{name:"ipId",internalType:"address",type:"address"},{name:"ipRoyaltyVault",internalType:"address",type:"address"}],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"newAuthority",internalType:"address",type:"address"}],name:"setAuthority",outputs:[],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"newNftContractBeacon",internalType:"address",type:"address"}],name:"setNftContractBeacon",outputs:[],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"newImplementation",internalType:"address",type:"address"},{name:"data",internalType:"bytes",type:"bytes"}],name:"upgradeToAndCall",outputs:[],stateMutability:"payable"}];/**
751
751
  *
752
752
  */var royaltyTokenDistributionWorkflowsAddress={1516:"0x39D9C7a23AA9e33E06aAAf51ebaDd11342b5be50"};// RoyaltyWorkflows
753
753
  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -3037,7 +3037,7 @@ function getAddress(address,chainId){return address[chainId||0]||"0x";}// Contra
3037
3037
  * @param spgNftContract address
3038
3038
  * @param recipient address
3039
3039
  * @param ipMetadata tuple
3040
- * @param terms tuple
3040
+ * @param terms tuple[]
3041
3041
  * @param royaltyShares tuple[]
3042
3042
  */ /**
3043
3043
  * RoyaltyTokenDistributionWorkflowsMintAndRegisterIpAndMakeDerivativeAndDistributeRoyaltyTokensRequest
@@ -3053,7 +3053,7 @@ function getAddress(address,chainId){return address[chainId||0]||"0x";}// Contra
3053
3053
  * @param nftContract address
3054
3054
  * @param tokenId uint256
3055
3055
  * @param ipMetadata tuple
3056
- * @param terms tuple
3056
+ * @param terms tuple[]
3057
3057
  * @param sigMetadata tuple
3058
3058
  * @param sigAttach tuple
3059
3059
  */ /**
@@ -5747,12 +5747,12 @@ var IPAssetClient = /*#__PURE__*/function () {
5747
5747
  return registerIpAndMakeDerivativeWithLicenseTokens;
5748
5748
  }()
5749
5749
  /**
5750
- * Register the given NFT and attach license terms and distribute royalty tokens. In order to successfully distribute royalty tokens, the license terms attached to the IP must be
5750
+ * Register the given NFT and attach license terms and distribute royalty tokens. In order to successfully distribute royalty tokens, the first license terms attached to the IP must be
5751
5751
  * a commercial license.
5752
5752
  * @param request - The request object that contains all data needed to register ip and attach license terms and distribute royalty tokens.
5753
5753
  * @param request.nftContract The address of the NFT collection.
5754
5754
  * @param request.tokenId The ID of the NFT.
5755
- * @param request.terms The array of license terms to be attached.
5755
+ * @param {Array} request.terms The array of license terms to be attached.
5756
5756
  * @param request.terms.transferable Indicates whether the license is transferable or not.
5757
5757
  * @param request.terms.royaltyPolicy The address of the royalty policy contract which required to StoryProtocol in advance.
5758
5758
  * @param request.terms.mintingFee The fee to be paid when minting a license.
@@ -5780,7 +5780,7 @@ var IPAssetClient = /*#__PURE__*/function () {
5780
5780
  * @param request.royaltyShares.percentage The percentage of the royalty share, 10 represents 10%.
5781
5781
  * @param request.deadline [Optional] The deadline for the signature in seconds, default is 1000s.
5782
5782
  * @param request.txOptions [Optional] This extends `WaitForTransactionReceiptParameters` from the Viem library, excluding the `hash` property, without encodedTxData option.
5783
- * @returns A Promise that resolves to a transaction hashes, IP ID, License terms ID, and IP royalty vault.
5783
+ * @returns A Promise that resolves to a transaction hashes, IP ID, IP royalty vault and an array containing the license terms ID.
5784
5784
  * @emits IPRegistered (ipId, chainId, tokenContract, tokenId, name, uri, registrationDate)
5785
5785
  * @emits IpRoyaltyVaultDeployed (ipId, ipRoyaltyVault)
5786
5786
  */
@@ -5789,42 +5789,56 @@ var IPAssetClient = /*#__PURE__*/function () {
5789
5789
  key: "registerIPAndAttachLicenseTermsAndDistributeRoyaltyTokens",
5790
5790
  value: (function () {
5791
5791
  var _registerIPAndAttachLicenseTermsAndDistributeRoyaltyTokens = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee16(request) {
5792
- var _request$ipMetadata33, _request$ipMetadata34, _request$ipMetadata35, _request$ipMetadata36, _request$txOptions27, _this$getRoyaltyShare, royaltyShares, totalAmount, licenseTerm, blockTimestamp, calculatedDeadline, ipIdAddress, isRegistered, _yield$getPermissionS9, sigMetadataSignature, sigMetadataState, _yield$getPermissionS10, sigAttachSignature, sigAttachState, registerIpAndAttachPilTermsAndDeployRoyaltyVaultTxHash, txReceipt, ipId, licenseTermsId, ipRoyaltyVault, distributeRoyaltyTokensTxHash;
5792
+ var _request$ipMetadata33, _request$ipMetadata34, _request$ipMetadata35, _request$ipMetadata36, _request$txOptions27, _this$getRoyaltyShare, royaltyShares, totalAmount, licenseTerms, i, term, licenseTerm, blockTimestamp, calculatedDeadline, ipIdAddress, isRegistered, _yield$getPermissionS9, sigMetadataSignature, sigMetadataState, _yield$getPermissionS10, sigAttachSignature, sigAttachState, registerIpAndAttachPilTermsAndDeployRoyaltyVaultTxHash, txReceipt, ipId, licenseTermsIds, ipRoyaltyVault, distributeRoyaltyTokensTxHash;
5793
5793
  return _regeneratorRuntime().wrap(function _callee16$(_context16) {
5794
5794
  while (1) switch (_context16.prev = _context16.next) {
5795
5795
  case 0:
5796
5796
  _context16.prev = 0;
5797
- if (request.terms.commercialUse) {
5798
- _context16.next = 3;
5797
+ _this$getRoyaltyShare = this.getRoyaltyShares(request.royaltyShares), royaltyShares = _this$getRoyaltyShare.royaltyShares, totalAmount = _this$getRoyaltyShare.totalAmount;
5798
+ licenseTerms = [];
5799
+ i = 0;
5800
+ case 4:
5801
+ if (!(i < request.terms.length)) {
5802
+ _context16.next = 15;
5799
5803
  break;
5800
5804
  }
5801
- throw new Error("Commercial use is required to deploy a royalty vault.");
5802
- case 3:
5803
- _this$getRoyaltyShare = this.getRoyaltyShares(request.royaltyShares), royaltyShares = _this$getRoyaltyShare.royaltyShares, totalAmount = _this$getRoyaltyShare.totalAmount;
5804
- _context16.next = 6;
5805
- return validateLicenseTerms(request.terms, this.rpcClient);
5806
- case 6:
5805
+ term = request.terms[i];
5806
+ if (!(i === 0 && !term.commercialUse)) {
5807
+ _context16.next = 8;
5808
+ break;
5809
+ }
5810
+ throw new Error("The first license term must be a commercial license.");
5811
+ case 8:
5812
+ _context16.next = 10;
5813
+ return validateLicenseTerms(term, this.rpcClient);
5814
+ case 10:
5807
5815
  licenseTerm = _context16.sent;
5808
- _context16.next = 9;
5816
+ licenseTerms.push(licenseTerm);
5817
+ case 12:
5818
+ i++;
5819
+ _context16.next = 4;
5820
+ break;
5821
+ case 15:
5822
+ _context16.next = 17;
5809
5823
  return this.rpcClient.getBlock();
5810
- case 9:
5824
+ case 17:
5811
5825
  blockTimestamp = _context16.sent.timestamp;
5812
5826
  calculatedDeadline = getDeadline(blockTimestamp, request.deadline);
5813
- _context16.next = 13;
5827
+ _context16.next = 21;
5814
5828
  return this.getIpIdAddress(getAddress$1(request.nftContract, "request.nftContract"), request.tokenId);
5815
- case 13:
5829
+ case 21:
5816
5830
  ipIdAddress = _context16.sent;
5817
- _context16.next = 16;
5831
+ _context16.next = 24;
5818
5832
  return this.isRegistered(ipIdAddress);
5819
- case 16:
5833
+ case 24:
5820
5834
  isRegistered = _context16.sent;
5821
5835
  if (!isRegistered) {
5822
- _context16.next = 19;
5836
+ _context16.next = 27;
5823
5837
  break;
5824
5838
  }
5825
5839
  throw new Error("The NFT with id ".concat(request.tokenId, " is already registered as IP."));
5826
- case 19:
5827
- _context16.next = 21;
5840
+ case 27:
5841
+ _context16.next = 29;
5828
5842
  return getPermissionSignature({
5829
5843
  ipId: ipIdAddress,
5830
5844
  deadline: calculatedDeadline,
@@ -5841,11 +5855,11 @@ var IPAssetClient = /*#__PURE__*/function () {
5841
5855
  func: "function setAll(address,string,bytes32,bytes32)"
5842
5856
  }]
5843
5857
  });
5844
- case 21:
5858
+ case 29:
5845
5859
  _yield$getPermissionS9 = _context16.sent;
5846
5860
  sigMetadataSignature = _yield$getPermissionS9.signature;
5847
5861
  sigMetadataState = _yield$getPermissionS9.nonce;
5848
- _context16.next = 26;
5862
+ _context16.next = 34;
5849
5863
  return getPermissionSignature({
5850
5864
  ipId: ipIdAddress,
5851
5865
  deadline: calculatedDeadline,
@@ -5860,11 +5874,11 @@ var IPAssetClient = /*#__PURE__*/function () {
5860
5874
  func: "function attachLicenseTerms(address,address,uint256)"
5861
5875
  }]
5862
5876
  });
5863
- case 26:
5877
+ case 34:
5864
5878
  _yield$getPermissionS10 = _context16.sent;
5865
5879
  sigAttachSignature = _yield$getPermissionS10.signature;
5866
5880
  sigAttachState = _yield$getPermissionS10.nonce;
5867
- _context16.next = 31;
5881
+ _context16.next = 39;
5868
5882
  return this.royaltyTokenDistributionWorkflowsClient.registerIpAndAttachPilTermsAndDeployRoyaltyVault({
5869
5883
  nftContract: request.nftContract,
5870
5884
  tokenId: BigInt(request.tokenId),
@@ -5874,7 +5888,7 @@ var IPAssetClient = /*#__PURE__*/function () {
5874
5888
  nftMetadataURI: ((_request$ipMetadata35 = request.ipMetadata) === null || _request$ipMetadata35 === void 0 ? void 0 : _request$ipMetadata35.nftMetadataURI) || "",
5875
5889
  nftMetadataHash: ((_request$ipMetadata36 = request.ipMetadata) === null || _request$ipMetadata36 === void 0 ? void 0 : _request$ipMetadata36.nftMetadataHash) || zeroHash
5876
5890
  },
5877
- terms: licenseTerm,
5891
+ terms: licenseTerms,
5878
5892
  sigMetadata: {
5879
5893
  signer: this.wallet.account.address,
5880
5894
  deadline: calculatedDeadline,
@@ -5886,21 +5900,21 @@ var IPAssetClient = /*#__PURE__*/function () {
5886
5900
  signature: sigAttachSignature
5887
5901
  }
5888
5902
  });
5889
- case 31:
5903
+ case 39:
5890
5904
  registerIpAndAttachPilTermsAndDeployRoyaltyVaultTxHash = _context16.sent;
5891
- _context16.next = 34;
5905
+ _context16.next = 42;
5892
5906
  return this.rpcClient.waitForTransactionReceipt(_objectSpread2(_objectSpread2({}, request.txOptions), {}, {
5893
5907
  hash: registerIpAndAttachPilTermsAndDeployRoyaltyVaultTxHash
5894
5908
  }));
5895
- case 34:
5909
+ case 42:
5896
5910
  txReceipt = _context16.sent;
5897
5911
  ipId = this.getIpIdAndTokenIdsFromEvent(txReceipt)[0].ipId;
5898
- _context16.next = 38;
5899
- return this.getLicenseTermsId([licenseTerm]);
5900
- case 38:
5901
- licenseTermsId = _context16.sent;
5912
+ _context16.next = 46;
5913
+ return this.getLicenseTermsId(licenseTerms);
5914
+ case 46:
5915
+ licenseTermsIds = _context16.sent;
5902
5916
  ipRoyaltyVault = this.royaltyModuleEventClient.parseTxIpRoyaltyVaultDeployedEvent(txReceipt)[0].ipRoyaltyVault;
5903
- _context16.next = 42;
5917
+ _context16.next = 50;
5904
5918
  return this.distributeRoyaltyTokens({
5905
5919
  ipId: ipId,
5906
5920
  deadline: calculatedDeadline,
@@ -5910,33 +5924,33 @@ var IPAssetClient = /*#__PURE__*/function () {
5910
5924
  totalAmount: totalAmount,
5911
5925
  txOptions: request.txOptions
5912
5926
  });
5913
- case 42:
5927
+ case 50:
5914
5928
  distributeRoyaltyTokensTxHash = _context16.sent;
5915
5929
  if (!((_request$txOptions27 = request.txOptions) !== null && _request$txOptions27 !== void 0 && _request$txOptions27.waitForTransaction)) {
5916
- _context16.next = 46;
5930
+ _context16.next = 54;
5917
5931
  break;
5918
5932
  }
5919
- _context16.next = 46;
5933
+ _context16.next = 54;
5920
5934
  return this.rpcClient.waitForTransactionReceipt(_objectSpread2(_objectSpread2({}, request.txOptions), {}, {
5921
5935
  hash: distributeRoyaltyTokensTxHash
5922
5936
  }));
5923
- case 46:
5937
+ case 54:
5924
5938
  return _context16.abrupt("return", {
5925
5939
  registerIpAndAttachPilTermsAndDeployRoyaltyVaultTxHash: registerIpAndAttachPilTermsAndDeployRoyaltyVaultTxHash,
5926
5940
  distributeRoyaltyTokensTxHash: distributeRoyaltyTokensTxHash,
5927
5941
  ipId: ipId,
5928
- licenseTermsId: licenseTermsId[0],
5942
+ licenseTermsIds: licenseTermsIds,
5929
5943
  ipRoyaltyVault: ipRoyaltyVault
5930
5944
  });
5931
- case 49:
5932
- _context16.prev = 49;
5945
+ case 57:
5946
+ _context16.prev = 57;
5933
5947
  _context16.t0 = _context16["catch"](0);
5934
5948
  handleError(_context16.t0, "Failed to register IP and attach license terms and distribute royalty tokens");
5935
- case 52:
5949
+ case 60:
5936
5950
  case "end":
5937
5951
  return _context16.stop();
5938
5952
  }
5939
- }, _callee16, this, [[0, 49]]);
5953
+ }, _callee16, this, [[0, 57]]);
5940
5954
  }));
5941
5955
  function registerIPAndAttachLicenseTermsAndDistributeRoyaltyTokens(_x16) {
5942
5956
  return _registerIPAndAttachLicenseTermsAndDistributeRoyaltyTokens.apply(this, arguments);
@@ -5969,9 +5983,9 @@ var IPAssetClient = /*#__PURE__*/function () {
5969
5983
  */
5970
5984
  )
5971
5985
  }, {
5972
- key: "registerDerivativeAndAttachLicenseTermsAndDistributeRoyaltyTokens",
5986
+ key: "registerDerivativeIpAndAttachLicenseTermsAndDistributeRoyaltyTokens",
5973
5987
  value: (function () {
5974
- var _registerDerivativeAndAttachLicenseTermsAndDistributeRoyaltyTokens = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee17(request) {
5988
+ var _registerDerivativeIpAndAttachLicenseTermsAndDistributeRoyaltyTokens = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee17(request) {
5975
5989
  var _request$ipMetadata37, _request$ipMetadata38, _request$ipMetadata39, _request$ipMetadata40, _request$txOptions28, _this$getRoyaltyShare2, royaltyShares, totalAmount, blockTimestamp, calculatedDeadline, ipIdAddress, isRegistered, _yield$getPermissionS11, sigMetadataSignature, sigMetadataState, _yield$getPermissionS12, sigAttachSignature, sigAttachState, txHash, txReceipt, _this$getIpIdAndToken, ipId, tokenId, ipRoyaltyVault, distributeRoyaltyTokensTxHash;
5976
5990
  return _regeneratorRuntime().wrap(function _callee17$(_context17) {
5977
5991
  while (1) switch (_context17.prev = _context17.next) {
@@ -6096,7 +6110,7 @@ var IPAssetClient = /*#__PURE__*/function () {
6096
6110
  }));
6097
6111
  case 38:
6098
6112
  return _context17.abrupt("return", {
6099
- registerDerivativeAndAttachLicenseTermsAndDistributeRoyaltyTokensTxHash: txHash,
6113
+ registerDerivativeIpAndAttachLicenseTermsAndDistributeRoyaltyTokensTxHash: txHash,
6100
6114
  distributeRoyaltyTokensTxHash: distributeRoyaltyTokensTxHash,
6101
6115
  ipId: ipId,
6102
6116
  tokenId: tokenId,
@@ -6112,17 +6126,17 @@ var IPAssetClient = /*#__PURE__*/function () {
6112
6126
  }
6113
6127
  }, _callee17, this, [[0, 41]]);
6114
6128
  }));
6115
- function registerDerivativeAndAttachLicenseTermsAndDistributeRoyaltyTokens(_x17) {
6116
- return _registerDerivativeAndAttachLicenseTermsAndDistributeRoyaltyTokens.apply(this, arguments);
6129
+ function registerDerivativeIpAndAttachLicenseTermsAndDistributeRoyaltyTokens(_x17) {
6130
+ return _registerDerivativeIpAndAttachLicenseTermsAndDistributeRoyaltyTokens.apply(this, arguments);
6117
6131
  }
6118
- return registerDerivativeAndAttachLicenseTermsAndDistributeRoyaltyTokens;
6132
+ return registerDerivativeIpAndAttachLicenseTermsAndDistributeRoyaltyTokens;
6119
6133
  }()
6120
6134
  /**
6121
- * Mint an NFT and register the IP, attach PIL terms, and distribute royalty tokens. In order to successfully distribute royalty tokens, the license terms attached to the IP must be
6135
+ * Mint an NFT and register the IP, attach PIL terms, and distribute royalty tokens. In order to successfully distribute royalty tokens, First the license terms attached to the IP must be
6122
6136
  * a commercial license.
6123
6137
  * @param request - The request object that contains all data needed to mint an NFT and register the IP, attach PIL terms, and distribute royalty tokens.
6124
6138
  * @param request.spgNftContract The address of the SPG NFT contract.
6125
- * @param request.terms The array of license terms to be attached.
6139
+ * @param {Array} request.terms The array of license terms to be attached.
6126
6140
  * @param request.terms.transferable Indicates whether the license is transferable or not.
6127
6141
  * @param request.terms.royaltyPolicy The address of the royalty policy contract which required to StoryProtocol in advance.
6128
6142
  * @param request.terms.mintingFee The fee to be paid when minting a license.
@@ -6150,31 +6164,46 @@ var IPAssetClient = /*#__PURE__*/function () {
6150
6164
  * @param request.royaltyShares.percentage The percentage of the royalty share, 10 represents 10%.
6151
6165
  * @param request.recipient - [Optional] The address to receive the minted NFT,default value is your wallet address.
6152
6166
  * @param request.txOptions [Optional] This extends `WaitForTransactionReceiptParameters` from the Viem library, excluding the `hash` property, without encodedTxData option.
6153
- * @returns A Promise that resolves to a transaction hash, IP ID, License terms ID, and IP royalty vault, Token ID.
6167
+ * @returns A Promise that resolves to a transaction hash, IP ID, IP royalty vault, Token ID, and an array containing the license terms ID.
6154
6168
  * @emits IPRegistered (ipId, chainId, tokenContract, tokenId, name, uri, registrationDate)
6169
+ * @emits IpRoyaltyVaultDeployed (ipId, ipRoyaltyVault)
6155
6170
  */
6156
6171
  )
6157
6172
  }, {
6158
6173
  key: "mintAndRegisterIpAndAttachPilTermsAndDistributeRoyaltyTokens",
6159
6174
  value: (function () {
6160
6175
  var _mintAndRegisterIpAndAttachPilTermsAndDistributeRoyaltyTokens = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee18(request) {
6161
- var _request$ipMetadata41, _request$ipMetadata42, _request$ipMetadata43, _request$ipMetadata44, _request$txOptions29, licenseTerm, _this$getRoyaltyShare3, royaltyShares, txHash, txReceipt, _this$getIpIdAndToken2, ipId, tokenId, licenseTermsId, ipRoyaltyVault;
6176
+ var _request$ipMetadata41, _request$ipMetadata42, _request$ipMetadata43, _request$ipMetadata44, _request$txOptions29, licenseTerms, i, term, licenseTerm, _this$getRoyaltyShare3, royaltyShares, txHash, txReceipt, _this$getIpIdAndToken2, ipId, tokenId, licenseTermsIds, ipRoyaltyVault;
6162
6177
  return _regeneratorRuntime().wrap(function _callee18$(_context18) {
6163
6178
  while (1) switch (_context18.prev = _context18.next) {
6164
6179
  case 0:
6165
6180
  _context18.prev = 0;
6166
- if (request.terms.commercialUse) {
6167
- _context18.next = 3;
6181
+ licenseTerms = [];
6182
+ i = 0;
6183
+ case 3:
6184
+ if (!(i < request.terms.length)) {
6185
+ _context18.next = 14;
6168
6186
  break;
6169
6187
  }
6170
- throw new Error("Commercial use is required to deploy a royalty vault.");
6171
- case 3:
6172
- _context18.next = 5;
6173
- return validateLicenseTerms(request.terms, this.rpcClient);
6174
- case 5:
6188
+ term = request.terms[i];
6189
+ if (!(i === 0 && !term.commercialUse)) {
6190
+ _context18.next = 7;
6191
+ break;
6192
+ }
6193
+ throw new Error("First license term must be a commercial license.");
6194
+ case 7:
6195
+ _context18.next = 9;
6196
+ return validateLicenseTerms(term, this.rpcClient);
6197
+ case 9:
6175
6198
  licenseTerm = _context18.sent;
6199
+ licenseTerms.push(licenseTerm);
6200
+ case 11:
6201
+ i++;
6202
+ _context18.next = 3;
6203
+ break;
6204
+ case 14:
6176
6205
  _this$getRoyaltyShare3 = this.getRoyaltyShares(request.royaltyShares), royaltyShares = _this$getRoyaltyShare3.royaltyShares;
6177
- _context18.next = 9;
6206
+ _context18.next = 17;
6178
6207
  return this.royaltyTokenDistributionWorkflowsClient.mintAndRegisterIpAndAttachPilTermsAndDistributeRoyaltyTokens({
6179
6208
  spgNftContract: getAddress$1(request.spgNftContract, "request.spgNftContract"),
6180
6209
  recipient: request.recipient && getAddress$1(request.recipient, "request.recipient") || this.wallet.account.address,
@@ -6184,47 +6213,47 @@ var IPAssetClient = /*#__PURE__*/function () {
6184
6213
  nftMetadataURI: ((_request$ipMetadata43 = request.ipMetadata) === null || _request$ipMetadata43 === void 0 ? void 0 : _request$ipMetadata43.nftMetadataURI) || "",
6185
6214
  nftMetadataHash: ((_request$ipMetadata44 = request.ipMetadata) === null || _request$ipMetadata44 === void 0 ? void 0 : _request$ipMetadata44.nftMetadataHash) || zeroHash
6186
6215
  },
6187
- terms: licenseTerm,
6216
+ terms: licenseTerms,
6188
6217
  royaltyShares: royaltyShares
6189
6218
  });
6190
- case 9:
6219
+ case 17:
6191
6220
  txHash = _context18.sent;
6192
6221
  if (!((_request$txOptions29 = request.txOptions) !== null && _request$txOptions29 !== void 0 && _request$txOptions29.waitForTransaction)) {
6193
- _context18.next = 20;
6222
+ _context18.next = 28;
6194
6223
  break;
6195
6224
  }
6196
- _context18.next = 13;
6225
+ _context18.next = 21;
6197
6226
  return this.rpcClient.waitForTransactionReceipt(_objectSpread2(_objectSpread2({}, request.txOptions), {}, {
6198
6227
  hash: txHash
6199
6228
  }));
6200
- case 13:
6229
+ case 21:
6201
6230
  txReceipt = _context18.sent;
6202
6231
  _this$getIpIdAndToken2 = this.getIpIdAndTokenIdsFromEvent(txReceipt)[0], ipId = _this$getIpIdAndToken2.ipId, tokenId = _this$getIpIdAndToken2.tokenId;
6203
- _context18.next = 17;
6204
- return this.getLicenseTermsId([licenseTerm]);
6205
- case 17:
6206
- licenseTermsId = _context18.sent;
6232
+ _context18.next = 25;
6233
+ return this.getLicenseTermsId(licenseTerms);
6234
+ case 25:
6235
+ licenseTermsIds = _context18.sent;
6207
6236
  ipRoyaltyVault = this.royaltyModuleEventClient.parseTxIpRoyaltyVaultDeployedEvent(txReceipt)[0].ipRoyaltyVault;
6208
6237
  return _context18.abrupt("return", {
6209
6238
  txHash: txHash,
6210
6239
  ipId: ipId,
6211
- licenseTermsId: licenseTermsId[0],
6240
+ licenseTermsIds: licenseTermsIds,
6212
6241
  ipRoyaltyVault: ipRoyaltyVault,
6213
6242
  tokenId: tokenId
6214
6243
  });
6215
- case 20:
6244
+ case 28:
6216
6245
  return _context18.abrupt("return", {
6217
6246
  txHash: txHash
6218
6247
  });
6219
- case 23:
6220
- _context18.prev = 23;
6248
+ case 31:
6249
+ _context18.prev = 31;
6221
6250
  _context18.t0 = _context18["catch"](0);
6222
6251
  handleError(_context18.t0, "Failed to mint and register IP and attach PIL terms and distribute royalty tokens");
6223
- case 26:
6252
+ case 34:
6224
6253
  case "end":
6225
6254
  return _context18.stop();
6226
6255
  }
6227
- }, _callee18, this, [[0, 23]]);
6256
+ }, _callee18, this, [[0, 31]]);
6228
6257
  }));
6229
6258
  function mintAndRegisterIpAndAttachPilTermsAndDistributeRoyaltyTokens(_x18) {
6230
6259
  return _mintAndRegisterIpAndAttachPilTermsAndDistributeRoyaltyTokens.apply(this, arguments);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@story-protocol/core-sdk",
3
- "version": "1.2.0-rc.3",
3
+ "version": "1.2.0-rc.4",
4
4
  "description": "Story Protocol Core SDK",
5
5
  "main": "dist/story-protocol-core-sdk.cjs.js",
6
6
  "module": "dist/story-protocol-core-sdk.esm.js",