why? what's wrong with solc?

import fs from 'fs';
//@ts-ignore
import solc from 'solc';
import { JsonRpcProvider, ContractFactory, Wallet } from 'ethers';
import 'dotenv/config';
import { METADATA_URL, WHITELIST_CONTRACT_ADDRESS } from './config';

(async () => {
const source = fs.readFileSync('./contracts/CryptoDevs.sol', 'utf-8');

const findImports = () => {
const lines = source.split('\n');
for (let line of lines) {
if (/import "/i.test(line)) {
const neededPart = line.split('"')[1];

if (/@/.test(neededPart)) {
return {
contents: fs.readFileSync('./node_modules/' + neededPart, 'utf-8'),
};
} else {
return {
contents: fs.readFileSync('./contracts' + neededPart.slice(1)),
};
}
}
}
};

const input = {
language: 'Solidity',
sources: {
'CryptoDevs.sol': {
content: source,
},
},
settings: {
outputSelection: {
'*': {
'*': ['*'],
},
},
},
};

const contractsData = JSON.parse(solc.compile(JSON.stringify(input), { import: findImports }));
console.log(contractsData);
})();

Jun 13, 2023, 4:54 PM
everything😝🤣
you are reinventing the wheel
so bad
Jun 13, 2023, 4:55 PM
well hardhat is good for a single deployment, solc is much more flexible, I agree in general yes, but I spent so much time on this f solc, that I want to defeat it completely crush it and laugh at it in a bad way
Jun 13, 2023, 4:56 PM
never used this :o
Jun 13, 2023, 4:56 PM
and make it my slave
Jun 13, 2023, 4:56 PM
hardhat or foundry automatically download all the required solidity versions
Jun 13, 2023, 4:56 PM
ever tried foundry?
Jun 13, 2023, 4:56 PM
no
Jun 13, 2023, 4:56 PM
I suggesto to check it
Jun 13, 2023, 4:56 PM
(
Jun 13, 2023, 4:57 PM
web3 still under development, the onboard is unfrendly and the tech behind still have few frameworks
so you got plenty of time to enrich yourself with skills and ideas
find problems, find who's trying to resolve those, find a better solution
Jun 13, 2023, 6:56 PM

© 2024 Draquery.com All rights reserved.