JSPM

  • Created
  • Published
  • Downloads 2
  • Score
    100M100P100Q50561F
  • License MIT

Package Exports

  • hardhat-package
  • hardhat-package/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (hardhat-package) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Hardhat Package

Neatly exports your solidity files and artifacts into a packaged folder. This is useful for deployment processes.

Install

# yarn
yarn add -D hardhat-package
# npm
npm i --save-dev hardhat-package

Usage

Add to your hardhat.config.ts

import "hardhat-package"

Running

npx hardhat package

Configuration

Configure the packager by adding a package to the config.

import {HardhatConfig} from "hardhat/types";

const config: HardhatConfig = {
    package: {
        // whether or not to export the artifacts
        artifacts: true, // defaults true
        // whether or not to default the abis in a separate folder
        abis: true, // default true
        // where to output the package contents
        outDir: 'custom-package-dir', // default "package"  
        // where to get the contracts from
        sources: 'contracts/customer-dir', // default "contracts"
        // the esbuild options. please refer to esbuild configuration file.
        buildConfig: {},
        // a custom filter to add which will exclude specific solidity files.
        filter: file => !file.includes('test'), // defaults to this method
        // a list of copy configs of files to additionally copy over into the package
        copy: [
            {
                // can be a file or directory of the location to copy
                src: 'src/utils',
                // the destination
                dest: 'utils',
                // whether or not the file should be exported from index.ts
                exported: true, // defaults to undefined (false)
                // if the file is exported, it will export * as this value
                exportedAs: 'utils', // defaults undefined which is just export *
            }
        ]
    }
}