stylus-toolkit 0.2.4 → 0.2.6
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/dist/cli.js +2 -2
- package/dist/cli.js.map +1 -1
- package/dist/commands/benchmark.d.ts.map +1 -1
- package/dist/commands/benchmark.js +5 -2
- package/dist/commands/benchmark.js.map +1 -1
- package/dist/commands/dev.d.ts.map +1 -1
- package/dist/commands/dev.js +2 -8
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +43 -40
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/profile.d.ts.map +1 -1
- package/dist/commands/profile.js +6 -6
- package/dist/commands/profile.js.map +1 -1
- package/dist/templates/generator.d.ts +2 -0
- package/dist/templates/generator.d.ts.map +1 -1
- package/dist/templates/generator.js +29 -0
- package/dist/templates/generator.js.map +1 -1
- package/dist/templates/templates.d.ts.map +1 -1
- package/dist/templates/templates.js +1 -2
- package/dist/templates/templates.js.map +1 -1
- package/package.json +2 -2
package/dist/cli.js
CHANGED
|
@@ -16,12 +16,12 @@ const program = new commander_1.Command();
|
|
|
16
16
|
program
|
|
17
17
|
.name('stylus-toolkit')
|
|
18
18
|
.description('A comprehensive CLI development environment for Arbitrum Stylus smart contracts')
|
|
19
|
-
.version('0.2.
|
|
19
|
+
.version('0.2.6');
|
|
20
20
|
program
|
|
21
21
|
.command('init')
|
|
22
22
|
.description('Initialize a new Stylus project')
|
|
23
23
|
.option('-n, --name <name>', 'Project name')
|
|
24
|
-
.option('-t, --template <template>', 'Project template (erc20, erc721, defi, basic)'
|
|
24
|
+
.option('-t, --template <template>', 'Project template (erc20, erc721, defi, basic)')
|
|
25
25
|
.option('--rust-only', 'Initialize Rust-only project')
|
|
26
26
|
.option('--solidity-only', 'Initialize Solidity-only project')
|
|
27
27
|
.action(init_1.initCommand);
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;AAEA,yCAAoC;AACpC,kDAA0B;AAC1B,0CAA8C;AAC9C,4CAAgD;AAChD,wCAA4C;AAC5C,gDAAoD;AACpD,oDAAwD;AACxD,8CAAkD;AAElD,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,gBAAgB,CAAC;KACtB,WAAW,CAAC,iFAAiF,CAAC;KAC9F,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,iCAAiC,CAAC;KAC9C,MAAM,CAAC,mBAAmB,EAAE,cAAc,CAAC;KAC3C,MAAM,CAAC,2BAA2B,EAAE,+CAA+C,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmark.d.ts","sourceRoot":"","sources":["../../src/commands/benchmark.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"benchmark.d.ts","sourceRoot":"","sources":["../../src/commands/benchmark.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB/E"}
|
|
@@ -8,8 +8,11 @@ async function benchmarkCommand(options) {
|
|
|
8
8
|
logger_1.logger.info(`Iterations: ${options.iterations}`);
|
|
9
9
|
logger_1.logger.info(`Export format: ${options.export}`);
|
|
10
10
|
logger_1.logger.newLine();
|
|
11
|
-
logger_1.logger.warn('Benchmark feature
|
|
12
|
-
logger_1.logger.
|
|
11
|
+
logger_1.logger.warn('Benchmark feature is currently in development.');
|
|
12
|
+
logger_1.logger.newLine();
|
|
13
|
+
logger_1.logger.info('Use `stylus-toolkit profile` for gas profiling instead.');
|
|
14
|
+
logger_1.logger.newLine();
|
|
15
|
+
logger_1.logger.info('Planned features:');
|
|
13
16
|
logger_1.logger.info(' - Multiple iteration testing');
|
|
14
17
|
logger_1.logger.info(' - Statistical analysis');
|
|
15
18
|
logger_1.logger.info(' - Performance metrics');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmark.js","sourceRoot":"","sources":["../../src/commands/benchmark.ts"],"names":[],"mappings":";;AAGA,
|
|
1
|
+
{"version":3,"file":"benchmark.js","sourceRoot":"","sources":["../../src/commands/benchmark.ts"],"names":[],"mappings":";;AAGA,4CAiBC;AApBD,4CAAyC;AAGlC,KAAK,UAAU,gBAAgB,CAAC,OAAyB;IAC9D,eAAM,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAE5C,eAAM,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC;IACtD,eAAM,CAAC,IAAI,CAAC,eAAe,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACjD,eAAM,CAAC,IAAI,CAAC,kBAAkB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEhD,eAAM,CAAC,OAAO,EAAE,CAAC;IACjB,eAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;IAC9D,eAAM,CAAC,OAAO,EAAE,CAAC;IACjB,eAAM,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;IACvE,eAAM,CAAC,OAAO,EAAE,CAAC;IACjB,eAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACjC,eAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAC9C,eAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IACxC,eAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACvC,eAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;AAC5C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAIA,UAAU,UAAU;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAIA,UAAU,UAAU;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CA6LnE"}
|
package/dist/commands/dev.js
CHANGED
|
@@ -88,15 +88,9 @@ async function devCommand(options) {
|
|
|
88
88
|
'-p', `${port}:8547`,
|
|
89
89
|
'-p', '8548:8548',
|
|
90
90
|
'offchainlabs/nitro-node:v3.7.1-926f1ab',
|
|
91
|
-
'--
|
|
92
|
-
'--
|
|
93
|
-
'--node.dangerous.no-l1-listener',
|
|
94
|
-
'--parent-chain.id=1337',
|
|
95
|
-
'--chain.id=412346',
|
|
96
|
-
'--http.api=net,web3,eth,debug',
|
|
97
|
-
'--http.corsdomain=*',
|
|
91
|
+
'--dev',
|
|
92
|
+
'--http.port=8547',
|
|
98
93
|
'--http.addr=0.0.0.0',
|
|
99
|
-
'--http.vhosts=*',
|
|
100
94
|
];
|
|
101
95
|
if (options.detach) {
|
|
102
96
|
dockerArgs.splice(1, 0, '-d');
|
package/dist/commands/dev.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":";;;;;AASA,
|
|
1
|
+
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAiB,MAAM,UAAU,CAAC;AAKtD,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAiB,MAAM,UAAU,CAAC;AAKtD,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgJrE"}
|
package/dist/commands/init.js
CHANGED
|
@@ -42,49 +42,52 @@ async function initCommand(options) {
|
|
|
42
42
|
]);
|
|
43
43
|
projectName = answers.projectName;
|
|
44
44
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
45
|
+
// Prompt for missing options in interactive mode
|
|
46
|
+
const prompts = [];
|
|
47
|
+
if (!template) {
|
|
48
|
+
prompts.push({
|
|
49
|
+
type: 'list',
|
|
50
|
+
name: 'template',
|
|
51
|
+
message: 'Select a template:',
|
|
52
|
+
choices: [
|
|
53
|
+
{ name: 'Basic (Simple counter)', value: 'basic' },
|
|
54
|
+
{ name: 'ERC-20 Token', value: 'erc20' },
|
|
55
|
+
{ name: 'ERC-721 NFT', value: 'erc721' },
|
|
56
|
+
{ name: 'DeFi Protocol', value: 'defi' },
|
|
57
|
+
],
|
|
58
|
+
default: 'basic',
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
if (!options.rustOnly && !options.solidityOnly) {
|
|
62
|
+
prompts.push({
|
|
63
|
+
type: 'checkbox',
|
|
64
|
+
name: 'languages',
|
|
65
|
+
message: 'Select languages to include:',
|
|
66
|
+
choices: [
|
|
67
|
+
{ name: 'Rust (Stylus)', value: 'rust', checked: true },
|
|
68
|
+
{ name: 'Solidity (for comparison)', value: 'solidity', checked: true },
|
|
69
|
+
],
|
|
70
|
+
validate: (input) => {
|
|
71
|
+
if (input.length === 0)
|
|
72
|
+
return 'Select at least one language';
|
|
73
|
+
return true;
|
|
74
|
+
},
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
if (prompts.length > 0) {
|
|
78
|
+
const answers = await inquirer_1.default.prompt(prompts);
|
|
79
|
+
if (answers.template) {
|
|
80
|
+
template = answers.template;
|
|
76
81
|
}
|
|
77
|
-
if (
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
template = answers.template;
|
|
81
|
-
}
|
|
82
|
-
if (answers.languages) {
|
|
83
|
-
options.rustOnly = answers.languages.includes('rust') && !answers.languages.includes('solidity');
|
|
84
|
-
options.solidityOnly = answers.languages.includes('solidity') && !answers.languages.includes('rust');
|
|
85
|
-
}
|
|
82
|
+
if (answers.languages) {
|
|
83
|
+
options.rustOnly = answers.languages.includes('rust') && !answers.languages.includes('solidity');
|
|
84
|
+
options.solidityOnly = answers.languages.includes('solidity') && !answers.languages.includes('rust');
|
|
86
85
|
}
|
|
87
86
|
}
|
|
87
|
+
// Set default template if still not specified
|
|
88
|
+
if (!template) {
|
|
89
|
+
template = 'basic';
|
|
90
|
+
}
|
|
88
91
|
const hasRust = !options.solidityOnly;
|
|
89
92
|
const hasSolidity = !options.rustOnly;
|
|
90
93
|
logger_1.logger.startSpinner('Creating project structure...');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":";;;;;AASA,
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA6I3E"}
|
package/dist/commands/profile.js
CHANGED
|
@@ -115,7 +115,6 @@ async function profileCommand(options) {
|
|
|
115
115
|
logger_1.logger.warn(`Could not connect to: ${rpcUrl}`);
|
|
116
116
|
logger_1.logger.newLine();
|
|
117
117
|
logger_1.logger.info('Gas profiling requires a running blockchain node.');
|
|
118
|
-
logger_1.logger.info('For Milestone 1, compilation works but gas profiling needs a node.');
|
|
119
118
|
logger_1.logger.newLine();
|
|
120
119
|
logger_1.logger.info('Quick Start:');
|
|
121
120
|
logger_1.logger.info(' • Start local node: stylus-toolkit dev --detach');
|
|
@@ -124,8 +123,6 @@ async function profileCommand(options) {
|
|
|
124
123
|
logger_1.logger.info('Other Options:');
|
|
125
124
|
logger_1.logger.info(' • Use testnet: stylus-toolkit profile --network arbitrum-sepolia');
|
|
126
125
|
logger_1.logger.info(' • Custom RPC: stylus-toolkit profile --rpc <url>');
|
|
127
|
-
logger_1.logger.newLine();
|
|
128
|
-
logger_1.logger.info('Note: Full gas profiling implementation is part of Milestone 2');
|
|
129
126
|
}
|
|
130
127
|
else {
|
|
131
128
|
logger_1.logger.error(errorMessage);
|
|
@@ -206,13 +203,16 @@ function displayResults(comparison, detailed) {
|
|
|
206
203
|
chalk_1.default.bold(`${comparison.tco.tcoAbsolute.toLocaleString()} (${chalk_1.default.green(comparison.tco.tcoPercentage.toFixed(2) + '% savings')})`),
|
|
207
204
|
]);
|
|
208
205
|
console.log(tcoTable.toString());
|
|
209
|
-
// Display
|
|
206
|
+
// Display TCO Savings Summary
|
|
210
207
|
logger_1.logger.newLine();
|
|
211
208
|
if (comparison.tco.tcoPercentage >= 25) {
|
|
212
|
-
logger_1.logger.success(`✅
|
|
209
|
+
logger_1.logger.success(`✅ Excellent gas optimization: ${comparison.tco.tcoPercentage.toFixed(2)}% TCO savings`);
|
|
210
|
+
}
|
|
211
|
+
else if (comparison.tco.tcoPercentage > 0) {
|
|
212
|
+
logger_1.logger.info(`Gas savings: ${comparison.tco.tcoPercentage.toFixed(2)}% TCO`);
|
|
213
213
|
}
|
|
214
214
|
else {
|
|
215
|
-
logger_1.logger.warn(
|
|
215
|
+
logger_1.logger.warn(`Note: Deployment costs higher, but execution ${Math.abs(comparison.savings.totalAvgSavings.percentage).toFixed(2)}% cheaper`);
|
|
216
216
|
}
|
|
217
217
|
if (detailed) {
|
|
218
218
|
logger_1.logger.newLine();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":";;;;;AAcA,
|
|
1
|
+
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../src/templates/generator.ts"],"names":[],"mappings":"AAIA,qBAAa,iBAAiB;IACtB,QAAQ,CACZ,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,IAAI,CAAC;YAcF,iBAAiB;
|
|
1
|
+
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../src/templates/generator.ts"],"names":[],"mappings":"AAIA,qBAAa,iBAAiB;IACtB,QAAQ,CACZ,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,IAAI,CAAC;YAcF,iBAAiB;YA+BjB,qBAAqB;YASrB,mBAAmB;IAgBjC,OAAO,CAAC,iBAAiB;IAoCzB,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,mBAAmB;IAsB3B,OAAO,CAAC,cAAc;IAwCtB,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,cAAc;CASvB"}
|
|
@@ -21,6 +21,9 @@ class TemplateGenerator {
|
|
|
21
21
|
async generateRustFiles(projectPath, template) {
|
|
22
22
|
const rustContractPath = path_1.default.join(projectPath, 'contracts-rust', 'src', 'lib.rs');
|
|
23
23
|
await file_system_1.FileSystem.writeFile(rustContractPath, template.rust);
|
|
24
|
+
// Generate main.rs for bin target (required for cargo-stylus constructor detection)
|
|
25
|
+
const mainRsPath = path_1.default.join(projectPath, 'contracts-rust', 'src', 'main.rs');
|
|
26
|
+
await file_system_1.FileSystem.writeFile(mainRsPath, this.generateMainRs());
|
|
24
27
|
const cargoToml = path_1.default.join(projectPath, 'contracts-rust', 'Cargo.toml');
|
|
25
28
|
await file_system_1.FileSystem.writeFile(cargoToml, this.generateCargoToml(template.name));
|
|
26
29
|
const rustToolchain = path_1.default.join(projectPath, 'contracts-rust', 'rust-toolchain.toml');
|
|
@@ -35,6 +38,9 @@ class TemplateGenerator {
|
|
|
35
38
|
const lockContent = await file_system_1.FileSystem.readFile(cargoLockSource);
|
|
36
39
|
await file_system_1.FileSystem.writeFile(cargoLockDest, lockContent);
|
|
37
40
|
}
|
|
41
|
+
// Generate Stylus.toml for deployment
|
|
42
|
+
const stylusToml = this.generateStylusToml();
|
|
43
|
+
await file_system_1.FileSystem.writeFile(path_1.default.join(projectPath, 'contracts-rust', 'Stylus.toml'), stylusToml);
|
|
38
44
|
}
|
|
39
45
|
async generateSolidityFiles(projectPath, template) {
|
|
40
46
|
const solidityContractPath = path_1.default.join(projectPath, 'contracts-solidity', `${template.name}.sol`);
|
|
@@ -71,6 +77,10 @@ mini-alloc = ["stylus-sdk/mini-alloc"]
|
|
|
71
77
|
[lib]
|
|
72
78
|
crate-type = ["lib", "cdylib"]
|
|
73
79
|
|
|
80
|
+
[[bin]]
|
|
81
|
+
name = "${contractName.toLowerCase()}-bin"
|
|
82
|
+
path = "src/main.rs"
|
|
83
|
+
|
|
74
84
|
[profile.release]
|
|
75
85
|
codegen-units = 1
|
|
76
86
|
strip = true
|
|
@@ -172,6 +182,25 @@ PRIVATE_KEY=
|
|
|
172
182
|
|
|
173
183
|
# Network
|
|
174
184
|
NETWORK=local
|
|
185
|
+
`;
|
|
186
|
+
}
|
|
187
|
+
generateStylusToml() {
|
|
188
|
+
return `# Stylus Configuration
|
|
189
|
+
# Required for cargo-stylus deployment and verification
|
|
190
|
+
|
|
191
|
+
[workspace]
|
|
192
|
+
# Workspace-level configuration (required)
|
|
193
|
+
# You can add network configurations here if needed
|
|
194
|
+
networks = {}
|
|
195
|
+
`;
|
|
196
|
+
}
|
|
197
|
+
generateMainRs() {
|
|
198
|
+
return `// Binary target for cargo-stylus constructor detection
|
|
199
|
+
// This file allows cargo-stylus to check for constructors without errors
|
|
200
|
+
|
|
201
|
+
fn main() {
|
|
202
|
+
println!("This contract has no constructor.");
|
|
203
|
+
}
|
|
175
204
|
`;
|
|
176
205
|
}
|
|
177
206
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../src/templates/generator.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,sDAAkD;AAClD,2CAAwC;AAExC,MAAa,iBAAiB;IAC5B,KAAK,CAAC,QAAQ,CACZ,WAAmB,EACnB,YAAoB,EACpB,OAAgB,EAChB,WAAoB;QAEpB,MAAM,QAAQ,GAAG,qBAAS,CAAC,YAAY,CAAC,IAAI,qBAAS,CAAC,KAAK,CAAC;QAE5D,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IAClF,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,WAAmB,EAAE,QAAa;QAChE,MAAM,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QACnF,MAAM,wBAAU,CAAC,SAAS,CAAC,gBAAgB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE5D,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;QACzE,MAAM,wBAAU,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QAE7E,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;QACtF,MAAM,wBAAU,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC;QAExE,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QACpE,MAAM,wBAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QACvD,MAAM,wBAAU,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAEpE,MAAM,eAAe,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAC3D,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;QAC7E,IAAI,MAAM,wBAAU,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACjD,MAAM,WAAW,GAAG,MAAM,wBAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;YAC/D,MAAM,wBAAU,CAAC,SAAS,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QACzD,CAAC;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../src/templates/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/templates/templates.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/templates/templates.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CA+RzC,CAAC"}
|
|
@@ -65,7 +65,6 @@ use stylus_sdk::{
|
|
|
65
65
|
alloy_primitives::{Address, U256},
|
|
66
66
|
prelude::*,
|
|
67
67
|
storage::{StorageMap, StorageU256},
|
|
68
|
-
msg,
|
|
69
68
|
};
|
|
70
69
|
|
|
71
70
|
#[storage]
|
|
@@ -86,7 +85,7 @@ impl ERC20 {
|
|
|
86
85
|
}
|
|
87
86
|
|
|
88
87
|
pub fn transfer(&mut self, to: Address, amount: U256) -> bool {
|
|
89
|
-
let sender =
|
|
88
|
+
let sender = self.vm().msg_sender();
|
|
90
89
|
let sender_balance = self.balances.get(sender);
|
|
91
90
|
|
|
92
91
|
if sender_balance < amount {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/templates/templates.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAwB;IAC5C,KAAK,EAAE;QACL,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BT;QACG,QAAQ,EAAE;;;;;;;;;;;;;;;;;;CAkBb;KACE;IACD,KAAK,EAAE;QACL,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/templates/templates.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAwB;IAC5C,KAAK,EAAE;QACL,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BT;QACG,QAAQ,EAAE;;;;;;;;;;;;;;;;;;CAkBb;KACE;IACD,KAAK,EAAE;QACL,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgDT;QACG,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsCb;KACE;IACD,MAAM,EAAE;QACN,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BT;QACG,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsCb;KACE;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCT;QACG,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6Bb;KACE;CACF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "stylus-toolkit",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.6",
|
|
4
4
|
"description": "A comprehensive CLI development environment for Arbitrum Stylus smart contracts with automated gas profiling",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"lint": "eslint src --ext .ts",
|
|
14
14
|
"lint:fix": "eslint src --ext .ts --fix",
|
|
15
15
|
"format": "prettier --write \"src/**/*.ts\"",
|
|
16
|
-
"test": "echo \"Tests
|
|
16
|
+
"test": "echo \"Tests coming soon\" && exit 0",
|
|
17
17
|
"prepare": "npm run build"
|
|
18
18
|
},
|
|
19
19
|
"keywords": [
|