create-fhevm-example 1.0.6 → 1.0.8
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 +12 -4
- package/dist/config.d.ts +4 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +183 -146
- package/dist/config.js.map +1 -1
- package/dist/index.js +4 -24
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -93,13 +93,21 @@ export const REPO_BRANCH = "main";
|
|
|
93
93
|
|
|
94
94
|
To add a new example to the CLI:
|
|
95
95
|
|
|
96
|
-
1. **
|
|
96
|
+
1. **Create contract with `@notice` tag** in the main repository:
|
|
97
|
+
```solidity
|
|
98
|
+
/**
|
|
99
|
+
* @notice Your example description - auto-discovered!
|
|
100
|
+
*/
|
|
101
|
+
contract YourExample { }
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
2. **Generate config** (auto-discovery):
|
|
97
105
|
```bash
|
|
98
|
-
#
|
|
99
|
-
|
|
106
|
+
npm run generate:config # Scans contracts, extracts @notice
|
|
107
|
+
npm run sync:config # Syncs to this package
|
|
100
108
|
```
|
|
101
109
|
|
|
102
|
-
|
|
110
|
+
3. **Publish**:
|
|
103
111
|
```bash
|
|
104
112
|
npm version patch # Increments version
|
|
105
113
|
npm publish # Auto-runs: sync:config → build → publish
|
package/dist/config.d.ts
CHANGED
|
@@ -5,13 +5,16 @@
|
|
|
5
5
|
* Run 'npm run sync:config' to update it.
|
|
6
6
|
*
|
|
7
7
|
* Source: scripts/shared/config.ts
|
|
8
|
-
* Generated: 2025-12-09T16:46:12.589Z
|
|
9
8
|
*/
|
|
10
9
|
export interface ExampleConfig {
|
|
11
10
|
/** Path to the Solidity contract file */
|
|
12
11
|
contract: string;
|
|
13
12
|
/** Path to the TypeScript test file */
|
|
14
13
|
test: string;
|
|
14
|
+
/** Optional additional contract dependencies */
|
|
15
|
+
dependencies?: string[];
|
|
16
|
+
/** Optional npm packages to install */
|
|
17
|
+
npmDependencies?: Record<string, string>;
|
|
15
18
|
/** Full description for documentation */
|
|
16
19
|
description: string;
|
|
17
20
|
/** Category for grouping */
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,uCAAuC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,yCAAyC;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,yCAAyC;IACzC,SAAS,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAClD;AAMD,eAAO,MAAM,QAAQ,uDAAuD,CAAC;AAC7E,eAAO,MAAM,WAAW,SAAS,CAAC;AAClC,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAMhE,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CA6LlD,CAAC;AAMF,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAmIrD,CAAC"}
|
package/dist/config.js
CHANGED
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
* Run 'npm run sync:config' to update it.
|
|
6
6
|
*
|
|
7
7
|
* Source: scripts/shared/config.ts
|
|
8
|
-
* Generated: 2025-12-09T16:46:12.589Z
|
|
9
8
|
*/
|
|
10
9
|
// =============================================================================
|
|
11
10
|
// GitHub Repository Configuration
|
|
@@ -17,6 +16,20 @@ export const TEMPLATE_SUBMODULE_PATH = "fhevm-hardhat-template";
|
|
|
17
16
|
// Example Configurations
|
|
18
17
|
// =============================================================================
|
|
19
18
|
export const EXAMPLES = {
|
|
19
|
+
"blind-auction": {
|
|
20
|
+
"contract": "contracts/advanced/BlindAuction.sol",
|
|
21
|
+
"test": "test/advanced/BlindAuction.ts",
|
|
22
|
+
"description": "Blind Auction with encrypted bids - only the winning price is revealed",
|
|
23
|
+
"category": "Advanced",
|
|
24
|
+
"title": "Blind Auction"
|
|
25
|
+
},
|
|
26
|
+
"hidden-voting": {
|
|
27
|
+
"contract": "contracts/advanced/HiddenVoting.sol",
|
|
28
|
+
"test": "test/advanced/HiddenVoting.ts",
|
|
29
|
+
"description": "Hidden Voting with encrypted ballots and homomorphic tallying",
|
|
30
|
+
"category": "Advanced",
|
|
31
|
+
"title": "Hidden Voting"
|
|
32
|
+
},
|
|
20
33
|
"fhe-counter": {
|
|
21
34
|
"contract": "contracts/basic/FHECounter.sol",
|
|
22
35
|
"test": "test/basic/FHECounter.ts",
|
|
@@ -24,75 +37,75 @@ export const EXAMPLES = {
|
|
|
24
37
|
"category": "Basic",
|
|
25
38
|
"title": "FHE Counter"
|
|
26
39
|
},
|
|
27
|
-
"
|
|
28
|
-
"contract": "contracts/basic/
|
|
29
|
-
"test": "test/basic/
|
|
30
|
-
"description": "
|
|
31
|
-
"category": "Basic -
|
|
32
|
-
"title": "
|
|
33
|
-
},
|
|
34
|
-
"encrypt-multiple-values": {
|
|
35
|
-
"contract": "contracts/basic/encrypt/EncryptMultipleValues.sol",
|
|
36
|
-
"test": "test/basic/encrypt/EncryptMultipleValues.ts",
|
|
37
|
-
"description": "Encrypting and handling multiple values in a single transaction efficiently.",
|
|
38
|
-
"category": "Basic - Encryption",
|
|
39
|
-
"title": "Encrypt Multiple Values"
|
|
40
|
+
"public-decrypt-multiple-values": {
|
|
41
|
+
"contract": "contracts/basic/decryption/PublicDecryptMultipleValues.sol",
|
|
42
|
+
"test": "test/basic/decryption/PublicDecryptMultipleValues.ts",
|
|
43
|
+
"description": "Implements a simple 8-sided Die Roll game demonstrating public, permissionless decryption",
|
|
44
|
+
"category": "Basic - Decryption",
|
|
45
|
+
"title": "Public Decrypt Multiple Values"
|
|
40
46
|
},
|
|
41
|
-
"
|
|
42
|
-
"contract": "contracts/basic/
|
|
43
|
-
"test": "test/basic/
|
|
44
|
-
"description": "
|
|
47
|
+
"public-decrypt-single-value": {
|
|
48
|
+
"contract": "contracts/basic/decryption/PublicDecryptSingleValue.sol",
|
|
49
|
+
"test": "test/basic/decryption/PublicDecryptSingleValue.ts",
|
|
50
|
+
"description": "Implements a simple Heads or Tails game demonstrating public, permissionless decryption",
|
|
45
51
|
"category": "Basic - Decryption",
|
|
46
|
-
"title": "
|
|
52
|
+
"title": "Public Decrypt Single Value"
|
|
47
53
|
},
|
|
48
54
|
"user-decrypt-multiple-values": {
|
|
49
|
-
"contract": "contracts/basic/
|
|
50
|
-
"test": "test/basic/
|
|
51
|
-
"description": "
|
|
55
|
+
"contract": "contracts/basic/decryption/UserDecryptMultipleValues.sol",
|
|
56
|
+
"test": "test/basic/decryption/UserDecryptMultipleValues.ts",
|
|
57
|
+
"description": "Demonstrates user decryption of multiple encrypted values",
|
|
52
58
|
"category": "Basic - Decryption",
|
|
53
59
|
"title": "User Decrypt Multiple Values"
|
|
54
60
|
},
|
|
55
|
-
"
|
|
56
|
-
"contract": "contracts/basic/
|
|
57
|
-
"test": "test/basic/
|
|
58
|
-
"description": "
|
|
61
|
+
"user-decrypt-single-value": {
|
|
62
|
+
"contract": "contracts/basic/decryption/UserDecryptSingleValue.sol",
|
|
63
|
+
"test": "test/basic/decryption/UserDecryptSingleValue.ts",
|
|
64
|
+
"description": "Demonstrates the FHE decryption mechanism and highlights common pitfalls",
|
|
59
65
|
"category": "Basic - Decryption",
|
|
60
|
-
"title": "
|
|
66
|
+
"title": "User Decrypt Single Value"
|
|
61
67
|
},
|
|
62
|
-
"
|
|
63
|
-
"contract": "contracts/basic/
|
|
64
|
-
"test": "test/basic/
|
|
65
|
-
"description": "
|
|
66
|
-
"category": "Basic -
|
|
67
|
-
"title": "
|
|
68
|
+
"encrypt-multiple-values": {
|
|
69
|
+
"contract": "contracts/basic/encryption/EncryptMultipleValues.sol",
|
|
70
|
+
"test": "test/basic/encryption/EncryptMultipleValues.ts",
|
|
71
|
+
"description": "Encrypting and handling multiple values in a single transaction efficiently.",
|
|
72
|
+
"category": "Basic - Encryption",
|
|
73
|
+
"title": "Encrypt Multiple Values"
|
|
74
|
+
},
|
|
75
|
+
"encrypt-single-value": {
|
|
76
|
+
"contract": "contracts/basic/encryption/EncryptSingleValue.sol",
|
|
77
|
+
"test": "test/basic/encryption/EncryptSingleValue.ts",
|
|
78
|
+
"description": "FHE encryption mechanism with single values, including common pitfalls and best practices for developers.",
|
|
79
|
+
"category": "Basic - Encryption",
|
|
80
|
+
"title": "Encrypt Single Value"
|
|
68
81
|
},
|
|
69
82
|
"fhe-add": {
|
|
70
83
|
"contract": "contracts/basic/fhe-operations/FHEAdd.sol",
|
|
71
84
|
"test": "test/basic/fhe-operations/FHEAdd.ts",
|
|
72
|
-
"description": "
|
|
73
|
-
"category": "FHE Operations",
|
|
74
|
-
"title": "FHE Add
|
|
75
|
-
},
|
|
76
|
-
"fhe-if-then-else": {
|
|
77
|
-
"contract": "contracts/basic/fhe-operations/FHEIfThenElse.sol",
|
|
78
|
-
"test": "test/basic/fhe-operations/FHEIfThenElse.ts",
|
|
79
|
-
"description": "Conditional operations on encrypted values using FHE.select() for encrypted branching logic.",
|
|
80
|
-
"category": "FHE Operations",
|
|
81
|
-
"title": "FHE If-Then-Else"
|
|
85
|
+
"description": "Simple example: adding two encrypted values (a + b)",
|
|
86
|
+
"category": "Basic - FHE Operations",
|
|
87
|
+
"title": "FHE Add"
|
|
82
88
|
},
|
|
83
89
|
"fhe-arithmetic": {
|
|
84
90
|
"contract": "contracts/basic/fhe-operations/FHEArithmetic.sol",
|
|
85
91
|
"test": "test/basic/fhe-operations/FHEArithmetic.ts",
|
|
86
|
-
"description": "
|
|
87
|
-
"category": "FHE Operations",
|
|
88
|
-
"title": "FHE Arithmetic
|
|
92
|
+
"description": "Demonstrates all FHE arithmetic operations on encrypted integers",
|
|
93
|
+
"category": "Basic - FHE Operations",
|
|
94
|
+
"title": "FHE Arithmetic"
|
|
89
95
|
},
|
|
90
96
|
"fhe-comparison": {
|
|
91
97
|
"contract": "contracts/basic/fhe-operations/FHEComparison.sol",
|
|
92
98
|
"test": "test/basic/fhe-operations/FHEComparison.ts",
|
|
93
|
-
"description": "Demonstrates all FHE comparison operations
|
|
94
|
-
"category": "FHE Operations",
|
|
95
|
-
"title": "FHE Comparison
|
|
99
|
+
"description": "Demonstrates all FHE comparison operations on encrypted integers",
|
|
100
|
+
"category": "Basic - FHE Operations",
|
|
101
|
+
"title": "FHE Comparison"
|
|
102
|
+
},
|
|
103
|
+
"fhe-if-then-else": {
|
|
104
|
+
"contract": "contracts/basic/fhe-operations/FHEIfThenElse.sol",
|
|
105
|
+
"test": "test/basic/fhe-operations/FHEIfThenElse.ts",
|
|
106
|
+
"description": "Demonstrates conditional logic: max(a, b) using encrypted comparison",
|
|
107
|
+
"category": "Basic - FHE Operations",
|
|
108
|
+
"title": "FHE If Then Else"
|
|
96
109
|
},
|
|
97
110
|
"fhe-access-control": {
|
|
98
111
|
"contract": "contracts/concepts/FHEAccessControl.sol",
|
|
@@ -101,117 +114,177 @@ export const EXAMPLES = {
|
|
|
101
114
|
"category": "Concepts",
|
|
102
115
|
"title": "FHE Access Control"
|
|
103
116
|
},
|
|
104
|
-
"fhe-
|
|
105
|
-
"contract": "contracts/concepts/
|
|
106
|
-
"test": "test/concepts/
|
|
107
|
-
"description": "
|
|
117
|
+
"fhe-anti-patterns": {
|
|
118
|
+
"contract": "contracts/concepts/FHEAntiPatterns.sol",
|
|
119
|
+
"test": "test/concepts/FHEAntiPatterns.ts",
|
|
120
|
+
"description": "Common FHE mistakes and their correct alternatives. Covers: branching, permissions, require/revert, re-encryption, loops, noise, and deprecated APIs.",
|
|
108
121
|
"category": "Concepts",
|
|
109
|
-
"title": "FHE
|
|
122
|
+
"title": "FHE Anti Patterns"
|
|
110
123
|
},
|
|
111
124
|
"fhe-handles": {
|
|
112
125
|
"contract": "contracts/concepts/FHEHandles.sol",
|
|
113
126
|
"test": "test/concepts/FHEHandles.ts",
|
|
114
127
|
"description": "Understanding FHE handles: creation, computation, immutability, and symbolic execution in mock mode.",
|
|
115
128
|
"category": "Concepts",
|
|
116
|
-
"title": "FHE Handles
|
|
129
|
+
"title": "FHE Handles"
|
|
117
130
|
},
|
|
118
|
-
"fhe-
|
|
119
|
-
"contract": "contracts/concepts/
|
|
120
|
-
"test": "test/concepts/
|
|
121
|
-
"description": "
|
|
131
|
+
"fhe-input-proof": {
|
|
132
|
+
"contract": "contracts/concepts/FHEInputProof.sol",
|
|
133
|
+
"test": "test/concepts/FHEInputProof.ts",
|
|
134
|
+
"description": "Explains input proof validation in FHEVM: what proofs are, why they are needed, and how to use them correctly with single and batched inputs.",
|
|
122
135
|
"category": "Concepts",
|
|
123
|
-
"title": "FHE
|
|
136
|
+
"title": "FHE Input Proof"
|
|
124
137
|
},
|
|
125
138
|
"erc7984": {
|
|
126
139
|
"contract": "contracts/openzeppelin/ERC7984.sol",
|
|
127
140
|
"test": "test/openzeppelin/ERC7984.ts",
|
|
128
|
-
"
|
|
129
|
-
|
|
130
|
-
|
|
141
|
+
"npmDependencies": {
|
|
142
|
+
"@openzeppelin/contracts": "^5.0.0",
|
|
143
|
+
"@openzeppelin/confidential-contracts": "^0.3.0"
|
|
144
|
+
},
|
|
145
|
+
"description": "Confidential token using OpenZeppelin's ERC7984 standard",
|
|
146
|
+
"category": "Openzeppelin",
|
|
147
|
+
"title": "ERC7984"
|
|
131
148
|
},
|
|
132
149
|
"erc7984-erc20-wrapper": {
|
|
133
150
|
"contract": "contracts/openzeppelin/ERC7984ERC20Wrapper.sol",
|
|
134
151
|
"test": "test/openzeppelin/ERC7984ERC20Wrapper.ts",
|
|
135
|
-
"
|
|
136
|
-
|
|
137
|
-
|
|
152
|
+
"dependencies": [
|
|
153
|
+
"contracts/openzeppelin/ERC7984.sol",
|
|
154
|
+
"contracts/openzeppelin/mocks/ERC20Mock.sol"
|
|
155
|
+
],
|
|
156
|
+
"npmDependencies": {
|
|
157
|
+
"@openzeppelin/contracts": "^5.0.0",
|
|
158
|
+
"@openzeppelin/confidential-contracts": "^0.3.0"
|
|
159
|
+
},
|
|
160
|
+
"description": "Wraps ERC20 tokens into confidential ERC7984 tokens",
|
|
161
|
+
"category": "Openzeppelin",
|
|
162
|
+
"title": "ERC7984 ERC20 Wrapper"
|
|
138
163
|
},
|
|
139
164
|
"swap-erc7984-to-erc20": {
|
|
140
165
|
"contract": "contracts/openzeppelin/SwapERC7984ToERC20.sol",
|
|
141
166
|
"test": "test/openzeppelin/SwapERC7984ToERC20.ts",
|
|
142
|
-
"
|
|
143
|
-
|
|
144
|
-
|
|
167
|
+
"dependencies": [
|
|
168
|
+
"contracts/openzeppelin/ERC7984.sol",
|
|
169
|
+
"contracts/openzeppelin/mocks/ERC20Mock.sol"
|
|
170
|
+
],
|
|
171
|
+
"npmDependencies": {
|
|
172
|
+
"@openzeppelin/contracts": "^5.0.0",
|
|
173
|
+
"@openzeppelin/confidential-contracts": "^0.3.0"
|
|
174
|
+
},
|
|
175
|
+
"description": "Swap confidential ERC7984 tokens to regular ERC20 tokens",
|
|
176
|
+
"category": "Openzeppelin",
|
|
177
|
+
"title": "Swap ERC7984 To ERC20"
|
|
145
178
|
},
|
|
146
179
|
"swap-erc7984-to-erc7984": {
|
|
147
180
|
"contract": "contracts/openzeppelin/SwapERC7984ToERC7984.sol",
|
|
148
181
|
"test": "test/openzeppelin/SwapERC7984ToERC7984.ts",
|
|
149
|
-
"
|
|
150
|
-
|
|
151
|
-
|
|
182
|
+
"dependencies": [
|
|
183
|
+
"contracts/openzeppelin/ERC7984.sol"
|
|
184
|
+
],
|
|
185
|
+
"npmDependencies": {
|
|
186
|
+
"@openzeppelin/contracts": "^5.0.0",
|
|
187
|
+
"@openzeppelin/confidential-contracts": "^0.3.0"
|
|
188
|
+
},
|
|
189
|
+
"description": "Fully confidential swap between two ERC7984 tokens",
|
|
190
|
+
"category": "Openzeppelin",
|
|
191
|
+
"title": "Swap ERC7984 To ERC7984"
|
|
152
192
|
},
|
|
153
193
|
"vesting-wallet": {
|
|
154
194
|
"contract": "contracts/openzeppelin/VestingWallet.sol",
|
|
155
195
|
"test": "test/openzeppelin/VestingWallet.ts",
|
|
156
|
-
"
|
|
157
|
-
|
|
196
|
+
"dependencies": [
|
|
197
|
+
"contracts/openzeppelin/ERC7984.sol"
|
|
198
|
+
],
|
|
199
|
+
"npmDependencies": {
|
|
200
|
+
"@openzeppelin/contracts": "^5.0.0",
|
|
201
|
+
"@openzeppelin/confidential-contracts": "^0.3.0"
|
|
202
|
+
},
|
|
203
|
+
"description": "Linear vesting wallet for ERC7984 tokens - amounts stay encrypted!",
|
|
204
|
+
"category": "Openzeppelin",
|
|
158
205
|
"title": "Vesting Wallet"
|
|
159
|
-
},
|
|
160
|
-
"blind-auction": {
|
|
161
|
-
"contract": "contracts/advanced/BlindAuction.sol",
|
|
162
|
-
"test": "test/advanced/BlindAuction.ts",
|
|
163
|
-
"description": "Encrypted blind auction where bids remain confidential. Uses FHE.gt() and FHE.select() to find the winner without revealing losing bids. Only the winning price is decrypted.",
|
|
164
|
-
"category": "Advanced",
|
|
165
|
-
"title": "Blind Auction"
|
|
166
|
-
},
|
|
167
|
-
"hidden-voting": {
|
|
168
|
-
"contract": "contracts/advanced/HiddenVoting.sol",
|
|
169
|
-
"test": "test/advanced/HiddenVoting.ts",
|
|
170
|
-
"description": "Encrypted voting mechanism with homomorphic tallying. Individual votes remain private forever while final counts are revealed using FHE.makePubliclyDecryptable().",
|
|
171
|
-
"category": "Advanced",
|
|
172
|
-
"title": "Hidden Voting"
|
|
173
206
|
}
|
|
174
207
|
};
|
|
175
208
|
// =============================================================================
|
|
176
209
|
// Category Configurations
|
|
177
210
|
// =============================================================================
|
|
178
211
|
export const CATEGORIES = {
|
|
212
|
+
"advanced": {
|
|
213
|
+
"name": "Advanced Examples",
|
|
214
|
+
"description": "Complex FHE applications: blind auctions, encrypted voting systems",
|
|
215
|
+
"contracts": [
|
|
216
|
+
{
|
|
217
|
+
"sol": "contracts/advanced/BlindAuction.sol",
|
|
218
|
+
"test": "test/advanced/BlindAuction.ts"
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
"sol": "contracts/advanced/HiddenVoting.sol",
|
|
222
|
+
"test": "test/advanced/HiddenVoting.ts"
|
|
223
|
+
}
|
|
224
|
+
]
|
|
225
|
+
},
|
|
179
226
|
"basic": {
|
|
180
|
-
"name": "Basic
|
|
227
|
+
"name": "Basic Examples",
|
|
181
228
|
"description": "Fundamental FHEVM operations including encryption, decryption, and basic FHE operations",
|
|
182
229
|
"contracts": [
|
|
183
230
|
{
|
|
184
231
|
"sol": "contracts/basic/FHECounter.sol",
|
|
185
232
|
"test": "test/basic/FHECounter.ts"
|
|
186
|
-
}
|
|
233
|
+
}
|
|
234
|
+
]
|
|
235
|
+
},
|
|
236
|
+
"basicdecryption": {
|
|
237
|
+
"name": "Basic - Decryption Examples",
|
|
238
|
+
"description": "User and public decryption patterns for encrypted values",
|
|
239
|
+
"contracts": [
|
|
187
240
|
{
|
|
188
|
-
"sol": "contracts/basic/
|
|
189
|
-
"test": "test/basic/
|
|
241
|
+
"sol": "contracts/basic/decryption/PublicDecryptMultipleValues.sol",
|
|
242
|
+
"test": "test/basic/decryption/PublicDecryptMultipleValues.ts"
|
|
190
243
|
},
|
|
191
244
|
{
|
|
192
|
-
"sol": "contracts/basic/
|
|
193
|
-
"test": "test/basic/
|
|
245
|
+
"sol": "contracts/basic/decryption/PublicDecryptSingleValue.sol",
|
|
246
|
+
"test": "test/basic/decryption/PublicDecryptSingleValue.ts"
|
|
194
247
|
},
|
|
195
248
|
{
|
|
196
|
-
"sol": "contracts/basic/
|
|
197
|
-
"test": "test/basic/
|
|
249
|
+
"sol": "contracts/basic/decryption/UserDecryptMultipleValues.sol",
|
|
250
|
+
"test": "test/basic/decryption/UserDecryptMultipleValues.ts"
|
|
198
251
|
},
|
|
199
252
|
{
|
|
200
|
-
"sol": "contracts/basic/
|
|
201
|
-
"test": "test/basic/
|
|
202
|
-
}
|
|
253
|
+
"sol": "contracts/basic/decryption/UserDecryptSingleValue.sol",
|
|
254
|
+
"test": "test/basic/decryption/UserDecryptSingleValue.ts"
|
|
255
|
+
}
|
|
256
|
+
]
|
|
257
|
+
},
|
|
258
|
+
"basicencryption": {
|
|
259
|
+
"name": "Basic - Encryption Examples",
|
|
260
|
+
"description": "Encrypting values and handling encrypted inputs",
|
|
261
|
+
"contracts": [
|
|
203
262
|
{
|
|
204
|
-
"sol": "contracts/basic/
|
|
205
|
-
"test": "test/basic/
|
|
263
|
+
"sol": "contracts/basic/encryption/EncryptMultipleValues.sol",
|
|
264
|
+
"test": "test/basic/encryption/EncryptMultipleValues.ts"
|
|
206
265
|
},
|
|
207
266
|
{
|
|
208
|
-
"sol": "contracts/basic/
|
|
209
|
-
"test": "test/basic/
|
|
210
|
-
}
|
|
267
|
+
"sol": "contracts/basic/encryption/EncryptSingleValue.sol",
|
|
268
|
+
"test": "test/basic/encryption/EncryptSingleValue.ts"
|
|
269
|
+
}
|
|
270
|
+
]
|
|
271
|
+
},
|
|
272
|
+
"basicfheoperations": {
|
|
273
|
+
"name": "Basic - FHE Operations Examples",
|
|
274
|
+
"description": "Basic - FHE Operations examples and implementations",
|
|
275
|
+
"contracts": [
|
|
211
276
|
{
|
|
212
277
|
"sol": "contracts/basic/fhe-operations/FHEAdd.sol",
|
|
213
278
|
"test": "test/basic/fhe-operations/FHEAdd.ts"
|
|
214
279
|
},
|
|
280
|
+
{
|
|
281
|
+
"sol": "contracts/basic/fhe-operations/FHEArithmetic.sol",
|
|
282
|
+
"test": "test/basic/fhe-operations/FHEArithmetic.ts"
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
"sol": "contracts/basic/fhe-operations/FHEComparison.sol",
|
|
286
|
+
"test": "test/basic/fhe-operations/FHEComparison.ts"
|
|
287
|
+
},
|
|
215
288
|
{
|
|
216
289
|
"sol": "contracts/basic/fhe-operations/FHEIfThenElse.sol",
|
|
217
290
|
"test": "test/basic/fhe-operations/FHEIfThenElse.ts"
|
|
@@ -219,51 +292,29 @@ export const CATEGORIES = {
|
|
|
219
292
|
]
|
|
220
293
|
},
|
|
221
294
|
"concepts": {
|
|
222
|
-
"name": "
|
|
295
|
+
"name": "Concepts Examples",
|
|
223
296
|
"description": "Access control, input proofs, handles, and anti-patterns",
|
|
224
297
|
"contracts": [
|
|
225
298
|
{
|
|
226
299
|
"sol": "contracts/concepts/FHEAccessControl.sol",
|
|
227
300
|
"test": "test/concepts/FHEAccessControl.ts"
|
|
228
301
|
},
|
|
229
|
-
{
|
|
230
|
-
"sol": "contracts/concepts/FHEInputProof.sol",
|
|
231
|
-
"test": "test/concepts/FHEInputProof.ts"
|
|
232
|
-
},
|
|
233
|
-
{
|
|
234
|
-
"sol": "contracts/concepts/FHEHandles.sol",
|
|
235
|
-
"test": "test/concepts/FHEHandles.ts"
|
|
236
|
-
},
|
|
237
302
|
{
|
|
238
303
|
"sol": "contracts/concepts/FHEAntiPatterns.sol",
|
|
239
304
|
"test": "test/concepts/FHEAntiPatterns.ts"
|
|
240
|
-
}
|
|
241
|
-
]
|
|
242
|
-
},
|
|
243
|
-
"operations": {
|
|
244
|
-
"name": "FHE Operations",
|
|
245
|
-
"description": "Arithmetic, comparison, and conditional operations",
|
|
246
|
-
"contracts": [
|
|
247
|
-
{
|
|
248
|
-
"sol": "contracts/basic/fhe-operations/FHEAdd.sol",
|
|
249
|
-
"test": "test/basic/fhe-operations/FHEAdd.ts"
|
|
250
|
-
},
|
|
251
|
-
{
|
|
252
|
-
"sol": "contracts/basic/fhe-operations/FHEArithmetic.sol",
|
|
253
|
-
"test": "test/basic/fhe-operations/FHEArithmetic.ts"
|
|
254
305
|
},
|
|
255
306
|
{
|
|
256
|
-
"sol": "contracts/
|
|
257
|
-
"test": "test/
|
|
307
|
+
"sol": "contracts/concepts/FHEHandles.sol",
|
|
308
|
+
"test": "test/concepts/FHEHandles.ts"
|
|
258
309
|
},
|
|
259
310
|
{
|
|
260
|
-
"sol": "contracts/
|
|
261
|
-
"test": "test/
|
|
311
|
+
"sol": "contracts/concepts/FHEInputProof.sol",
|
|
312
|
+
"test": "test/concepts/FHEInputProof.ts"
|
|
262
313
|
}
|
|
263
314
|
]
|
|
264
315
|
},
|
|
265
316
|
"openzeppelin": {
|
|
266
|
-
"name": "
|
|
317
|
+
"name": "Openzeppelin Examples",
|
|
267
318
|
"description": "ERC7984 confidential token standard, wrappers, swaps, and vesting",
|
|
268
319
|
"contracts": [
|
|
269
320
|
{
|
|
@@ -287,20 +338,6 @@ export const CATEGORIES = {
|
|
|
287
338
|
"test": "test/openzeppelin/VestingWallet.ts"
|
|
288
339
|
}
|
|
289
340
|
]
|
|
290
|
-
},
|
|
291
|
-
"advanced": {
|
|
292
|
-
"name": "Advanced Examples",
|
|
293
|
-
"description": "Complex FHE applications: blind auctions, encrypted voting systems",
|
|
294
|
-
"contracts": [
|
|
295
|
-
{
|
|
296
|
-
"sol": "contracts/advanced/BlindAuction.sol",
|
|
297
|
-
"test": "test/advanced/BlindAuction.ts"
|
|
298
|
-
},
|
|
299
|
-
{
|
|
300
|
-
"sol": "contracts/advanced/HiddenVoting.sol",
|
|
301
|
-
"test": "test/advanced/HiddenVoting.ts"
|
|
302
|
-
}
|
|
303
|
-
]
|
|
304
341
|
}
|
|
305
342
|
};
|
|
306
343
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -29,29 +29,9 @@ import { cloneTemplate, initSubmodule, copyDirectoryRecursive, getContractName,
|
|
|
29
29
|
// CONSTANTS
|
|
30
30
|
// =============================================================================
|
|
31
31
|
/**
|
|
32
|
-
*
|
|
33
|
-
* Keys match the "category" field in EXAMPLES config
|
|
32
|
+
* Simple folder icon for all categories
|
|
34
33
|
*/
|
|
35
|
-
const
|
|
36
|
-
Basic: "📚",
|
|
37
|
-
"Basic - Encryption": "🔐",
|
|
38
|
-
"Basic - Decryption": "🔓",
|
|
39
|
-
"FHE Operations": "🔢",
|
|
40
|
-
Concepts: "💡",
|
|
41
|
-
OpenZeppelin: "🛡️",
|
|
42
|
-
Advanced: "🚀",
|
|
43
|
-
};
|
|
44
|
-
/**
|
|
45
|
-
* Icons for each category project (used in category selection)
|
|
46
|
-
* Keys match the keys in CATEGORIES config
|
|
47
|
-
*/
|
|
48
|
-
const CATEGORY_PROJECT_ICONS = {
|
|
49
|
-
basic: "📚",
|
|
50
|
-
concepts: "💡",
|
|
51
|
-
operations: "🔢",
|
|
52
|
-
openzeppelin: "🛡️",
|
|
53
|
-
advanced: "🚀",
|
|
54
|
-
};
|
|
34
|
+
const CATEGORY_ICON = "📁";
|
|
55
35
|
/**
|
|
56
36
|
* Display order for example categories in the interactive prompt
|
|
57
37
|
*/
|
|
@@ -201,7 +181,7 @@ async function promptSelectCategory() {
|
|
|
201
181
|
message: "Select a category:",
|
|
202
182
|
options: CATEGORY_ORDER.map((category) => ({
|
|
203
183
|
value: category,
|
|
204
|
-
label: `${
|
|
184
|
+
label: `${CATEGORY_ICON} ${category}`,
|
|
205
185
|
hint: `${categoryCounts[category] || 0} example${categoryCounts[category] !== 1 ? "s" : ""}`,
|
|
206
186
|
})),
|
|
207
187
|
});
|
|
@@ -233,7 +213,7 @@ async function promptSelectCategoryProject() {
|
|
|
233
213
|
message: "Select a category:",
|
|
234
214
|
options: Object.entries(CATEGORIES).map(([key, config]) => ({
|
|
235
215
|
value: key,
|
|
236
|
-
label: `${
|
|
216
|
+
label: `${CATEGORY_ICON} ${config.name}`,
|
|
237
217
|
hint: `${config.contracts.length} contracts`,
|
|
238
218
|
})),
|
|
239
219
|
});
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|