Explorar o código

Generating types after install and keeping them outside the repo (#116)

* chore: update deps

* build: generating types after install and keeping them outside the repo

* refactor: moving the mnemonic and infuraApiKey back to the top of the script
Klaus Hott Vidal %!s(int64=3) %!d(string=hai) anos
pai
achega
9a446dc455

+ 1 - 0
.gitignore

@@ -14,6 +14,7 @@
 **/.coverage_contracts
 **/dist
 **/node_modules
+**/src/types
 
 # files
 *.env

+ 8 - 8
package.json

@@ -14,7 +14,7 @@
     "@ethersproject/bignumber": "^5.6.2",
     "@ethersproject/bytes": "^5.6.1",
     "@ethersproject/providers": "^5.6.8",
-    "@nomiclabs/hardhat-ethers": "^2.0.6",
+    "@nomiclabs/hardhat-ethers": "^2.1.0",
     "@nomiclabs/hardhat-etherscan": "^3.1.0",
     "@nomiclabs/hardhat-waffle": "^2.0.3",
     "@trivago/prettier-plugin-sort-imports": "^3.2.0",
@@ -23,20 +23,20 @@
     "@types/chai": "^4.3.1",
     "@types/fs-extra": "^9.0.13",
     "@types/mocha": "^9.1.1",
-    "@types/node": "^18.0.0",
-    "@typescript-eslint/eslint-plugin": "^5.30.0",
-    "@typescript-eslint/parser": "^5.30.0",
+    "@types/node": "^18.0.3",
+    "@typescript-eslint/eslint-plugin": "^5.30.5",
+    "@typescript-eslint/parser": "^5.30.5",
     "chai": "^4.3.6",
     "commitizen": "^4.2.4",
     "cross-env": "^7.0.3",
     "cz-conventional-changelog": "^3.3.0",
     "dotenv": "^16.0.1",
-    "eslint": "^8.18.0",
+    "eslint": "^8.19.0",
     "eslint-config-prettier": "^8.5.0",
     "ethereum-waffle": "^3.4.4",
     "ethers": "^5.6.9",
     "fs-extra": "^10.1.0",
-    "hardhat": "^2.9.9",
+    "hardhat": "^2.10.0",
     "hardhat-gas-reporter": "^1.0.8",
     "husky": "^8.0.1",
     "lint-staged": "^13.0.3",
@@ -51,7 +51,7 @@
     "solhint-plugin-prettier": "^0.0.5",
     "solidity-coverage": "^0.7.21",
     "ts-generator": "^0.1.1",
-    "ts-node": "^10.8.1",
+    "ts-node": "^10.8.2",
     "typechain": "^8.1.0",
     "typescript": "^4.7.4"
   },
@@ -78,7 +78,7 @@
     "lint": "yarn lint:sol && yarn lint:ts && yarn prettier:check",
     "lint:sol": "solhint --config ./.solhint.json --max-warnings 0 \"contracts/**/*.sol\"",
     "lint:ts": "eslint --config ./.eslintrc.yml --ignore-path ./.eslintignore --ext .js,.ts .",
-    "postinstall": "husky install",
+    "postinstall": "husky install && yarn typechain",
     "postpublish": "pinst --enable",
     "prepublishOnly": "pinst --disable",
     "prettier": "prettier --config ./.prettierrc.yml --write \"**/*.{js,json,md,sol,ts,yaml,yml}\"",

+ 0 - 151
src/types/Greeter.ts

@@ -1,151 +0,0 @@
-/* Autogenerated file. Do not edit manually. */
-
-/* tslint:disable */
-
-/* eslint-disable */
-import type {
-  TypedEventFilter,
-  TypedEvent,
-  TypedListener,
-  OnEvent,
-  PromiseOrValue,
-} from "./common";
-import type { FunctionFragment, Result } from "@ethersproject/abi";
-import type { Listener, Provider } from "@ethersproject/providers";
-import type {
-  BaseContract,
-  BigNumber,
-  BytesLike,
-  CallOverrides,
-  ContractTransaction,
-  Overrides,
-  PopulatedTransaction,
-  Signer,
-  utils,
-} from "ethers";
-
-export interface GreeterInterface extends utils.Interface {
-  functions: {
-    "greet()": FunctionFragment;
-    "greeting()": FunctionFragment;
-    "setGreeting(string)": FunctionFragment;
-    "throwError()": FunctionFragment;
-  };
-
-  getFunction(
-    nameOrSignatureOrTopic: "greet" | "greeting" | "setGreeting" | "throwError"
-  ): FunctionFragment;
-
-  encodeFunctionData(functionFragment: "greet", values?: undefined): string;
-  encodeFunctionData(functionFragment: "greeting", values?: undefined): string;
-  encodeFunctionData(
-    functionFragment: "setGreeting",
-    values: [PromiseOrValue<string>]
-  ): string;
-  encodeFunctionData(
-    functionFragment: "throwError",
-    values?: undefined
-  ): string;
-
-  decodeFunctionResult(functionFragment: "greet", data: BytesLike): Result;
-  decodeFunctionResult(functionFragment: "greeting", data: BytesLike): Result;
-  decodeFunctionResult(
-    functionFragment: "setGreeting",
-    data: BytesLike
-  ): Result;
-  decodeFunctionResult(functionFragment: "throwError", data: BytesLike): Result;
-
-  events: {};
-}
-
-export interface Greeter extends BaseContract {
-  connect(signerOrProvider: Signer | Provider | string): this;
-  attach(addressOrName: string): this;
-  deployed(): Promise<this>;
-
-  interface: GreeterInterface;
-
-  queryFilter<TEvent extends TypedEvent>(
-    event: TypedEventFilter<TEvent>,
-    fromBlockOrBlockhash?: string | number | undefined,
-    toBlock?: string | number | undefined
-  ): Promise<Array<TEvent>>;
-
-  listeners<TEvent extends TypedEvent>(
-    eventFilter?: TypedEventFilter<TEvent>
-  ): Array<TypedListener<TEvent>>;
-  listeners(eventName?: string): Array<Listener>;
-  removeAllListeners<TEvent extends TypedEvent>(
-    eventFilter: TypedEventFilter<TEvent>
-  ): this;
-  removeAllListeners(eventName?: string): this;
-  off: OnEvent<this>;
-  on: OnEvent<this>;
-  once: OnEvent<this>;
-  removeListener: OnEvent<this>;
-
-  functions: {
-    greet(overrides?: CallOverrides): Promise<[string]>;
-
-    greeting(overrides?: CallOverrides): Promise<[string]>;
-
-    setGreeting(
-      _greeting: PromiseOrValue<string>,
-      overrides?: Overrides & { from?: PromiseOrValue<string> }
-    ): Promise<ContractTransaction>;
-
-    throwError(overrides?: CallOverrides): Promise<[void]>;
-  };
-
-  greet(overrides?: CallOverrides): Promise<string>;
-
-  greeting(overrides?: CallOverrides): Promise<string>;
-
-  setGreeting(
-    _greeting: PromiseOrValue<string>,
-    overrides?: Overrides & { from?: PromiseOrValue<string> }
-  ): Promise<ContractTransaction>;
-
-  throwError(overrides?: CallOverrides): Promise<void>;
-
-  callStatic: {
-    greet(overrides?: CallOverrides): Promise<string>;
-
-    greeting(overrides?: CallOverrides): Promise<string>;
-
-    setGreeting(
-      _greeting: PromiseOrValue<string>,
-      overrides?: CallOverrides
-    ): Promise<void>;
-
-    throwError(overrides?: CallOverrides): Promise<void>;
-  };
-
-  filters: {};
-
-  estimateGas: {
-    greet(overrides?: CallOverrides): Promise<BigNumber>;
-
-    greeting(overrides?: CallOverrides): Promise<BigNumber>;
-
-    setGreeting(
-      _greeting: PromiseOrValue<string>,
-      overrides?: Overrides & { from?: PromiseOrValue<string> }
-    ): Promise<BigNumber>;
-
-    throwError(overrides?: CallOverrides): Promise<BigNumber>;
-  };
-
-  populateTransaction: {
-    greet(overrides?: CallOverrides): Promise<PopulatedTransaction>;
-
-    greeting(overrides?: CallOverrides): Promise<PopulatedTransaction>;
-
-    setGreeting(
-      _greeting: PromiseOrValue<string>,
-      overrides?: Overrides & { from?: PromiseOrValue<string> }
-    ): Promise<PopulatedTransaction>;
-
-    throwError(overrides?: CallOverrides): Promise<PopulatedTransaction>;
-  };
-}

+ 0 - 48
src/types/common.ts

@@ -1,48 +0,0 @@
-/* Autogenerated file. Do not edit manually. */
-
-/* tslint:disable */
-
-/* eslint-disable */
-import type { Listener } from "@ethersproject/providers";
-import type { Event, EventFilter } from "ethers";
-
-export interface TypedEvent<
-  TArgsArray extends Array<any> = any,
-  TArgsObject = any
-> extends Event {
-  args: TArgsArray & TArgsObject;
-}
-
-export interface TypedEventFilter<_TEvent extends TypedEvent>
-  extends EventFilter {}
-
-export interface TypedListener<TEvent extends TypedEvent> {
-  (...listenerArg: [...__TypechainArgsArray<TEvent>, TEvent]): void;
-}
-
-type __TypechainArgsArray<T> = T extends TypedEvent<infer U> ? U : never;
-
-export interface OnEvent<TRes> {
-  <TEvent extends TypedEvent>(
-    eventFilter: TypedEventFilter<TEvent>,
-    listener: TypedListener<TEvent>
-  ): TRes;
-  (eventName: string, listener: Listener): TRes;
-}
-
-export type MinEthersFactory<C, ARGS> = {
-  deploy(...a: ARGS[]): Promise<C>;
-};
-
-export type GetContractTypeFromFactory<F> = F extends MinEthersFactory<
-  infer C,
-  any
->
-  ? C
-  : never;
-
-export type GetARGsTypeFromFactory<F> = F extends MinEthersFactory<any, any>
-  ? Parameters<F["deploy"]>
-  : never;
-
-export type PromiseOrValue<T> = T | Promise<T>;

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 0 - 76
src/types/factories/Greeter__factory.ts


+ 0 - 4
src/types/factories/index.ts

@@ -1,4 +0,0 @@
-/* Autogenerated file. Do not edit manually. */
-/* tslint:disable */
-/* eslint-disable */
-export { Greeter__factory } from "./Greeter__factory";

+ 0 - 42
src/types/hardhat.d.ts

@@ -1,42 +0,0 @@
-/* Autogenerated file. Do not edit manually. */
-
-/* tslint:disable */
-
-/* eslint-disable */
-import * as Contracts from ".";
-import {
-  FactoryOptions,
-  HardhatEthersHelpers as HardhatEthersHelpersBase,
-} from "@nomiclabs/hardhat-ethers/types";
-import { ethers } from "ethers";
-
-declare module "hardhat/types/runtime" {
-  interface HardhatEthersHelpers extends HardhatEthersHelpersBase {
-    getContractFactory(
-      name: "Greeter",
-      signerOrOptions?: ethers.Signer | FactoryOptions
-    ): Promise<Contracts.Greeter__factory>;
-
-    getContractAt(
-      name: "Greeter",
-      address: string,
-      signer?: ethers.Signer
-    ): Promise<Contracts.Greeter>;
-
-    // default types
-    getContractFactory(
-      name: string,
-      signerOrOptions?: ethers.Signer | FactoryOptions
-    ): Promise<ethers.ContractFactory>;
-    getContractFactory(
-      abi: any[],
-      bytecode: ethers.utils.BytesLike,
-      signer?: ethers.Signer
-    ): Promise<ethers.ContractFactory>;
-    getContractAt(
-      nameOrAbi: string | any[],
-      address: string,
-      signer?: ethers.Signer
-    ): Promise<ethers.Contract>;
-  }
-}

+ 0 - 6
src/types/index.ts

@@ -1,6 +0,0 @@
-/* Autogenerated file. Do not edit manually. */
-/* tslint:disable */
-/* eslint-disable */
-export type { Greeter } from "./Greeter";
-export * as factories from "./factories";
-export { Greeter__factory } from "./factories/Greeter__factory";

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 249 - 308
yarn.lock


Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio