Calculate the function selectors found in all local contracts and upload them to the 4byte Directory Ethereum Signature Database.
Versions of this plugin prior to
2.0.0were released as@solidstate/hardhat-4byte-uploader.
npm install --save-dev @solidstate/hardhat-selector-uploader
# or
pnpm add -D @solidstate/hardhat-selector-uploaderLoad plugin in Hardhat config:
import hardhatSelectorUploader from '@solidstate/hardhat-selector-uploader';
const config: HardhatUserConfig = {
plugins: [
hardhatSelectorUploader,
],
selectorUploader: {
... // see table for configuration options
},
};Add configuration under the selectorUploader key:
| option | description | default |
|---|---|---|
runOnCompile |
whether to automatically upload selectors during compilation (ignored if Hardhat detects a CI server environment) | false |
selectorUploader: {
runOnCompile: true,
}Run the included Hardhat task manually:
npx hardhat upload-selectors
# or
pnpm hardhat upload-selectorsInstall dependencies via pnpm:
pnpm installSetup Husky to format code on commit:
pnpm prepare