├── .env.sample ├── .github ├── ISSUE_TEMPLATE │ ├── BUG_REPORT.yml │ ├── DOCUMENTATION_README_ISSUE.yml │ ├── FEATURE_ENHANCEMENT.yml │ ├── NEW_FEATURE_REQUEST.yml │ └── QUESTION_SUPPORT.yml └── workflows │ └── auto_add_project.yml ├── .gitignore ├── .gitmodules ├── README.md ├── app.js ├── contracts ├── PushComm │ ├── EPNSCommAdmin.sol │ ├── EPNSCommProxy.sol │ ├── PushCommStorageV2.sol │ └── PushCommV2.sol ├── PushCore │ ├── EPNSCoreAdmin.sol │ ├── EPNSCoreProxy.sol │ ├── PushCoreStorageV1_5.sol │ ├── PushCoreStorageV2.sol │ └── PushCoreV2.sol ├── governance │ ├── GovernorBravo.sol │ ├── GovernorBravoInterfaces.sol │ ├── PushBravoProxy.sol │ ├── Timelock.sol │ └── VerzionedInitializable.sol ├── interfaces │ ├── IADai.sol │ ├── IEPNSCommV1.sol │ ├── IERC1271.sol │ ├── ILendingPool.sol │ ├── IPUSH.sol │ ├── IPushCore.sol │ ├── ITokenBridge.sol │ └── IUniswapV2Router.sol ├── mocks │ ├── IUniswapV2RouterMock.sol │ ├── MockDai.sol │ └── MockERC1271.sol └── token │ ├── EPNS.args │ └── EPNS.sol ├── contributing.md ├── foundry.toml ├── hardhat.config.js ├── helpers └── utils.js ├── license-v1 ├── loaders ├── envVerifier.js ├── tokenAmountVerifier.js └── versionVerifier.js ├── package.json ├── scripts ├── 0_deploySample.js ├── 1_5_deployEPNSCoreV1_5.js ├── 1_deployEPNSCoreV1.js ├── 2_5_deployEPNSCommV1_5.js ├── 2_deployEPNSCommV1.js ├── 3_deployEPNSCoreV2.js ├── 4_deployEPNSCommV2.js ├── 5_deployEPNSCoreV3.js ├── 6_deployEPNSCommV3.js └── versioncontrol │ ├── 0_deploySample.config.js │ ├── 1_5_deployEPNSCoreV1_5.config.js │ ├── 1_deployEPNSCoreV1.config.js │ ├── 2_5_deployEPNSCommV1_5.config.js │ ├── 2_deployEPNSCommV1.config.js │ ├── 3_deployEPNSCoreV2.config.js │ ├── 4_deployEPNSCommV2.config.js │ ├── 5_deployEPNSCoreV3.config.js │ └── 6_deployEPNSCommV3.config.js ├── test ├── benchmarks │ └── EPNSCoreV1.Benchmark.test.js ├── common │ ├── expect.js │ ├── fixtures.js │ ├── fixturesV2.js │ └── fixtures_temp.js ├── time.js └── v2 │ ├── comm │ ├── SendNotification.test.js │ ├── SendNotificationFromSig.test.js │ └── SubscribeBySig.test.js │ └── core │ ├── ChannelCreationPush.test.js │ ├── ChannelStateCycle.test.js │ ├── IncentivizedChatRequest.test.js │ ├── Pausability.test.js │ ├── StakeAndClaim.test.js │ ├── TimeBoundChannel.test.js │ └── UpdateChannelMeta.test.js └── wallets └── !noremove /.env.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/.env.sample -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/BUG_REPORT.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/.github/ISSUE_TEMPLATE/BUG_REPORT.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/DOCUMENTATION_README_ISSUE.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/.github/ISSUE_TEMPLATE/DOCUMENTATION_README_ISSUE.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/FEATURE_ENHANCEMENT.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/.github/ISSUE_TEMPLATE/FEATURE_ENHANCEMENT.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/NEW_FEATURE_REQUEST.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/.github/ISSUE_TEMPLATE/NEW_FEATURE_REQUEST.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/QUESTION_SUPPORT.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/.github/ISSUE_TEMPLATE/QUESTION_SUPPORT.yml -------------------------------------------------------------------------------- /.github/workflows/auto_add_project.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/.github/workflows/auto_add_project.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/.gitmodules -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/README.md -------------------------------------------------------------------------------- /app.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/app.js -------------------------------------------------------------------------------- /contracts/PushComm/EPNSCommAdmin.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/PushComm/EPNSCommAdmin.sol -------------------------------------------------------------------------------- /contracts/PushComm/EPNSCommProxy.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/PushComm/EPNSCommProxy.sol -------------------------------------------------------------------------------- /contracts/PushComm/PushCommStorageV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/PushComm/PushCommStorageV2.sol -------------------------------------------------------------------------------- /contracts/PushComm/PushCommV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/PushComm/PushCommV2.sol -------------------------------------------------------------------------------- /contracts/PushCore/EPNSCoreAdmin.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/PushCore/EPNSCoreAdmin.sol -------------------------------------------------------------------------------- /contracts/PushCore/EPNSCoreProxy.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/PushCore/EPNSCoreProxy.sol -------------------------------------------------------------------------------- /contracts/PushCore/PushCoreStorageV1_5.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/PushCore/PushCoreStorageV1_5.sol -------------------------------------------------------------------------------- /contracts/PushCore/PushCoreStorageV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/PushCore/PushCoreStorageV2.sol -------------------------------------------------------------------------------- /contracts/PushCore/PushCoreV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/PushCore/PushCoreV2.sol -------------------------------------------------------------------------------- /contracts/governance/GovernorBravo.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/governance/GovernorBravo.sol -------------------------------------------------------------------------------- /contracts/governance/GovernorBravoInterfaces.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/governance/GovernorBravoInterfaces.sol -------------------------------------------------------------------------------- /contracts/governance/PushBravoProxy.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/governance/PushBravoProxy.sol -------------------------------------------------------------------------------- /contracts/governance/Timelock.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/governance/Timelock.sol -------------------------------------------------------------------------------- /contracts/governance/VerzionedInitializable.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/governance/VerzionedInitializable.sol -------------------------------------------------------------------------------- /contracts/interfaces/IADai.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/interfaces/IADai.sol -------------------------------------------------------------------------------- /contracts/interfaces/IEPNSCommV1.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/interfaces/IEPNSCommV1.sol -------------------------------------------------------------------------------- /contracts/interfaces/IERC1271.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/interfaces/IERC1271.sol -------------------------------------------------------------------------------- /contracts/interfaces/ILendingPool.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/interfaces/ILendingPool.sol -------------------------------------------------------------------------------- /contracts/interfaces/IPUSH.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/interfaces/IPUSH.sol -------------------------------------------------------------------------------- /contracts/interfaces/IPushCore.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/interfaces/IPushCore.sol -------------------------------------------------------------------------------- /contracts/interfaces/ITokenBridge.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/interfaces/ITokenBridge.sol -------------------------------------------------------------------------------- /contracts/interfaces/IUniswapV2Router.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/interfaces/IUniswapV2Router.sol -------------------------------------------------------------------------------- /contracts/mocks/IUniswapV2RouterMock.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/mocks/IUniswapV2RouterMock.sol -------------------------------------------------------------------------------- /contracts/mocks/MockDai.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/mocks/MockDai.sol -------------------------------------------------------------------------------- /contracts/mocks/MockERC1271.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/mocks/MockERC1271.sol -------------------------------------------------------------------------------- /contracts/token/EPNS.args: -------------------------------------------------------------------------------- 1 | ["0xFbA7Df351ADD4E79099f63E33b2679EDFDD5e2aB"] 2 | -------------------------------------------------------------------------------- /contracts/token/EPNS.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contracts/token/EPNS.sol -------------------------------------------------------------------------------- /contributing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/contributing.md -------------------------------------------------------------------------------- /foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/foundry.toml -------------------------------------------------------------------------------- /hardhat.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/hardhat.config.js -------------------------------------------------------------------------------- /helpers/utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/helpers/utils.js -------------------------------------------------------------------------------- /license-v1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/license-v1 -------------------------------------------------------------------------------- /loaders/envVerifier.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/loaders/envVerifier.js -------------------------------------------------------------------------------- /loaders/tokenAmountVerifier.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/loaders/tokenAmountVerifier.js -------------------------------------------------------------------------------- /loaders/versionVerifier.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/loaders/versionVerifier.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/package.json -------------------------------------------------------------------------------- /scripts/0_deploySample.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/0_deploySample.js -------------------------------------------------------------------------------- /scripts/1_5_deployEPNSCoreV1_5.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/1_5_deployEPNSCoreV1_5.js -------------------------------------------------------------------------------- /scripts/1_deployEPNSCoreV1.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/1_deployEPNSCoreV1.js -------------------------------------------------------------------------------- /scripts/2_5_deployEPNSCommV1_5.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/2_5_deployEPNSCommV1_5.js -------------------------------------------------------------------------------- /scripts/2_deployEPNSCommV1.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/2_deployEPNSCommV1.js -------------------------------------------------------------------------------- /scripts/3_deployEPNSCoreV2.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/3_deployEPNSCoreV2.js -------------------------------------------------------------------------------- /scripts/4_deployEPNSCommV2.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/4_deployEPNSCommV2.js -------------------------------------------------------------------------------- /scripts/5_deployEPNSCoreV3.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/5_deployEPNSCoreV3.js -------------------------------------------------------------------------------- /scripts/6_deployEPNSCommV3.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/6_deployEPNSCommV3.js -------------------------------------------------------------------------------- /scripts/versioncontrol/0_deploySample.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/versioncontrol/0_deploySample.config.js -------------------------------------------------------------------------------- /scripts/versioncontrol/1_5_deployEPNSCoreV1_5.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/versioncontrol/1_5_deployEPNSCoreV1_5.config.js -------------------------------------------------------------------------------- /scripts/versioncontrol/1_deployEPNSCoreV1.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/versioncontrol/1_deployEPNSCoreV1.config.js -------------------------------------------------------------------------------- /scripts/versioncontrol/2_5_deployEPNSCommV1_5.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/versioncontrol/2_5_deployEPNSCommV1_5.config.js -------------------------------------------------------------------------------- /scripts/versioncontrol/2_deployEPNSCommV1.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/versioncontrol/2_deployEPNSCommV1.config.js -------------------------------------------------------------------------------- /scripts/versioncontrol/3_deployEPNSCoreV2.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/versioncontrol/3_deployEPNSCoreV2.config.js -------------------------------------------------------------------------------- /scripts/versioncontrol/4_deployEPNSCommV2.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/versioncontrol/4_deployEPNSCommV2.config.js -------------------------------------------------------------------------------- /scripts/versioncontrol/5_deployEPNSCoreV3.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/versioncontrol/5_deployEPNSCoreV3.config.js -------------------------------------------------------------------------------- /scripts/versioncontrol/6_deployEPNSCommV3.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/scripts/versioncontrol/6_deployEPNSCommV3.config.js -------------------------------------------------------------------------------- /test/benchmarks/EPNSCoreV1.Benchmark.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/benchmarks/EPNSCoreV1.Benchmark.test.js -------------------------------------------------------------------------------- /test/common/expect.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/common/expect.js -------------------------------------------------------------------------------- /test/common/fixtures.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/common/fixtures.js -------------------------------------------------------------------------------- /test/common/fixturesV2.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/common/fixturesV2.js -------------------------------------------------------------------------------- /test/common/fixtures_temp.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/common/fixtures_temp.js -------------------------------------------------------------------------------- /test/time.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/time.js -------------------------------------------------------------------------------- /test/v2/comm/SendNotification.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/v2/comm/SendNotification.test.js -------------------------------------------------------------------------------- /test/v2/comm/SendNotificationFromSig.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/v2/comm/SendNotificationFromSig.test.js -------------------------------------------------------------------------------- /test/v2/comm/SubscribeBySig.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/v2/comm/SubscribeBySig.test.js -------------------------------------------------------------------------------- /test/v2/core/ChannelCreationPush.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/v2/core/ChannelCreationPush.test.js -------------------------------------------------------------------------------- /test/v2/core/ChannelStateCycle.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/v2/core/ChannelStateCycle.test.js -------------------------------------------------------------------------------- /test/v2/core/IncentivizedChatRequest.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/v2/core/IncentivizedChatRequest.test.js -------------------------------------------------------------------------------- /test/v2/core/Pausability.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/v2/core/Pausability.test.js -------------------------------------------------------------------------------- /test/v2/core/StakeAndClaim.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/v2/core/StakeAndClaim.test.js -------------------------------------------------------------------------------- /test/v2/core/TimeBoundChannel.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/v2/core/TimeBoundChannel.test.js -------------------------------------------------------------------------------- /test/v2/core/UpdateChannelMeta.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pushchain/push-smart-contracts/HEAD/test/v2/core/UpdateChannelMeta.test.js -------------------------------------------------------------------------------- /wallets/!noremove: -------------------------------------------------------------------------------- 1 | --------------------------------------------------------------------------------