Skip to content

Commit b86f335

Browse files
authored
Dev (#2)
* designate ILayer as ERC7746 * use code index as according to erc7744 * apply erc7746 related changes * fix solidity version * add abi's * changeset * fix linter problems * fix lint command
1 parent 5451b8e commit b86f335

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+639
-3083
lines changed

.changeset/chatty-ducks-rescue.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@peeramid-labs/eds": minor
3+
---
4+
5+
added use of erc7744 and erc7746 for eds components

.prettierignore

+279
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,279 @@
1+
# Ignore CREATE2 files
2+
src/CodeIndex.sol
3+
src/ICodeIndex.sol
4+
5+
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
6+
7+
# dependencies
8+
/node_modules
9+
/.pnp
10+
.pnp.js
11+
12+
# testing
13+
/coverage
14+
15+
# next.js
16+
/.next/
17+
/out/
18+
19+
# production
20+
/build
21+
22+
# misc
23+
.DS_Store
24+
*.pem
25+
26+
# debug
27+
npm-debug.log*
28+
yarn-debug.log*
29+
yarn-error.log*
30+
31+
# local env files
32+
.env.local
33+
.env.development.local
34+
.env.test.local
35+
.env.production.local
36+
37+
# vercel
38+
.vercel
39+
40+
41+
42+
__pycache__
43+
.env
44+
.history
45+
.secrets
46+
.hypothesis/
47+
reports/
48+
cache/
49+
.venv
50+
51+
# Created by https://www.toptal.com/developers/gitignore/api/macos,solidity,soliditytruffle,visualstudiocode,yarn
52+
# Edit at https://www.toptal.com/developers/gitignore?templates=macos,solidity,soliditytruffle,visualstudiocode,yarn
53+
54+
### macOS ###
55+
# General
56+
.DS_Store
57+
.AppleDouble
58+
.LSOverride
59+
60+
# Icon must end with two \r
61+
Icon
62+
63+
64+
# Thumbnails
65+
._*
66+
67+
# Files that might appear in the root of a volume
68+
.DocumentRevisions-V100
69+
.fseventsd
70+
.Spotlight-V100
71+
.TemporaryItems
72+
.Trashes
73+
.VolumeIcon.icns
74+
.com.apple.timemachine.donotpresent
75+
76+
# Directories potentially created on remote AFP share
77+
.AppleDB
78+
.AppleDesktop
79+
Network Trash Folder
80+
Temporary Items
81+
.apdisk
82+
83+
### Solidity ###
84+
# Logs
85+
logs
86+
*.log
87+
npm-debug.log*
88+
yarn-debug.log*
89+
yarn-error.log*
90+
lerna-debug.log*
91+
.pnpm-debug.log*
92+
93+
# Diagnostic reports (https://nodejs.org/api/report.html)
94+
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
95+
96+
# Runtime data
97+
pids
98+
*.pid
99+
*.seed
100+
*.pid.lock
101+
102+
# Directory for instrumented libs generated by jscoverage/JSCover
103+
lib-cov
104+
105+
# Coverage directory used by tools like istanbul
106+
coverage
107+
*.lcov
108+
109+
# nyc test coverage
110+
.nyc_output
111+
112+
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
113+
.grunt
114+
115+
# Bower dependency directory (https://bower.io/)
116+
bower_components
117+
118+
# node-waf configuration
119+
.lock-wscript
120+
121+
# Compiled binary addons (https://nodejs.org/api/addons.html)
122+
build/Release
123+
124+
# Dependency directories
125+
node_modules/
126+
jspm_packages/
127+
128+
# Snowpack dependency directory (https://snowpack.dev/)
129+
web_modules/
130+
131+
# TypeScript cache
132+
*.tsbuildinfo
133+
134+
# Optional npm cache directory
135+
.npm
136+
137+
# Optional eslint cache
138+
.eslintcache
139+
140+
# Optional stylelint cache
141+
.stylelintcache
142+
143+
# Microbundle cache
144+
.rpt2_cache/
145+
.rts2_cache_cjs/
146+
.rts2_cache_es/
147+
.rts2_cache_umd/
148+
149+
# Optional REPL history
150+
.node_repl_history
151+
152+
# Output of 'npm pack'
153+
*.tgz
154+
155+
# Yarn Integrity file
156+
.yarn-integrity
157+
158+
# dotenv environment variable files
159+
.env
160+
.env.development.local
161+
.env.test.local
162+
.env.production.local
163+
.env.local
164+
165+
# parcel-bundler cache (https://parceljs.org/)
166+
.cache
167+
.parcel-cache
168+
169+
# Next.js build output
170+
.next
171+
out
172+
173+
# Nuxt.js build / generate output
174+
.nuxt
175+
dist
176+
177+
# Gatsby files
178+
.cache/
179+
# Comment in the public line in if your project uses Gatsby and not Next.js
180+
# https://nextjs.org/blog/next-9-1#public-directory-support
181+
# public
182+
183+
# vuepress build output
184+
.vuepress/dist
185+
186+
# vuepress v2.x temp and cache directory
187+
.temp
188+
189+
# Docusaurus cache and generated files
190+
.docusaurus
191+
192+
# Serverless directories
193+
.serverless/
194+
195+
# FuseBox cache
196+
.fusebox/
197+
198+
# DynamoDB Local files
199+
.dynamodb/
200+
201+
# TernJS port file
202+
.tern-port
203+
204+
# Stores VSCode versions used for testing VSCode extensions
205+
.vscode-test
206+
207+
# yarn v2
208+
.yarn/cache
209+
.yarn/unplugged
210+
.yarn/build-state.yml
211+
.yarn/install-state.gz
212+
.pnp.*
213+
214+
### SolidityTruffle ###
215+
# depedencies
216+
node_modules
217+
218+
# testing
219+
220+
# production
221+
build_webpack
222+
223+
# misc
224+
npm-debug.log
225+
.truffle-solidity-loader
226+
.vagrant/**
227+
blockchain/geth/**
228+
blockchain/keystore/**
229+
blockchain/history
230+
231+
#truffle
232+
package-lock.json
233+
234+
### VisualStudioCode ###
235+
.vscode/*
236+
!.vscode/settings.json
237+
!.vscode/tasks.json
238+
!.vscode/launch.json
239+
!.vscode/extensions.json
240+
!.vscode/*.code-snippets
241+
242+
# Local History for Visual Studio Code
243+
.history/
244+
245+
# Built Visual Studio Code Extensions
246+
*.vsix
247+
248+
### VisualStudioCode Patch ###
249+
# Ignore all local history of files
250+
.history
251+
.ionide
252+
253+
# Support for Project snippet scope
254+
255+
### yarn ###
256+
# https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored
257+
258+
.yarn/*
259+
!.yarn/releases
260+
!.yarn/patches
261+
!.yarn/plugins
262+
!.yarn/sdks
263+
!.yarn/versions
264+
265+
# if you are NOT using Zero-installs, then:
266+
# comment the following lines
267+
!.yarn/cache
268+
269+
# and uncomment the following lines
270+
# .pnp.*
271+
272+
# End of https://www.toptal.com/developers/gitignore/api/macos,solidity,soliditytruffle,visualstudiocode,yarn
273+
274+
artifacts/
275+
build/
276+
types/typechain
277+
bin/
278+
types
279+

.prettierrc.json

+3-3
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@
77
"tabWidth": 4,
88
"useTabs": false,
99
"singleQuote": false,
10-
"bracketSpacing": false,
11-
"explicitTypes": "always"
10+
"bracketSpacing": false
1211
}
1312
}
14-
]
13+
],
14+
"plugins": ["prettier-plugin-solidity"]
1515
}

.solhint.json

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
2+
{
3+
"rules": {
4+
"no-unused-vars": "error",
5+
"const-name-snakecase": "error",
6+
"contract-name-camelcase": "error",
7+
"event-name-camelcase": "error",
8+
"func-name-mixedcase": "error",
9+
"func-param-name-mixedcase": "error",
10+
"modifier-name-mixedcase": "error",
11+
"private-vars-leading-underscore": "error",
12+
"var-name-mixedcase": "error",
13+
"imports-on-top": "error"
14+
}
15+
}

README.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@ System components are broken down into four domains: Permission-less, Developer,
2525

2626
#### Permission-less Domain
2727

28-
##### CodeIndex
28+
##### CodeIndex ([ERC-7744](https://eips.ethereum.org/EIPS/eip-7744))
2929

3030
A stateful, permissionless contract allowing anyone to register associations between bytecode and its on-chain location. Any smart contract may be indexed by `CodeIndex` based on its bytecode.
31-
Proposed `CREATE2` implementation with deterministic address : `0xc0d31D6A64D1BE49867158ed3c25152D240b5c0B`
31+
Proposed `CREATE2` implementation with deterministic address : `0xc0D31d398c5ee86C5f8a23FA253ee8a586dA03Ce`
3232

3333
##### `Distribution`
3434

@@ -66,8 +66,8 @@ Stateful, permissioned contracts for managing permissions and accessing targets
6666
### Installation
6767

6868
```bash
69-
yarn install
70-
yarn test # Run tests
69+
pnpm install
70+
pnpm test # Run tests
7171
```
7272

7373
### Examples

abi/src/layers/ILayer.sol/ILayer.json abi/src/ERC7746/ILayer.sol/ILayer.json

+4-4
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"inputs": [
44
{
55
"internalType": "bytes",
6-
"name": "layerConfig",
6+
"name": "configuration",
77
"type": "bytes"
88
},
99
{
@@ -32,7 +32,7 @@
3232
"type": "bytes"
3333
}
3434
],
35-
"name": "afterCallValidation",
35+
"name": "afterCall",
3636
"outputs": [],
3737
"stateMutability": "nonpayable",
3838
"type": "function"
@@ -41,7 +41,7 @@
4141
"inputs": [
4242
{
4343
"internalType": "bytes",
44-
"name": "layerConfig",
44+
"name": "configuration",
4545
"type": "bytes"
4646
},
4747
{
@@ -65,7 +65,7 @@
6565
"type": "bytes"
6666
}
6767
],
68-
"name": "beforeCallValidation",
68+
"name": "beforeCall",
6969
"outputs": [
7070
{
7171
"internalType": "bytes",

abi/src/abstracts/Distributor.sol/Distributor.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@
145145
"type": "bytes"
146146
}
147147
],
148-
"name": "afterCallValidation",
148+
"name": "afterCall",
149149
"outputs": [],
150150
"stateMutability": "nonpayable",
151151
"type": "function"
@@ -178,7 +178,7 @@
178178
"type": "bytes"
179179
}
180180
],
181-
"name": "beforeCallValidation",
181+
"name": "beforeCall",
182182
"outputs": [
183183
{
184184
"internalType": "bytes",

0 commit comments

Comments
 (0)