Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 24 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,11 +1,28 @@
node_modules
.vscode
.env
.env.local
coverage
coverage.json
typechain
settings.json
.DS_Store
node_modules
venv
getPrivateKeys.js
#Hardhat files

# Hardhat files
artifacts-hardhat
cache-hardhat

# Forge files
artifacts-foundry
cache-foundry

# Slither cache
cache
artifacts

# autogenerated types
typechain
dist

# Coverage
coverage
coverage.json
lcov.info
report
4 changes: 4 additions & 0 deletions .mocharc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"require": "ts-node/register/files",
"timeout": 20000
}
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
18
v18
6 changes: 6 additions & 0 deletions .solcover.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
module.exports = {
skipFiles: [
'util/ABDKMath', // ABDKMath has issues compiling in solcover
'fakes', // Ignore fakes
]
};
8 changes: 8 additions & 0 deletions .solhint.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"extends": "solhint:recommended",
"rules": {
"func-visibility": ["warn",{"ignoreConstructors":true}],
"compiler-version": ["error","^0.8.17"],
"reason-string": ["warn",{"maxLength":32}]
}
}
5 changes: 3 additions & 2 deletions contracts/PartnerMinter.sol
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
pragma solidity ^0.8.0;
pragma solidity 0.8.18;
// SPDX-License-Identifier: AGPL-3.0-or-later

import "@openzeppelin/contracts/access/Ownable.sol";
import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";

interface IRelic {
function balanceOf(address) external returns (uint256);
Expand Down
9 changes: 5 additions & 4 deletions contracts/PathofTheTemplarShard.sol
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
pragma solidity ^0.8.13;
pragma solidity 0.8.18;
// SPDX-License-Identifier: AGPL-3.0-or-later

import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/utils/cryptography/ECDSA.sol";
import "@openzeppelin/contracts/utils/Counters.sol";
import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";
import { ECDSA } from "@openzeppelin/contracts/utils/cryptography/ECDSA.sol";
import { Counters } from "@openzeppelin/contracts/utils/Counters.sol";

/**
* @notice interfaced from Relic.sol to obtain
Expand Down
32 changes: 18 additions & 14 deletions contracts/Relic.sol
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
pragma solidity 0.8.18;
// SPDX-License-Identifier: AGPL-3.0-or-later

// &@@#
// @@@@@@ @@@@@@@
// (@@@@@@@, &@@@@@@@@@@@
Expand All @@ -17,17 +20,17 @@
// #@@@@@@@@@@@@@@@@@@@@@@@*
// (@@@@@@@@@@@(

pragma solidity ^0.8.4;

import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol";
import "@openzeppelin/contracts/security/Pausable.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721Burnable.sol";
import "@openzeppelin/contracts/utils/Counters.sol";
import "@openzeppelin/contracts/security/ReentrancyGuard.sol";
import "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol";
import { ERC721 } from "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import { IERC165 } from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
import { ERC721URIStorage } from "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import { ERC721Enumerable } from "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol";
import { Pausable } from "@openzeppelin/contracts/security/Pausable.sol";
import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";
import { ERC721Burnable } from "@openzeppelin/contracts/token/ERC721/extensions/ERC721Burnable.sol";
import { Counters } from "@openzeppelin/contracts/utils/Counters.sol";
import { Strings } from "@openzeppelin/contracts/utils/Strings.sol";
import { ReentrancyGuard } from "@openzeppelin/contracts/security/ReentrancyGuard.sol";
import { IERC1155Receiver } from "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol";

interface IShards {
function equipShard(
Expand Down Expand Up @@ -169,7 +172,7 @@ contract Relic is
function supportsInterface(bytes4 interfaceId)
public
view
override(IERC165, ERC721, ERC721Enumerable)
override(IERC165, ERC721, ERC721Enumerable, ERC721URIStorage)
returns (bool)
{
return super.supportsInterface(interfaceId);
Expand Down Expand Up @@ -264,9 +267,10 @@ contract Relic is
function _beforeTokenTransfer(
address from,
address to,
uint256 tokenId
uint256 firstTokenId,
uint256 batchSize
) internal override(ERC721, ERC721Enumerable) whenNotPaused {
super._beforeTokenTransfer(from, to, tokenId);
super._beforeTokenTransfer(from, to, firstTokenId, batchSize);
}

function _burn(uint256 tokenId)
Expand Down
18 changes: 9 additions & 9 deletions contracts/Shards.sol
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
pragma solidity 0.8.18;
// SPDX-License-Identifier: AGPL-3.0-or-later

// .@@@@@@@@@@@@@@@
// .@@ @@
// .@@ @@
Expand All @@ -18,15 +21,12 @@
// @@ @@
// @@@@@@@@@@@@@@@

pragma solidity ^0.8.4;

import "@openzeppelin/contracts/token/ERC1155/ERC1155.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/security/Pausable.sol";
import "@openzeppelin/contracts/token/ERC1155/extensions/ERC1155Burnable.sol";
import "@openzeppelin/contracts/token/ERC1155/extensions/ERC1155Supply.sol";
import "@openzeppelin/contracts/security/ReentrancyGuard.sol";

import { ERC1155 } from "@openzeppelin/contracts/token/ERC1155/ERC1155.sol";
import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";
import { Pausable } from "@openzeppelin/contracts/security/Pausable.sol";
import { ERC1155Burnable } from "@openzeppelin/contracts/token/ERC1155/extensions/ERC1155Burnable.sol";
import { ERC1155Supply } from "@openzeppelin/contracts/token/ERC1155/extensions/ERC1155Supply.sol";
import { ReentrancyGuard } from "@openzeppelin/contracts/security/ReentrancyGuard.sol";

interface IRelic {
function getRelicId(address _owner) external view returns (uint256);
Expand Down
10 changes: 6 additions & 4 deletions contracts/Splitter.sol
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
pragma solidity ^0.8.13;
pragma solidity 0.8.18;
// SPDX-License-Identifier: AGPL-3.0-or-later

import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/utils/math/SafeMath.sol";
import { SafeERC20 } from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";
import { SafeMath } from "@openzeppelin/contracts/utils/math/SafeMath.sol";

contract Splitter is Ownable {
using SafeERC20 for IERC20;
Expand Down
12 changes: 7 additions & 5 deletions contracts/TempleSacrifice.sol
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
pragma solidity 0.8.18;
// SPDX-License-Identifier: AGPL-3.0-or-later

// @@@
// @@@
// @@@
Expand All @@ -17,11 +20,10 @@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

pragma solidity ^0.8.0;

import "@openzeppelin/contracts/security/ReentrancyGuard.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import { ReentrancyGuard } from "@openzeppelin/contracts/security/ReentrancyGuard.sol";
import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";
import { SafeERC20 } from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";

interface IRelic {
function whitelistTemplar(address _toWhitelist) external;
Expand Down
5 changes: 3 additions & 2 deletions contracts/dummycoin.sol
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
pragma solidity ^0.8.13;
pragma solidity 0.8.18;
// SPDX-License-Identifier: AGPL-3.0-or-later

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import { ERC20 } from "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract dummycoin is ERC20 {
constructor() ERC20("Dummy", "DUMB") {}
Expand Down
37 changes: 37 additions & 0 deletions foundry.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
[profile.default]
optimizer = true
optimizer_runs = 10_000_000
verbosity = 3
src = 'contracts'
out = 'artifacts-foundry'
libs = ['node_modules', 'lib']
test = 'test/forge'
cache_path = 'cache-foundry'
gas_reports = ["*"]

[profile.ci]
fuzz = { runs = 5000 }
invariant = { runs = 1000 }

[profile.lite]
fuzz = { runs = 50 }
invariant = { runs = 10 }
# Speed up compilation and tests during development.
optimizer = false

[etherscan]
mainnet = { key = "${ETHERSCAN_MAINNET_KEY}" }

[fuzz]
runs = 1000

[fmt]
bracket_spacing = true
int_types = "long"
line_length = 120
multiline_func_header = "attributes_first"
number_underscore = "thousands"
quote_style = "double"
single_line_statement_blocks = "single"
tab_width = 4
wrap_comments = true
62 changes: 0 additions & 62 deletions hardhat.config.js

This file was deleted.

Loading