### Install LSP1 Delegate Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp1delegate-contracts/README.md Install the @lukso/lsp1delegate-contracts package using npm. ```bash npm install @lukso/lsp1delegate-contracts ``` -------------------------------- ### Install lsp-smart-contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/README.md Install the umbrella package for LSP smart contracts using npm. ```bash npm install @lukso/lsp-smart-contracts ``` -------------------------------- ### Install LSP20 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp20-contracts/README.md Install the @lukso/lsp20-contracts npm package using npm. ```bash npm install @lukso/lsp20-contracts ``` -------------------------------- ### Install Project Dependencies Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/tests/README.md Run this command to install all necessary modules for the project before running tests. ```bash npm install ``` -------------------------------- ### Install LSP5 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp5-contracts/README.md Install the @lukso/lsp5-contracts npm package using npm. ```bash npm install @lukso/lsp5-contracts ``` -------------------------------- ### Install LSP25 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp25-contracts/README.md Install the @lukso/lsp25-contracts package using npm. ```bash npm install @lukso/lsp25-contracts ``` -------------------------------- ### Install LSP26 Follower System Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp26-contracts/README.md Use npm to install the @lukso/lsp26-contracts package. ```bash npm install @lukso/lsp26-contracts ``` -------------------------------- ### Install LSP2 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp2-contracts/README.md Install the @lukso/lsp2-contracts npm package using npm. ```bash npm install @lukso/lsp2-contracts ``` -------------------------------- ### Clone Repository and Install Dependencies Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/README.md Alternatively, clone the repository and install dependencies to use the smart contracts. This method is useful for development or contributing to the project. ```bash $ git clone https://github.com/lukso-network/lsp-smart-contracts.git $ cd ./lsp-smart-contracts $ npm install ``` -------------------------------- ### Install LSP16 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp16-contracts/README.md Install the @lukso/lsp16-contracts npm package using npm. ```bash npm install @lukso/lsp16-contracts ``` -------------------------------- ### Install LSP8 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp8-contracts/README.md Install the @lukso/lsp8-contracts npm package using npm. ```console npm install @lukso/lsp8-contracts ``` -------------------------------- ### Example Commit for Specific Package Pre-Release Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/RELEASE.md This is an example commit message format to indicate a pre-release version for a specific package like '@lukso/lsp7-contracts'. ```string chore: release lsp7-contracts 0.15.0-rc.0 ``` -------------------------------- ### Install LSP10 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp10-contracts/README.md Install the @lukso/lsp10-contracts npm package using npm. ```bash npm install @lukso/lsp10-contracts ``` -------------------------------- ### Install LSP Smart Contracts via npm Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/README.md Install all LSP smart contracts or specific LSP packages using npm. This is the recommended method for integrating the contracts into your project. ```bash npm install @lukso/lsp-smart-contracts ``` ```bash npm install @lukso/lsp7-contracts ``` -------------------------------- ### Example Commit for Pre-Release Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/RELEASE.md Use this commit message format to indicate a pre-release version, such as '0.15.0-rc.0', for the entire repository. ```string chore: release lsp-smart-contracts 0.15.0-rc.0 ``` -------------------------------- ### Install Universal Profile Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/universalprofile-contracts/README.md Install the npm package for the Universal Profile smart contracts. ```bash npm install @lukso/universalprofile-contracts ``` -------------------------------- ### Install LSP0 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp0-contracts/README.md Install the @lukso/lsp0-contracts npm package using npm. ```bash npm install @lukso/lsp0-contracts ``` -------------------------------- ### Install LSP12 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp12-contracts/README.md Install the @lukso/lsp12-contracts npm package using npm. ```bash npm install @lukso/lsp12-contracts ``` -------------------------------- ### Install LSP9 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp9-contracts/README.md Install the LSP9 contracts package using npm. ```bash npm install @lukso/lsp9-contracts ``` -------------------------------- ### Install LSP7 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp7-contracts/README.md Install the LSP7 Digital Asset standard npm package. ```console npm install @lukso/lsp7-contracts ``` -------------------------------- ### Install @lukso/lsp4-contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp4-contracts/README.md Install the npm package for the LSP4 Digital Asset Metadata standard. ```bash npm install @lukso/lsp4-contracts ``` -------------------------------- ### Install LSP6 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp6-contracts/README.md Install the LSP6 Key Manager contracts package using npm. ```bash npm install @lukso/lsp6-contracts ``` -------------------------------- ### Install LSP14 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp14-contracts/README.md Install the npm package for the LSP14 Ownable2Step standard. ```bash npm install @lukso/lsp14-contracts ``` -------------------------------- ### Install LSP1 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp1-contracts/README.md Install the npm package for the LSP1 Universal Receiver standard. ```bash npm install @lukso/lsp1-contracts ``` -------------------------------- ### Install Hardhat Packager v3 Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/config/hardhat-packager-v3/README.md Install the plugin as a development dependency using npm. ```bash npm install --save-dev @lukso/hardhat-packager-v3 ``` -------------------------------- ### Install LSP3 Profile Metadata Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp3-contracts/README.md Install the npm package for the LSP3 Profile Metadata standard. ```bash npm install @lukso/lsp3-contracts ``` -------------------------------- ### Install LSP23 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp23-contracts/README.md Install the LSP23 Linked Contracts Factory npm package using npm. ```bash npm install @lukso/lsp23-contracts ``` -------------------------------- ### Commit Message Example for Custom Release Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/RELEASE.md This is an example of the resulting commit message when using 'Release-As' in the commit body for a custom version release. ```txt chore: release lsp-smart-contracts 2.0.0 Release-As: 2.0.0 ``` -------------------------------- ### Build, Prepare, and Publish Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/config/hardhat-packager-v3/README.md Standard workflow commands for compiling contracts, preparing the package, and publishing to npm. ```bash # 1. Build your contracts npx hardhat compile # 3. Prepare the package npx hardhat prepare-package # 4. Publish to npm npm publish ``` -------------------------------- ### constructor Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/contracts/LSP6KeyManager/LSP6KeyManager.md Deploys a Key Manager and links it to a target contract address. ```APIDOC ## constructor ### Description Deploy a Key Manager and set the `target_` address in the contract storage, making this Key Manager linked to this `target_` contract. ### Parameters #### Path Parameters - **target_** (address) - Required - The address of the contract to control and forward calldata payloads to. ``` -------------------------------- ### constructor Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/contracts/LSP6KeyManager/contracts/LSP6KeyManager.md Deploys a LSP6KeyManager linked to a specified target contract address. ```APIDOC ## constructor ### Description Deploys a LSP6KeyManager and sets the `target_` address in the contract storage, linking it to the specified contract. ### Parameters #### Path Parameters - **target_** (address) - Required - The address of the contract to control and forward calldata payloads to. ``` -------------------------------- ### Broadcast LSP7MintableInit Deployment on LUKSO Testnet Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp7-contracts/README.md Broadcast the deployment of the LSP7MintableInit contract on the LUKSO Testnet using Foundry. ```bash FOUNDRY_PROFILE=lsp7 forge script packages/lsp7-contracts/scripts/DeployLSP7MintableInit.s.sol:DeployLSP7MintableInitScript --rpc-url https://rpc.testnet.lukso.network --broadcast ``` -------------------------------- ### constructor Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/contracts/LSP8IdentifiableDigitalAsset/contracts/presets/LSP8Mintable.md Deploys a LSP8Mintable token contract with specified name, symbol, owner, token type, and token ID format. ```APIDOC ## constructor ### Description Deploying a `LSP8Mintable` token contract with: token name = `name_`, token symbol = `symbol*`, and address `newOwner*` as the token contract owner. ### Parameters #### Path Parameters - **name_** (string) - The name of the token. - **symbol_** (string) - The symbol of the token. - **newOwner_** (address) - The owner of the token contract. - **lsp4TokenType_** (uint256) - The type of token this digital asset contract represents (`0` = Token, `1` = NFT, `2` = Collection). - **lsp8TokenIdFormat_** (uint256) - The format of tokenIds (= NFTs) that this contract will create. ``` -------------------------------- ### Run the Prepare Package Task Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/config/hardhat-packager-v3/README.md Execute the Hardhat task to compile, filter, and prepare your smart contract package for npm deployment. ```bash npx hardhat prepare-package ``` -------------------------------- ### Broadcast and Verify LSP7MintableInit Deployment on LUKSO Testnet Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp7-contracts/README.md Broadcast and verify the deployment of the LSP7MintableInit contract on the LUKSO Testnet using Foundry and Blockscout explorer. ```bash FOUNDRY_PROFILE=lsp7 forge script packages/lsp7-contracts/scripts/DeployLSP7MintableInit.s.sol:DeployLSP7MintableInitScript --rpc-url https://rpc.testnet.lukso.network --broadcast --verify --verifier blockscout --verifier-url https://explorer.execution.testnet.lukso.network/api/ ``` -------------------------------- ### Install LSP17 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp17-contracts/README.md Install the LSP17 Contracts npm package using npm. ```console npm install @lukso/lsp17-contracts ``` -------------------------------- ### constructor Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/contracts/LSP9Vault/LSP9Vault.md Initializes a new LSP9Vault contract, setting the owner and the supported standards data key. It can also receive native tokens on deployment. ```APIDOC ## constructor ### Description Deploys a LSP9Vault contract with the specified initial owner. This also sets the `SupportedStandards:LSP9Vault` Data Key and can fund the contract on deployment. Emits `UniversalReceiver`, `OwnershipTransferred`, `DataChanged`, and `UniversalReceiver` events. ### Method `constructor` ### Parameters #### Path Parameters - **newOwner** (address) - Required - The new owner of the contract. ### Response #### Success Response (200) N/A (Constructor) #### Response Example N/A (Constructor) ``` -------------------------------- ### Deploy and Verify Smart Contract Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/scripts/ci/README.md Shell command to deploy and verify a smart contract on a specified network. Requires a private key in a local .env file and network/contract configuration. ```shell ./scripts/ci/deploy-verify.sh -n luksoTesnet -c UniversalProfile ``` -------------------------------- ### constructor Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/contracts/LSP7DigitalAsset/contracts/presets/LSP7Mintable.md Initializes the LSP7Mintable token contract with essential details such as name, symbol, owner, token type, and divisibility. ```APIDOC ## constructor ### Description Deploys a `LSP7Mintable` token contract with a specified name, symbol, owner, token type, and divisibility. ### Parameters #### Parameters - **name_** (string) - Required - The name of the token. - **symbol_** (string) - Required - The symbol of the token. - **newOwner_** (address) - Required - The owner of the token contract. - **lsp4TokenType_** (uint256) - Required - The type of token this digital asset contract represents (`0` = Token, `1` = NFT, `2` = Collection). - **isNonDivisible_** (bool) - Required - Specify if the LSP7 token is a fungible or non-fungible token. ``` -------------------------------- ### Install LSP11 Contracts Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp11-contracts/README.md Install the LSP11 Social Recovery npm package using npm. ```console npm install @lukso/lsp11-contracts ``` -------------------------------- ### Run Linter and Prettier Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/CONTRIBUTING.md Execute these commands from the project root to check code for adherence to guidelines and to format files. ```bash npm run linter ``` ```bash npm run prettier ``` -------------------------------- ### Deploy and Initialize Contract with CREATE2 Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/contracts/LSP16UniversalFactory/LSP16UniversalFactory.md Deploys a contract using CREATE2 and immediately initializes it via an external call. The salt used for CREATE2 is derived from provided data. Reverts if the same contract is deployed twice. Supports sending Ether to the constructor and initialization function. ```solidity function deployCreate2AndInitialize( bytes creationBytecode, bytes32 providedSalt, bytes initializeCalldata, uint256 constructorMsgValue, uint256 initializeCalldataMsgValue ) external payable returns (address); ``` -------------------------------- ### Install LSP17 Contract Extension Package Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp17contractextension-contracts/README.md Install the npm package for the LSP17 Contract Extension standard. ```console npm install @lukso/lsp17contractextension-contracts ``` -------------------------------- ### Broadcast and Verify LSP8MintableInit Deployment Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp8-contracts/README.md Broadcast and verify the deployment of the LSP8MintableInit contract on LUKSO Testnet using Blockscout. ```bash FOUNDRY_PROFILE=lsp8 forge script packages/lsp8-contracts/scripts/DeployLSP8MintableInit.s.sol:LSP8MintableInitScript --rpc-url https://rpc.testnet.lukso.network --broadcast --verify --verifier blockscout --verifier-url https://explorer.execution.testnet.lukso.network/api/ ``` -------------------------------- ### Example PR Title for Specific Package Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/RELEASE.md This is an example of a common release pull request title for a specific package, such as '@lukso/lsp7-contracts'. ```string chore: release lsp7-contracts v0.15.0 ``` -------------------------------- ### Example PR Title for Umbrella Package Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/RELEASE.md This is an example of a common release pull request title for the main '@lukso/lsp-smart-contracts' package. ```string chore: release lsp-smart-contracts v0.15.0 ``` -------------------------------- ### Deploy Singletons using Nick Factory Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/DEPLOYMENT.md This generic pattern deploys singleton contracts by sending the concatenated salt and creation bytecode to the Nick Factory. Ensure you have the salt and creation bytecode available. ```bash # Generic pattern — send (salt ++ creationBytecode) to Nick Factory cast send 0x4e59b44847b379578588920cA78FbF26c0B4956C \ "$(cast concat-hex $SALT $CREATION_BYTECODE)" \ --rpc-url $RPC_URL \ --private-key $DEPLOYER_PK ``` -------------------------------- ### Conventional Commit Examples Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/CONTRIBUTING.md Examples of commit messages following the Conventional Commits standard. Ensure commit messages adhere to this format for release notes and versioning. ```bash $ git commit -m "feat: Add new feature x" ``` ```bash $ git commit -m "fix: Fix bug in feature x" ``` ```bash $ git commit -m "docs: Add documentation for feature x" ``` ```bash $ git commit -m "test: Add test suite for feature x" ``` -------------------------------- ### Get Contract Version Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/contracts/LSP17ContractExtension/LSP17Extension.md Retrieves the version of the LSP17 Contract Extension. This is a public view function. ```solidity function VERSION() external view returns (string); ``` -------------------------------- ### Standardized Bytecode Example Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp23-contracts/contracts/modules/deployment-UP-init-module.md This is the raw hexadecimal representation of the standardized bytecode. It is used for contract deployment and initialization. ```hex 73ffffffffffffffffffffffffffffffffffffffff841660208201528260408201526080606082015260006130526080830184613f13565b6000602082840312156143a757600080fd5b815167ffffffffffffffff8111156143be57600080fd5b8201601f810184136143cf57600080fd5b80516143dd613b9382613b2e565b8181528560208385010111156143f257600080fd5b612057826020830160208601613eef565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe184360301811261446757600080fd5b83018035915067ffffffffffffffff82111561448257600080fd5b602001915036819003821315611cb657600080fd5b8183823760009101908152919050565b6000815160208301517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000808216935060148310156144ef5780818460140360031b1b83161693505b505050919050565b60408152600061450a6040830185613f13565b82810360208401526120578185613f13565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b60408152600061457960408301858761451c565b82810360208401526130528185613f13565b73ffffffffffffffffffffffffffffffffffffffff8516815283602082015260606040820152600061305260608301848661451c565b6000602082840312156145d357600080fd5b8151611c7181613a65565b8215158152604060208201526000610cec6040830184613f13565b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008560601b16815283601482015281836034830137600091016034019081529392505050565b600181811c9082168061465357607f821691505b6020821081036118ba577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b601f821115610f1457600081815260208120601f850160051c810160208610156146b35750805b601f850160051c820191505b818110156146d2578281556001016146bf565b505050505050565b815167ffffffffffffffff8111156146f4576146f4613ab0565b61470881614702845461463f565b8461468c565b602080601f83116001811461475b57600084156147255750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556146d2565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156147a857888601518255948401946001909101908401614789565b50858210156147e457878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b83815260406020820152600061205760408301848661451c565b60008451614820818460208901613eef565b60609490941b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000001691909301908152601481019190915260340192915050565b805160208083015191908110156118ba577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60209190910360031b1b16919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820180821115610671576106716148a2565b6000815160208301517fffffffff00000000000000000000000000000000000000000000000000000000808216935060048310156144ef5760049290920360031b82901b161692915050565b81810381811115610671576106716148a256fea26469706673582212204c716f85d1145bcbe75de9c2eb2914430942e4f65ea5e7afda664b1551460c7f64736f6c63430008110033 ``` -------------------------------- ### constructor Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/contracts/@erc725/smart-contracts/contracts/ERC725.md Deploys a new ERC725 contract and sets the initial owner. The `initialOwner` cannot be the zero address. ```APIDOC ## constructor ### Description Deploys a new ERC725 contract and sets the provided `initialOwner` as the contract owner. ### Parameters #### Path Parameters - **initialOwner** (address) - Required - The owner of the contract. ### Requirements - `initialOwner` CANNOT be the zero address. ``` -------------------------------- ### Forwarding msg.value in _fallbackLSP17Extendable Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/contracts/LSP17ContractExtension/LSP17Extendable.md Example of how to override the _fallbackLSP17Extendable internal function to forward the msg.value to the extension contract. ```Solidity (bool success, bytes memory result) = extension.call{value: msg.value}( abi.encodePacked(callData, msg.sender, msg.value) ); ``` -------------------------------- ### Release Please Manifest Configuration for Pre-releases Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/RELEASE.md These fields should be specified in the `.release-please-manifest.json` file to enable pre-release publishing. ```json { "prerelease-type": "rc", "prerelease": true } ``` -------------------------------- ### Get Allowed Calls Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/libraries/LSP6KeyManager/LSP6Utils.md Retrieves the list of allowed calls for a specific caller on an ERC725Y target contract. ```Solidity function getAllowedCallsFor(contract IERC725Y target, address from) internal view returns (bytes); ``` -------------------------------- ### Deploy LSP9Vault with Initial Owner Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/contracts/LSP9Vault/LSP9Vault.md Deploy a new LSP9Vault contract, setting the initial owner and the SupportedStandards:LSP9Vault Data Key. The contract can also be funded on deployment. ```solidity constructor(address newOwner); ``` -------------------------------- ### Get LSP10 Array Length Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/libraries/LSP10ReceivedVaults/LSP10Utils.md Retrieves the raw bytes value stored under the `_LSP10_VAULTS_ARRAY_KEY` from an ERC725Y contract. ```solidity function getLSP10ArrayLengthBytes(contract IERC725Y erc725YContract) internal view returns (bytes); ``` -------------------------------- ### Get LSP5 Array Length in Bytes Source: https://github.com/lukso-network/lsp-smart-contracts/blob/main/packages/lsp-smart-contracts/docs/libraries/LSP5ReceivedAssets/LSP5Utils.md Retrieves the raw bytes value stored under the `_LSP5_RECEIVED_ASSETS_ARRAY_KEY` from an ERC725Y contract. ```solidity function getLSP5ArrayLengthBytes(contract IERC725Y erc725YContract) internal view returns (bytes); ```