@sudobility/contracts 1.16.5 → 1.17.11
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 +16 -2
- package/artifacts/contracts/Mailer.sol/Mailer.d.ts +242 -16
- package/artifacts/contracts/Mailer.sol/Mailer.dbg.json +1 -1
- package/artifacts/contracts/Mailer.sol/Mailer.json +237 -11
- package/artifacts/contracts/MockUSDC.sol/MockUSDC.d.ts +2 -2
- package/artifacts/contracts/MockUSDC.sol/MockUSDC.dbg.json +1 -1
- package/artifacts/contracts/MockUSDC.sol/MockUSDC.json +2 -2
- package/artifacts/contracts/examples/MailerIntegrationExample.sol/MailerIntegrationExample.d.ts +299 -0
- package/artifacts/contracts/examples/MailerIntegrationExample.sol/MailerIntegrationExample.dbg.json +4 -0
- package/artifacts/contracts/examples/MailerIntegrationExample.sol/MailerIntegrationExample.json +249 -0
- package/artifacts/contracts/examples/MailerIntegrationExample.sol/artifacts.d.ts +21 -0
- package/artifacts/contracts/interfaces/IERC20.sol/IERC20.dbg.json +1 -1
- package/artifacts/contracts/interfaces/IMailer.sol/IMailer.d.ts +216 -0
- package/artifacts/contracts/interfaces/IMailer.sol/IMailer.dbg.json +4 -0
- package/artifacts/contracts/interfaces/IMailer.sol/IMailer.json +166 -0
- package/artifacts/contracts/interfaces/IMailer.sol/artifacts.d.ts +21 -0
- package/contracts/Mailer.sol +922 -0
- package/contracts/MockUSDC.sol +106 -0
- package/contracts/examples/MailerIntegrationExample.sol +189 -0
- package/contracts/interfaces/IERC20.sol +33 -0
- package/contracts/interfaces/IMailer.sol +86 -0
- package/dist/evm/src/evm/evm-mailer-client.d.ts +184 -8
- package/dist/evm/src/evm/evm-mailer-client.d.ts.map +1 -1
- package/dist/evm/src/evm/evm-mailer-client.js +3 -2
- package/dist/evm/src/evm/evm-mailer-client.js.map +1 -1
- package/dist/evm/src/evm/index.d.ts +2 -2
- package/dist/evm/src/evm/index.d.ts.map +1 -1
- package/dist/evm/src/evm/index.js +1 -1
- package/dist/evm/src/evm/index.js.map +1 -1
- package/dist/evm/typechain-types/@openzeppelin/contracts/index.d.ts +7 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/index.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/index.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.d.ts +66 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.d.ts +26 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.d.ts +2 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/index.d.ts +4 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/index.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/interfaces/index.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.d.ts +21 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.d.ts +2 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.d.ts +26 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/beacon/index.d.ts +2 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/beacon/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/beacon/index.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/beacon/index.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/index.d.ts +5 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/index.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/proxy/index.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/utils/Address.d.ts +21 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/utils/Address.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/utils/Address.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/utils/Address.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/utils/Errors.d.ts +21 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/utils/Errors.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/utils/Errors.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/utils/Errors.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/utils/index.d.ts +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/utils/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/utils/index.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts/utils/index.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts +69 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/access/index.d.ts +2 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/access/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/access/index.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/index.d.ts +7 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/index.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/index.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts +37 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.d.ts +74 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts +37 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.d.ts +2 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.js.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/index.d.ts +5 -0
- package/dist/evm/typechain-types/@openzeppelin/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/@openzeppelin/index.js +3 -0
- package/dist/evm/typechain-types/@openzeppelin/index.js.map +1 -0
- package/dist/evm/typechain-types/{Mailer.d.ts → contracts/Mailer.d.ts} +135 -21
- package/dist/evm/typechain-types/contracts/Mailer.d.ts.map +1 -0
- package/dist/evm/typechain-types/contracts/Mailer.js.map +1 -0
- package/dist/evm/typechain-types/{MockUSDC.d.ts → contracts/MockUSDC.d.ts} +1 -1
- package/dist/evm/typechain-types/contracts/MockUSDC.d.ts.map +1 -0
- package/dist/evm/typechain-types/contracts/MockUSDC.js.map +1 -0
- package/dist/evm/typechain-types/contracts/examples/MailerIntegrationExample.d.ts +170 -0
- package/dist/evm/typechain-types/contracts/examples/MailerIntegrationExample.d.ts.map +1 -0
- package/dist/evm/typechain-types/contracts/examples/MailerIntegrationExample.js +3 -0
- package/dist/evm/typechain-types/contracts/examples/MailerIntegrationExample.js.map +1 -0
- package/dist/evm/typechain-types/contracts/examples/index.d.ts +2 -0
- package/dist/evm/typechain-types/contracts/examples/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/contracts/examples/index.js +3 -0
- package/dist/evm/typechain-types/contracts/examples/index.js.map +1 -0
- package/dist/evm/typechain-types/contracts/index.d.ts +7 -0
- package/dist/evm/typechain-types/contracts/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/contracts/index.js +3 -0
- package/dist/evm/typechain-types/contracts/index.js.map +1 -0
- package/dist/{unified/typechain-types → evm/typechain-types/contracts}/interfaces/IERC20.d.ts +1 -1
- package/dist/evm/typechain-types/contracts/interfaces/IERC20.d.ts.map +1 -0
- package/dist/evm/typechain-types/contracts/interfaces/IERC20.js.map +1 -0
- package/dist/evm/typechain-types/contracts/interfaces/IMailer.d.ts +118 -0
- package/dist/evm/typechain-types/contracts/interfaces/IMailer.d.ts.map +1 -0
- package/dist/evm/typechain-types/contracts/interfaces/IMailer.js +3 -0
- package/dist/evm/typechain-types/contracts/interfaces/IMailer.js.map +1 -0
- package/dist/evm/typechain-types/contracts/interfaces/index.d.ts +3 -0
- package/dist/evm/typechain-types/contracts/interfaces/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/contracts/interfaces/index.js +3 -0
- package/dist/evm/typechain-types/contracts/interfaces/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/index.d.ts +4 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/index.js +43 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.d.ts +43 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.js +65 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.d.ts +18 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.js +33 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.d.ts +2 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.js +9 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/index.d.ts +3 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/index.js +43 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/interfaces/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.d.ts +51 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.js +78 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.d.ts +2 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.js +9 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.d.ts +18 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.js +33 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.d.ts +2 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.js +9 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/index.d.ts +3 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/index.js +42 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/proxy/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.d.ts +31 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.js +51 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.d.ts +51 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.js +77 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/utils/index.d.ts +3 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/utils/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/utils/index.js +11 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts/utils/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts +83 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js +117 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts +2 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.js +9 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.d.ts +4 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.js +43 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts +2 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.js +41 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts +26 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js +43 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.d.ts +106 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.js +148 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts +3 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js +11 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts +26 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js +43 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts +2 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.js +9 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/index.d.ts +3 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/index.js +42 -0
- package/dist/evm/typechain-types/factories/@openzeppelin/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/contracts/Mailer__factory.d.ts +1061 -0
- package/dist/evm/typechain-types/factories/contracts/Mailer__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/contracts/Mailer__factory.js +1364 -0
- package/dist/evm/typechain-types/factories/contracts/Mailer__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/{MockUSDC__factory.d.ts → contracts/MockUSDC__factory.d.ts} +3 -3
- package/dist/evm/typechain-types/factories/contracts/MockUSDC__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/{MockUSDC__factory.js → contracts/MockUSDC__factory.js} +1 -1
- package/dist/evm/typechain-types/factories/contracts/MockUSDC__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/contracts/examples/MailerIntegrationExample__factory.d.ts +209 -0
- package/dist/evm/typechain-types/factories/contracts/examples/MailerIntegrationExample__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/contracts/examples/MailerIntegrationExample__factory.js +278 -0
- package/dist/evm/typechain-types/factories/contracts/examples/MailerIntegrationExample__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/contracts/examples/index.d.ts +2 -0
- package/dist/evm/typechain-types/factories/contracts/examples/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/contracts/examples/index.js +9 -0
- package/dist/evm/typechain-types/factories/contracts/examples/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/contracts/index.d.ts +5 -0
- package/dist/evm/typechain-types/factories/contracts/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/contracts/index.js +46 -0
- package/dist/evm/typechain-types/factories/contracts/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/{interfaces → contracts/interfaces}/IERC20__factory.d.ts +1 -1
- package/dist/evm/typechain-types/factories/contracts/interfaces/IERC20__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/contracts/interfaces/IERC20__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/contracts/interfaces/IMailer__factory.d.ts +130 -0
- package/dist/evm/typechain-types/factories/contracts/interfaces/IMailer__factory.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/contracts/interfaces/IMailer__factory.js +175 -0
- package/dist/evm/typechain-types/factories/contracts/interfaces/IMailer__factory.js.map +1 -0
- package/dist/evm/typechain-types/factories/contracts/interfaces/index.d.ts +3 -0
- package/dist/evm/typechain-types/factories/contracts/interfaces/index.d.ts.map +1 -0
- package/dist/evm/typechain-types/factories/{interfaces → contracts/interfaces}/index.js +3 -1
- package/dist/evm/typechain-types/factories/contracts/interfaces/index.js.map +1 -0
- package/dist/evm/typechain-types/factories/index.d.ts +2 -3
- package/dist/evm/typechain-types/factories/index.d.ts.map +1 -1
- package/dist/evm/typechain-types/factories/index.js +3 -6
- package/dist/evm/typechain-types/factories/index.js.map +1 -1
- package/dist/evm/typechain-types/index.d.ts +34 -8
- package/dist/evm/typechain-types/index.d.ts.map +1 -1
- package/dist/evm/typechain-types/index.js +28 -4
- package/dist/evm/typechain-types/index.js.map +1 -1
- package/dist/unified/src/evm/evm-mailer-client.d.ts +184 -8
- package/dist/unified/src/evm/evm-mailer-client.d.ts.map +1 -1
- package/dist/unified/src/evm/evm-mailer-client.js +3 -2
- package/dist/unified/src/evm/evm-mailer-client.js.map +1 -1
- package/dist/unified/src/evm/index.d.ts +2 -2
- package/dist/unified/src/evm/index.d.ts.map +1 -1
- package/dist/unified/src/evm/index.js +1 -1
- package/dist/unified/src/evm/index.js.map +1 -1
- package/dist/unified/typechain-types/@openzeppelin/contracts/index.d.ts +7 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/index.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/index.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.d.ts +66 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.d.ts +26 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.d.ts +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/index.d.ts +4 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/index.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/interfaces/index.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.d.ts +21 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.d.ts +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.d.ts +26 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/beacon/index.d.ts +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/beacon/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/beacon/index.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/beacon/index.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/index.d.ts +5 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/index.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/proxy/index.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/utils/Address.d.ts +21 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/utils/Address.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/utils/Address.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/utils/Address.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/utils/Errors.d.ts +21 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/utils/Errors.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/utils/Errors.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/utils/Errors.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/utils/index.d.ts +3 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/utils/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/utils/index.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts/utils/index.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts +69 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/access/index.d.ts +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/access/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/access/index.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/index.d.ts +7 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/index.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/index.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts +3 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts +37 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.d.ts +74 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts +3 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts +37 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.d.ts +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.js.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/index.d.ts +5 -0
- package/dist/unified/typechain-types/@openzeppelin/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/@openzeppelin/index.js +2 -0
- package/dist/unified/typechain-types/@openzeppelin/index.js.map +1 -0
- package/dist/unified/typechain-types/{Mailer.d.ts → contracts/Mailer.d.ts} +135 -21
- package/dist/unified/typechain-types/contracts/Mailer.d.ts.map +1 -0
- package/dist/unified/typechain-types/contracts/Mailer.js.map +1 -0
- package/dist/unified/typechain-types/{MockUSDC.d.ts → contracts/MockUSDC.d.ts} +1 -1
- package/dist/unified/typechain-types/contracts/MockUSDC.d.ts.map +1 -0
- package/dist/unified/typechain-types/contracts/MockUSDC.js.map +1 -0
- package/dist/unified/typechain-types/contracts/examples/MailerIntegrationExample.d.ts +170 -0
- package/dist/unified/typechain-types/contracts/examples/MailerIntegrationExample.d.ts.map +1 -0
- package/dist/unified/typechain-types/contracts/examples/MailerIntegrationExample.js +2 -0
- package/dist/unified/typechain-types/contracts/examples/MailerIntegrationExample.js.map +1 -0
- package/dist/unified/typechain-types/contracts/examples/index.d.ts +2 -0
- package/dist/unified/typechain-types/contracts/examples/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/contracts/examples/index.js +2 -0
- package/dist/unified/typechain-types/contracts/examples/index.js.map +1 -0
- package/dist/unified/typechain-types/contracts/index.d.ts +7 -0
- package/dist/unified/typechain-types/contracts/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/contracts/index.js +2 -0
- package/dist/unified/typechain-types/contracts/index.js.map +1 -0
- package/dist/{evm/typechain-types → unified/typechain-types/contracts}/interfaces/IERC20.d.ts +1 -1
- package/dist/unified/typechain-types/contracts/interfaces/IERC20.d.ts.map +1 -0
- package/dist/unified/typechain-types/contracts/interfaces/IERC20.js.map +1 -0
- package/dist/unified/typechain-types/contracts/interfaces/IMailer.d.ts +118 -0
- package/dist/unified/typechain-types/contracts/interfaces/IMailer.d.ts.map +1 -0
- package/dist/unified/typechain-types/contracts/interfaces/IMailer.js +2 -0
- package/dist/unified/typechain-types/contracts/interfaces/IMailer.js.map +1 -0
- package/dist/unified/typechain-types/contracts/interfaces/index.d.ts +3 -0
- package/dist/unified/typechain-types/contracts/interfaces/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/contracts/interfaces/index.js +2 -0
- package/dist/unified/typechain-types/contracts/interfaces/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/index.d.ts +4 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/index.js +7 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.d.ts +43 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.js +61 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.d.ts +18 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.js +29 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.d.ts +2 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.js +5 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/index.d.ts +3 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/index.js +6 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/interfaces/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.d.ts +51 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.js +74 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.d.ts +2 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.js +5 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.d.ts +18 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.js +29 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.d.ts +2 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.js +5 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/index.d.ts +3 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/index.js +6 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/proxy/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.d.ts +31 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.js +47 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.d.ts +51 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.js +73 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/utils/index.d.ts +3 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/utils/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/utils/index.js +6 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts/utils/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts +83 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js +113 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts +2 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.js +5 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.d.ts +4 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.js +7 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts +2 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.js +5 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts +26 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js +39 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.d.ts +106 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.js +144 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts +3 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js +6 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts +26 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js +39 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts +2 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.js +5 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/index.d.ts +3 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/index.js +6 -0
- package/dist/unified/typechain-types/factories/@openzeppelin/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/contracts/Mailer__factory.d.ts +1061 -0
- package/dist/unified/typechain-types/factories/contracts/Mailer__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/contracts/Mailer__factory.js +1360 -0
- package/dist/unified/typechain-types/factories/contracts/Mailer__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/{MockUSDC__factory.d.ts → contracts/MockUSDC__factory.d.ts} +3 -3
- package/dist/unified/typechain-types/factories/contracts/MockUSDC__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/{MockUSDC__factory.js → contracts/MockUSDC__factory.js} +1 -1
- package/dist/unified/typechain-types/factories/contracts/MockUSDC__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/contracts/examples/MailerIntegrationExample__factory.d.ts +209 -0
- package/dist/unified/typechain-types/factories/contracts/examples/MailerIntegrationExample__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/contracts/examples/MailerIntegrationExample__factory.js +274 -0
- package/dist/unified/typechain-types/factories/contracts/examples/MailerIntegrationExample__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/contracts/examples/index.d.ts +2 -0
- package/dist/unified/typechain-types/factories/contracts/examples/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/contracts/examples/index.js +5 -0
- package/dist/unified/typechain-types/factories/contracts/examples/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/contracts/index.d.ts +5 -0
- package/dist/unified/typechain-types/factories/contracts/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/contracts/index.js +8 -0
- package/dist/unified/typechain-types/factories/contracts/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/{interfaces → contracts/interfaces}/IERC20__factory.d.ts +1 -1
- package/dist/unified/typechain-types/factories/contracts/interfaces/IERC20__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/contracts/interfaces/IERC20__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/contracts/interfaces/IMailer__factory.d.ts +130 -0
- package/dist/unified/typechain-types/factories/contracts/interfaces/IMailer__factory.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/contracts/interfaces/IMailer__factory.js +171 -0
- package/dist/unified/typechain-types/factories/contracts/interfaces/IMailer__factory.js.map +1 -0
- package/dist/unified/typechain-types/factories/contracts/interfaces/index.d.ts +3 -0
- package/dist/unified/typechain-types/factories/contracts/interfaces/index.d.ts.map +1 -0
- package/dist/unified/typechain-types/factories/{interfaces → contracts/interfaces}/index.js +1 -0
- package/dist/unified/typechain-types/factories/contracts/interfaces/index.js.map +1 -0
- package/dist/unified/typechain-types/factories/index.d.ts +2 -3
- package/dist/unified/typechain-types/factories/index.d.ts.map +1 -1
- package/dist/unified/typechain-types/factories/index.js +2 -3
- package/dist/unified/typechain-types/factories/index.js.map +1 -1
- package/dist/unified/typechain-types/index.d.ts +34 -8
- package/dist/unified/typechain-types/index.d.ts.map +1 -1
- package/dist/unified/typechain-types/index.js +15 -3
- package/dist/unified/typechain-types/index.js.map +1 -1
- package/package.json +9 -3
- package/programs/mailer/Cargo.toml +13 -0
- package/programs/mailer/src/cpi.rs +330 -0
- package/programs/mailer/src/lib.rs +252 -114
- package/programs/mailer/tests/integration_tests.rs +8399 -146
- package/programs/mailer/tests/integration_tests.rs.backup +5124 -0
- package/programs/mailer-integration-example/Cargo.toml +23 -0
- package/programs/mailer-integration-example/src/lib.rs +362 -0
- package/typechain-types/@openzeppelin/contracts/index.ts +9 -0
- package/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.ts +168 -0
- package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts +90 -0
- package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
- package/typechain-types/@openzeppelin/contracts/interfaces/index.ts +6 -0
- package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.ts +69 -0
- package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.ts +4 -0
- package/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.ts +90 -0
- package/typechain-types/@openzeppelin/contracts/proxy/beacon/index.ts +4 -0
- package/typechain-types/@openzeppelin/contracts/proxy/index.ts +7 -0
- package/typechain-types/@openzeppelin/contracts/utils/Address.ts +69 -0
- package/typechain-types/@openzeppelin/contracts/utils/Errors.ts +69 -0
- package/typechain-types/@openzeppelin/contracts/utils/index.ts +5 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.ts +186 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/access/index.ts +4 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/index.ts +9 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.ts +5 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.ts +105 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.ts +196 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts +5 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.ts +105 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.ts +4 -0
- package/typechain-types/@openzeppelin/index.ts +7 -0
- package/typechain-types/{Mailer.ts → contracts/Mailer.ts} +237 -19
- package/typechain-types/{MockUSDC.ts → contracts/MockUSDC.ts} +1 -1
- package/typechain-types/contracts/examples/MailerIntegrationExample.ts +352 -0
- package/typechain-types/contracts/examples/index.ts +4 -0
- package/typechain-types/contracts/index.ts +9 -0
- package/typechain-types/{interfaces → contracts/interfaces}/IERC20.ts +1 -1
- package/typechain-types/contracts/interfaces/IMailer.ts +225 -0
- package/typechain-types/{interfaces → contracts/interfaces}/index.ts +1 -0
- package/typechain-types/factories/@openzeppelin/contracts/index.ts +6 -0
- package/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.ts +67 -0
- package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts +38 -0
- package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts/interfaces/index.ts +5 -0
- package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.ts +105 -0
- package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts +35 -0
- package/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts/proxy/index.ts +5 -0
- package/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.ts +75 -0
- package/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.ts +101 -0
- package/typechain-types/factories/@openzeppelin/contracts/utils/index.ts +5 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.ts +122 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.ts +6 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.ts +48 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.ts +153 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts +5 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.ts +48 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/index.ts +5 -0
- package/typechain-types/factories/contracts/Mailer__factory.ts +1385 -0
- package/typechain-types/factories/{MockUSDC__factory.ts → contracts/MockUSDC__factory.ts} +3 -3
- package/typechain-types/factories/contracts/examples/MailerIntegrationExample__factory.ts +330 -0
- package/typechain-types/factories/contracts/examples/index.ts +4 -0
- package/typechain-types/factories/contracts/index.ts +7 -0
- package/typechain-types/factories/{interfaces → contracts/interfaces}/IERC20__factory.ts +4 -1
- package/typechain-types/factories/contracts/interfaces/IMailer__factory.ts +177 -0
- package/typechain-types/factories/{interfaces → contracts/interfaces}/index.ts +1 -0
- package/typechain-types/factories/index.ts +2 -3
- package/typechain-types/hardhat.d.ts +216 -0
- package/typechain-types/index.ts +34 -8
- package/dist/evm/typechain-types/Mailer.d.ts.map +0 -1
- package/dist/evm/typechain-types/Mailer.js.map +0 -1
- package/dist/evm/typechain-types/MockUSDC.d.ts.map +0 -1
- package/dist/evm/typechain-types/MockUSDC.js.map +0 -1
- package/dist/evm/typechain-types/factories/Mailer__factory.d.ts +0 -885
- package/dist/evm/typechain-types/factories/Mailer__factory.d.ts.map +0 -1
- package/dist/evm/typechain-types/factories/Mailer__factory.js +0 -1138
- package/dist/evm/typechain-types/factories/Mailer__factory.js.map +0 -1
- package/dist/evm/typechain-types/factories/MockUSDC__factory.d.ts.map +0 -1
- package/dist/evm/typechain-types/factories/MockUSDC__factory.js.map +0 -1
- package/dist/evm/typechain-types/factories/interfaces/IERC20__factory.d.ts.map +0 -1
- package/dist/evm/typechain-types/factories/interfaces/IERC20__factory.js.map +0 -1
- package/dist/evm/typechain-types/factories/interfaces/index.d.ts +0 -2
- package/dist/evm/typechain-types/factories/interfaces/index.d.ts.map +0 -1
- package/dist/evm/typechain-types/factories/interfaces/index.js.map +0 -1
- package/dist/evm/typechain-types/interfaces/IERC20.d.ts.map +0 -1
- package/dist/evm/typechain-types/interfaces/IERC20.js.map +0 -1
- package/dist/evm/typechain-types/interfaces/index.d.ts +0 -2
- package/dist/evm/typechain-types/interfaces/index.d.ts.map +0 -1
- package/dist/evm/typechain-types/interfaces/index.js.map +0 -1
- package/dist/unified/typechain-types/Mailer.d.ts.map +0 -1
- package/dist/unified/typechain-types/Mailer.js.map +0 -1
- package/dist/unified/typechain-types/MockUSDC.d.ts.map +0 -1
- package/dist/unified/typechain-types/MockUSDC.js.map +0 -1
- package/dist/unified/typechain-types/factories/Mailer__factory.d.ts +0 -885
- package/dist/unified/typechain-types/factories/Mailer__factory.d.ts.map +0 -1
- package/dist/unified/typechain-types/factories/Mailer__factory.js +0 -1134
- package/dist/unified/typechain-types/factories/Mailer__factory.js.map +0 -1
- package/dist/unified/typechain-types/factories/MockUSDC__factory.d.ts.map +0 -1
- package/dist/unified/typechain-types/factories/MockUSDC__factory.js.map +0 -1
- package/dist/unified/typechain-types/factories/interfaces/IERC20__factory.d.ts.map +0 -1
- package/dist/unified/typechain-types/factories/interfaces/IERC20__factory.js.map +0 -1
- package/dist/unified/typechain-types/factories/interfaces/index.d.ts +0 -2
- package/dist/unified/typechain-types/factories/interfaces/index.d.ts.map +0 -1
- package/dist/unified/typechain-types/factories/interfaces/index.js.map +0 -1
- package/dist/unified/typechain-types/interfaces/IERC20.d.ts.map +0 -1
- package/dist/unified/typechain-types/interfaces/IERC20.js.map +0 -1
- package/dist/unified/typechain-types/interfaces/index.d.ts +0 -2
- package/dist/unified/typechain-types/interfaces/index.d.ts.map +0 -1
- package/dist/unified/typechain-types/interfaces/index.js.map +0 -1
- package/typechain-types/factories/Mailer__factory.ts +0 -1170
- /package/dist/evm/typechain-types/{interfaces → @openzeppelin/contracts-upgradeable/access}/index.js +0 -0
- /package/dist/evm/typechain-types/{Mailer.js → contracts/Mailer.js} +0 -0
- /package/dist/evm/typechain-types/{MockUSDC.js → contracts/MockUSDC.js} +0 -0
- /package/dist/evm/typechain-types/{interfaces → contracts/interfaces}/IERC20.js +0 -0
- /package/dist/evm/typechain-types/factories/{interfaces → contracts/interfaces}/IERC20__factory.js +0 -0
- /package/dist/unified/typechain-types/{interfaces → @openzeppelin/contracts-upgradeable/access}/index.js +0 -0
- /package/dist/unified/typechain-types/{Mailer.js → contracts/Mailer.js} +0 -0
- /package/dist/unified/typechain-types/{MockUSDC.js → contracts/MockUSDC.js} +0 -0
- /package/dist/unified/typechain-types/{interfaces → contracts/interfaces}/IERC20.js +0 -0
- /package/dist/unified/typechain-types/factories/{interfaces → contracts/interfaces}/IERC20__factory.js +0 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT
|
|
2
|
+
pragma solidity ^0.8.24;
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* @title MockUSDC
|
|
6
|
+
* @notice Mock USDC token for testing Mailer contracts
|
|
7
|
+
* @dev ERC20-compatible token with 6 decimals to match real USDC
|
|
8
|
+
* @author Mailer Team
|
|
9
|
+
*/
|
|
10
|
+
contract MockUSDC {
|
|
11
|
+
/// @notice Balance tracking for each address
|
|
12
|
+
mapping(address => uint256) public balanceOf;
|
|
13
|
+
|
|
14
|
+
/// @notice Allowance tracking for delegated transfers
|
|
15
|
+
mapping(address => mapping(address => uint256)) public allowance;
|
|
16
|
+
|
|
17
|
+
/// @notice Token name following ERC20 standard
|
|
18
|
+
string public name = "Mock USDC";
|
|
19
|
+
|
|
20
|
+
/// @notice Token symbol following ERC20 standard
|
|
21
|
+
string public symbol = "USDC";
|
|
22
|
+
|
|
23
|
+
/// @notice Token decimals matching real USDC (6 decimals)
|
|
24
|
+
uint8 public decimals = 6;
|
|
25
|
+
|
|
26
|
+
/// @notice Total token supply (1M USDC with 6 decimals)
|
|
27
|
+
uint256 public totalSupply = 1000000 * 10**6;
|
|
28
|
+
|
|
29
|
+
/// @notice Contract owner who can mint new tokens
|
|
30
|
+
address public immutable owner;
|
|
31
|
+
|
|
32
|
+
/// @notice Thrown when non-owner attempts owner-only functions
|
|
33
|
+
error OnlyOwner();
|
|
34
|
+
|
|
35
|
+
/// @notice Thrown when transfer amount exceeds sender's balance
|
|
36
|
+
error InsufficientBalance();
|
|
37
|
+
|
|
38
|
+
/// @notice Thrown when transferFrom amount exceeds allowance
|
|
39
|
+
error InsufficientAllowance();
|
|
40
|
+
|
|
41
|
+
/// @notice Restricts function access to contract owner only
|
|
42
|
+
modifier onlyOwner() {
|
|
43
|
+
if (msg.sender != owner) {
|
|
44
|
+
revert OnlyOwner();
|
|
45
|
+
}
|
|
46
|
+
_;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/// @notice Initializes the mock USDC token
|
|
50
|
+
/// @dev Sets deployer as owner and gives them the initial supply
|
|
51
|
+
constructor() {
|
|
52
|
+
owner = msg.sender;
|
|
53
|
+
balanceOf[msg.sender] = totalSupply;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/// @notice Transfer tokens to another address
|
|
57
|
+
/// @param to Recipient address
|
|
58
|
+
/// @param amount Amount to transfer (in 6-decimal USDC units)
|
|
59
|
+
/// @return success True if transfer succeeded
|
|
60
|
+
function transfer(address to, uint256 amount) external returns (bool) {
|
|
61
|
+
if (balanceOf[msg.sender] < amount) {
|
|
62
|
+
revert InsufficientBalance();
|
|
63
|
+
}
|
|
64
|
+
balanceOf[msg.sender] -= amount;
|
|
65
|
+
balanceOf[to] += amount;
|
|
66
|
+
return true;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/// @notice Transfer tokens from one address to another using allowance
|
|
70
|
+
/// @param from Source address
|
|
71
|
+
/// @param to Recipient address
|
|
72
|
+
/// @param amount Amount to transfer (in 6-decimal USDC units)
|
|
73
|
+
/// @return success True if transfer succeeded
|
|
74
|
+
function transferFrom(address from, address to, uint256 amount) external returns (bool) {
|
|
75
|
+
if (balanceOf[from] < amount) {
|
|
76
|
+
revert InsufficientBalance();
|
|
77
|
+
}
|
|
78
|
+
if (allowance[from][msg.sender] < amount) {
|
|
79
|
+
revert InsufficientAllowance();
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
balanceOf[from] -= amount;
|
|
83
|
+
balanceOf[to] += amount;
|
|
84
|
+
allowance[from][msg.sender] -= amount;
|
|
85
|
+
|
|
86
|
+
return true;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/// @notice Approve another address to spend tokens on your behalf
|
|
90
|
+
/// @param spender Address authorized to spend tokens
|
|
91
|
+
/// @param amount Amount they can spend (in 6-decimal USDC units)
|
|
92
|
+
/// @return success True if approval succeeded
|
|
93
|
+
function approve(address spender, uint256 amount) external returns (bool) {
|
|
94
|
+
allowance[msg.sender][spender] = amount;
|
|
95
|
+
return true;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/// @notice Mint new tokens to an address (owner only)
|
|
99
|
+
/// @dev Used for testing to fund accounts with USDC
|
|
100
|
+
/// @param to Address to receive the newly minted tokens
|
|
101
|
+
/// @param amount Amount to mint (in 6-decimal USDC units)
|
|
102
|
+
function mint(address to, uint256 amount) external onlyOwner {
|
|
103
|
+
balanceOf[to] += amount;
|
|
104
|
+
totalSupply += amount;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT
|
|
2
|
+
pragma solidity ^0.8.24;
|
|
3
|
+
|
|
4
|
+
import "../interfaces/IMailer.sol";
|
|
5
|
+
import "../interfaces/IERC20.sol";
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @title MailerIntegrationExample
|
|
9
|
+
* @notice Example contract showing how to integrate Mailer messaging into your smart contract
|
|
10
|
+
* @dev Demonstrates various patterns for sending messages through the Mailer contract
|
|
11
|
+
* @author Mailer Team
|
|
12
|
+
*/
|
|
13
|
+
contract MailerIntegrationExample {
|
|
14
|
+
IMailer public immutable mailer;
|
|
15
|
+
IERC20 public immutable usdcToken;
|
|
16
|
+
address public owner;
|
|
17
|
+
|
|
18
|
+
event NotificationSent(address indexed recipient, string message);
|
|
19
|
+
event EmailNotificationSent(string indexed email, string message);
|
|
20
|
+
|
|
21
|
+
modifier onlyOwner() {
|
|
22
|
+
require(msg.sender == owner, "Not owner");
|
|
23
|
+
_;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
constructor(address _mailerAddress, address _usdcAddress) {
|
|
27
|
+
require(_mailerAddress != address(0), "Invalid mailer address");
|
|
28
|
+
require(_usdcAddress != address(0), "Invalid USDC address");
|
|
29
|
+
|
|
30
|
+
mailer = IMailer(_mailerAddress);
|
|
31
|
+
usdcToken = IERC20(_usdcAddress);
|
|
32
|
+
owner = msg.sender;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* @notice Example 1: Send a simple notification to a user
|
|
37
|
+
* @dev Uses standard fee (0.01 USDC) with no revenue sharing
|
|
38
|
+
* @param recipient User's wallet address
|
|
39
|
+
* @param message Notification message
|
|
40
|
+
*/
|
|
41
|
+
function sendNotification(address recipient, string calldata message) external {
|
|
42
|
+
// Ensure this contract has USDC approved for Mailer
|
|
43
|
+
// In production, you'd handle approval management
|
|
44
|
+
|
|
45
|
+
mailer.send(
|
|
46
|
+
recipient,
|
|
47
|
+
"Notification",
|
|
48
|
+
message,
|
|
49
|
+
msg.sender, // User pays the fee
|
|
50
|
+
false, // No revenue sharing (standard fee)
|
|
51
|
+
true // Resolve sender to name
|
|
52
|
+
);
|
|
53
|
+
|
|
54
|
+
emit NotificationSent(recipient, message);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* @notice Example 2: Send a notification with the contract paying the fee
|
|
59
|
+
* @dev Contract holds USDC and pays fees on behalf of users
|
|
60
|
+
* @param recipient User's wallet address
|
|
61
|
+
* @param message Notification message
|
|
62
|
+
*/
|
|
63
|
+
function sendNotificationContractPays(address recipient, string calldata message) external {
|
|
64
|
+
// Contract must first authorize itself with the Mailer
|
|
65
|
+
// Call: mailer.setPermission(address(this))
|
|
66
|
+
|
|
67
|
+
mailer.send(
|
|
68
|
+
recipient,
|
|
69
|
+
"System Notification",
|
|
70
|
+
message,
|
|
71
|
+
address(this), // Contract pays the fee
|
|
72
|
+
false, // No revenue sharing
|
|
73
|
+
false // Don't resolve (contract sender)
|
|
74
|
+
);
|
|
75
|
+
|
|
76
|
+
emit NotificationSent(recipient, message);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* @notice Example 3: Send a priority message with revenue sharing
|
|
81
|
+
* @dev Charges full fee (0.1 USDC), recipient can claim 90% back
|
|
82
|
+
* @param recipient User's wallet address
|
|
83
|
+
* @param subject Message subject
|
|
84
|
+
* @param body Message body
|
|
85
|
+
*/
|
|
86
|
+
function sendPriorityMessage(
|
|
87
|
+
address recipient,
|
|
88
|
+
string calldata subject,
|
|
89
|
+
string calldata body
|
|
90
|
+
) external {
|
|
91
|
+
mailer.send(
|
|
92
|
+
recipient,
|
|
93
|
+
subject,
|
|
94
|
+
body,
|
|
95
|
+
msg.sender, // User pays the fee
|
|
96
|
+
true, // Enable revenue sharing
|
|
97
|
+
true // Resolve sender to name
|
|
98
|
+
);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* @notice Example 4: Send to email address (when wallet is unknown)
|
|
103
|
+
* @dev Always uses standard fee, no revenue sharing possible
|
|
104
|
+
* @param email Recipient's email address
|
|
105
|
+
* @param subject Message subject
|
|
106
|
+
* @param body Message body
|
|
107
|
+
*/
|
|
108
|
+
function sendEmailNotification(
|
|
109
|
+
string calldata email,
|
|
110
|
+
string calldata subject,
|
|
111
|
+
string calldata body
|
|
112
|
+
) external {
|
|
113
|
+
mailer.sendToEmailAddress(
|
|
114
|
+
email,
|
|
115
|
+
subject,
|
|
116
|
+
body,
|
|
117
|
+
msg.sender // User pays the fee
|
|
118
|
+
);
|
|
119
|
+
|
|
120
|
+
emit EmailNotificationSent(email, body);
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* @notice Example 5: Send using pre-prepared content (gas efficient)
|
|
125
|
+
* @dev Store large content off-chain, reference by ID
|
|
126
|
+
* @param recipient User's wallet address
|
|
127
|
+
* @param mailId Reference to pre-prepared content
|
|
128
|
+
*/
|
|
129
|
+
function sendPreparedContent(
|
|
130
|
+
address recipient,
|
|
131
|
+
string calldata mailId
|
|
132
|
+
) external {
|
|
133
|
+
mailer.sendPrepared(
|
|
134
|
+
recipient,
|
|
135
|
+
mailId,
|
|
136
|
+
msg.sender, // User pays the fee
|
|
137
|
+
false, // No revenue sharing
|
|
138
|
+
true // Resolve sender to name
|
|
139
|
+
);
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* @notice Example 6: Send through webhook for custom delivery
|
|
144
|
+
* @dev Useful for integration with external notification systems
|
|
145
|
+
* @param recipient User's wallet address
|
|
146
|
+
* @param webhookId Webhook identifier
|
|
147
|
+
*/
|
|
148
|
+
function sendViaWebhook(
|
|
149
|
+
address recipient,
|
|
150
|
+
string calldata webhookId
|
|
151
|
+
) external {
|
|
152
|
+
mailer.sendThroughWebhook(
|
|
153
|
+
recipient,
|
|
154
|
+
webhookId,
|
|
155
|
+
msg.sender, // User pays the fee
|
|
156
|
+
false, // No revenue sharing
|
|
157
|
+
true // Resolve sender to name
|
|
158
|
+
);
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
/**
|
|
162
|
+
* @notice Authorize this contract to pay fees on behalf of users
|
|
163
|
+
* @dev Must be called before using contract-pays patterns
|
|
164
|
+
*/
|
|
165
|
+
function authorizeWithMailer() external onlyOwner {
|
|
166
|
+
// This would need to be called on the Mailer contract
|
|
167
|
+
// mailer.setPermission(address(this));
|
|
168
|
+
// Note: This requires the Mailer to expose setPermission publicly
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* @notice Approve USDC spending for the Mailer contract
|
|
173
|
+
* @dev Required before sending any messages
|
|
174
|
+
* @param amount USDC amount to approve (in 6 decimals)
|
|
175
|
+
*/
|
|
176
|
+
function approveUSDCForMailer(uint256 amount) external onlyOwner {
|
|
177
|
+
usdcToken.approve(address(mailer), amount);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
/**
|
|
181
|
+
* @notice Withdraw any USDC held by this contract
|
|
182
|
+
* @dev Emergency function to recover funds
|
|
183
|
+
*/
|
|
184
|
+
function withdrawUSDC() external onlyOwner {
|
|
185
|
+
uint256 balance = usdcToken.balanceOf(address(this));
|
|
186
|
+
require(balance > 0, "No USDC to withdraw");
|
|
187
|
+
usdcToken.transfer(owner, balance);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT
|
|
2
|
+
pragma solidity ^0.8.24;
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* @title IERC20
|
|
6
|
+
* @notice Interface for ERC20 token standard
|
|
7
|
+
* @dev Minimal interface for USDC token interactions
|
|
8
|
+
*/
|
|
9
|
+
interface IERC20 {
|
|
10
|
+
/// @notice Transfer tokens from one address to another using allowance
|
|
11
|
+
/// @param from Source address
|
|
12
|
+
/// @param to Destination address
|
|
13
|
+
/// @param amount Amount to transfer
|
|
14
|
+
/// @return success True if transfer succeeded
|
|
15
|
+
function transferFrom(address from, address to, uint256 amount) external returns (bool);
|
|
16
|
+
|
|
17
|
+
/// @notice Transfer tokens to another address
|
|
18
|
+
/// @param to Destination address
|
|
19
|
+
/// @param amount Amount to transfer
|
|
20
|
+
/// @return success True if transfer succeeded
|
|
21
|
+
function transfer(address to, uint256 amount) external returns (bool);
|
|
22
|
+
|
|
23
|
+
/// @notice Approve another address to spend tokens on your behalf
|
|
24
|
+
/// @param spender Address authorized to spend
|
|
25
|
+
/// @param amount Amount they can spend
|
|
26
|
+
/// @return success True if approval succeeded
|
|
27
|
+
function approve(address spender, uint256 amount) external returns (bool);
|
|
28
|
+
|
|
29
|
+
/// @notice Get the balance of an address
|
|
30
|
+
/// @param account Address to check balance for
|
|
31
|
+
/// @return balance Token balance
|
|
32
|
+
function balanceOf(address account) external view returns (uint256);
|
|
33
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT
|
|
2
|
+
pragma solidity ^0.8.24;
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* @title IMailer
|
|
6
|
+
* @notice Interface for the Mailer contract messaging functions
|
|
7
|
+
* @dev Use this interface to integrate Mailer messaging into your smart contracts
|
|
8
|
+
* @author Mailer Team
|
|
9
|
+
*/
|
|
10
|
+
interface IMailer {
|
|
11
|
+
/**
|
|
12
|
+
* @notice Send a message to a wallet address
|
|
13
|
+
* @param to Recipient wallet address
|
|
14
|
+
* @param subject Message subject line
|
|
15
|
+
* @param body Message body content
|
|
16
|
+
* @param payer Address that will pay the USDC fee
|
|
17
|
+
* @param revenueShareToReceiver If true, receiver gets 90% revenue share; if false, no revenue share
|
|
18
|
+
* @param resolveSenderToName If true, resolve sender address to name via off-chain service
|
|
19
|
+
*/
|
|
20
|
+
function send(
|
|
21
|
+
address to,
|
|
22
|
+
string calldata subject,
|
|
23
|
+
string calldata body,
|
|
24
|
+
address payer,
|
|
25
|
+
bool revenueShareToReceiver,
|
|
26
|
+
bool resolveSenderToName
|
|
27
|
+
) external;
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* @notice Send a message using pre-prepared content (referenced by mailId)
|
|
31
|
+
* @param to Recipient wallet address
|
|
32
|
+
* @param mailId Reference ID to pre-prepared message content
|
|
33
|
+
* @param payer Address that will pay the USDC fee
|
|
34
|
+
* @param revenueShareToReceiver If true, receiver gets 90% revenue share; if false, no revenue share
|
|
35
|
+
* @param resolveSenderToName If true, resolve sender address to name via off-chain service
|
|
36
|
+
*/
|
|
37
|
+
function sendPrepared(
|
|
38
|
+
address to,
|
|
39
|
+
string calldata mailId,
|
|
40
|
+
address payer,
|
|
41
|
+
bool revenueShareToReceiver,
|
|
42
|
+
bool resolveSenderToName
|
|
43
|
+
) external;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* @notice Send a message to an email address (no wallet address)
|
|
47
|
+
* @param toEmail Email address of the recipient
|
|
48
|
+
* @param subject Message subject line
|
|
49
|
+
* @param body Message body content
|
|
50
|
+
* @param payer Address that will pay the USDC fee
|
|
51
|
+
*/
|
|
52
|
+
function sendToEmailAddress(
|
|
53
|
+
string calldata toEmail,
|
|
54
|
+
string calldata subject,
|
|
55
|
+
string calldata body,
|
|
56
|
+
address payer
|
|
57
|
+
) external;
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* @notice Send a pre-prepared message to an email address
|
|
61
|
+
* @param toEmail Email address of the recipient
|
|
62
|
+
* @param mailId Reference ID to pre-prepared message content
|
|
63
|
+
* @param payer Address that will pay the USDC fee
|
|
64
|
+
*/
|
|
65
|
+
function sendPreparedToEmailAddress(
|
|
66
|
+
string calldata toEmail,
|
|
67
|
+
string calldata mailId,
|
|
68
|
+
address payer
|
|
69
|
+
) external;
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* @notice Send a message through a webhook
|
|
73
|
+
* @param to Recipient wallet address
|
|
74
|
+
* @param webhookId Webhook identifier for delivery
|
|
75
|
+
* @param payer Address that will pay the USDC fee
|
|
76
|
+
* @param revenueShareToReceiver If true, receiver gets 90% revenue share; if false, no revenue share
|
|
77
|
+
* @param resolveSenderToName If true, resolve sender address to name via off-chain service
|
|
78
|
+
*/
|
|
79
|
+
function sendThroughWebhook(
|
|
80
|
+
address to,
|
|
81
|
+
string calldata webhookId,
|
|
82
|
+
address payer,
|
|
83
|
+
bool revenueShareToReceiver,
|
|
84
|
+
bool resolveSenderToName
|
|
85
|
+
) external;
|
|
86
|
+
}
|