{"dist":{"shasum":"9fbeffb07d0213761539a022a3c55394e495a68e","tarball":"https://registry.npmjs.org/@truffle/artifactor/-/artifactor-4.0.82-abi-utils.0.tgz","fileCount":19,"integrity":"sha512-QowvJo4Js8xa3+1a66+iZA1h3XVhaKQKAzo11dBMh4cKCresJZxYRyWdLTJax4fe95nQri66KpVHTq8noHCY4w==","signatures":[{"sig":"MEQCIEd1KRlKn1cVqrhxV8eaJQ0hvDTjS3jJt0A60eyyXZzjAiBWA1IKcvlW5bgFfTpng1dJ68tx61HELreYyNy6dQ/RLA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":38527,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhM4pCRA9TVsSAnZWagAA2vcP/2nO1U5w/0wNQHoFdG4c\nVlBhATd03ensoAugZTJT+otDYHidaydfo2pn5rmA6Hfmh+f+TC83t6kRhWnK\nE0+7rkr+RJ33/g9aWw7VDT+TbqUwlwfv3snfUCpCNakUzwP2FbtIa7N+KpqP\niS76XJ7B58SklOY92x/mLZB1fJ+QdRiKrRkvBB5ew4P7yYsYsDO8blANfHkn\nuPtkbyYmK3hcZS2daFqFrOoOLP9ddpLPB022HrIOGmft1Pm6fOvr0xa0/XLl\nb227fiRUMG2AfJhUTVWVcEZMLbnYwuedLkjzWlByJGzWSq+yfSA6dGnltMgR\no6A/S4xD6P2a942MMEolWlCyoqq1mHFIaJm6csgTW/sgj5Sra/zQrYNP+Cbz\nP/7XLaafXn50n6BJYFc7ndWs4kGef34XKbbNXHyKtw5QktnEIotlqRUrpfn7\nj4goWCcX8/kOfp3pISaovGeOywzazl7CqDrLJKJvaNypPhxZi9OsdPkv76kj\n2JWHdsojlM/Ni6o4nE+oojA9Y371OgoHbX9RqCXPiP2MFjUByWznSxNya7Q6\nWYOA50uMbU8ivJrdII0sYwy0EhqnAiLQ4q1hEN4lSEEAFwq4jQW40NNuzej5\nuOZYLdKwioIbW+uVh4/BPahcHCGhyqsx1ryQCNVBLYGM4Jf7/9RBJjyHklQU\n8WfS\r\n=A02t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","name":"@truffle/artifactor","types":"dist/index.d.ts","author":{"name":"Tim Coulter"},"readme":"# @truffle/artifactor\n\nThis package saves contract artifacts into JSON files\n\n```javascript\nconst Artifactor = require(\"@truffle/artifactor\");\nconst artifactor = new Artifactor(__dirname);\nartifactor.save({/*...*/}); // => a promise saving MyContract.json to a given destination\n```\n\n👏\n\n### Features\n\n* Manages contract ABIs, binaries and deployed addresses, so you don't have to.\n* Packages up build artifacts into `.json` files, which can then be included in your project with a simple `require`.\n* Manages library addresses for linked libraries.\n\nThe artifactor can be used with [@truffle/contract](https://github.com/trufflesuite/truffle/tree/develop/packages/contract), which provides features above and beyond `web3`:\n\n* Synchronized transactions for better control flow: transactions won't be considered finished until you're guaranteed they've been mined.\n* Promises. No more callback hell. Works well with `ES6` and `async/await`.\n* Default values for transactions, like `from` address or `gas`.\n* Returning logs, transaction receipt and transaction hash of every synchronized transaction.\n\n### Install\n\n```\n$ npm install @truffle/artifactor\n```\n\n### Example\n\nHere, we'll generate a `.json` files given a JSON object like [@truffle/contract-schema](https://github.com/trufflesuite/truffle/tree/develop/packages/contract-schema). This will give us a file which we can later `require` into other projects and contexts.\n\n```javascript\nconst Artifactor = require(\"@truffle/artifactor\");\nconst artifactor = new Artifactor(__dirname);\n\n// See truffle-schema for more info: https://github.com/trufflesuite/truffle/tree/develop/packages/contract-schema\nconst contractData = {\n  contractName: \"...\",        // String; optional.\n  abi: ...,                   // Array; required.\n  metadata: \"...\",            // String; optional.\n  bytecode: \"...\",            // String; optional.\n  \"x-some-dependency\": ...    // String, Number, Object, or Array: optional.\n};\n\nartifactor.save(contractData);\n// The file ./MyContract.json now exists, which you can\n// import into your project like any other Javascript file.\n```\n\n# API\n\n#### `artifactor.save(contractData)`\n\nSave contract data as a `.json` file. Returns a Promise.\n\n* `contractData`: Object. Data that represents this contract:\n\n    ```javascript\n    {\n      contractName: \"MyContract\",   // String; optional. Defaults to \"Contract\".\n      abi: ...,                     // Array; required.  Application binary interface.\n      metadata: \"...\",              // String; optional. Contract metadata.\n      bytecode: \"...\",              // String; optional. Contract-creation binary without resolve library links.\n      deployedBytecode: \"...\",      // String; optional. On-chain deployed binary without resolve library links.\n      sourceMap: \"...\",             // String; optional. Source mapping for bytecode.\n      deployedSourceMap: \"...\",     // String; optional. Source mapping for deployedBytecode.\n      source: \"...\",                // String; optional. Uncompiled source code for contract.\n      sourcePath: \"...\",            // String; optional. File path for uncompiled source code.\n      ast: ...,                     // Object; optional. JSON representation of contract source code, as output by compiler.\n      legacyAST: ...,               // Object; optional. Legacy JSON representation of contract source code, as output by compiler.\n      compiler: ...,                // Object; optional. Compiler \"type\" and \"properties\".\n      networks: ...,                // Object; optional. Mapping of network ID keys to network object values (address information, links to other contract instances, and/or contract event logs).\n      schemaVersion: \"...\",         // String; optional. Schema version used by contract object representation.\n      updatedAt: \"...\",             // String; optional. Time contract object representation was generated/most recently updated.\n      devdoc: \"...\",                // String; optional. Developer documentation.\n      userdoc: \"...\",               // String; optional. User documentation.\n      \"x-custom-property\": ...      // String, Number, Object, or Array: optional. Custom property. Keys must be prefixed with \"x-\".\n    }\n    ```\n\n#### `artifactor.saveAll(contracts)`\n\nSave many contracts to the filesystem at once. Returns a Promise.\n\n* `contracts`: (Object | Array). If an object is passed, the keys are the\n    contract names and the values are `contractData` objects, as in the `save`\n    function above. If an Array is used, the members are `contractData` objects\n    as in the `save` function above.\n\n    ```javascript\n    {\n      MyContract: {\n        abi: \"...\",\n        bytecode: \"...\",\n        // ...\n      },\n      AnotherContract: {\n        abi: \"...\",\n        bytecode: \"...\",\n        // ...\n      }\n    }\n    ```\n    or\n    ```javascript\n    [\n      {\n        contract_name: \"MyContract\",\n        abi: \"...\",\n        bytecode: \"...\",\n        // ...\n      },{\n        contract_name: \"AnotherContract\",\n        abi: \"...\",\n        bytecode: \"...\",\n        // ...\n      }\n    ]\n    ```\n\n### Running Tests\n\n```\n$ npm test\n```\n\n### License\n\nMIT\n","gitHead":"d23827f83f3fa232fb0a934a7d0406239e1c3c7c","license":"MIT","private":false,"scripts":{"test":"mocha","build":"tsc","prepare":"yarn build"},"_npmUser":{"name":"gnidan","email":"nick@gnidan.org"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.","repository":{"url":"https://github.com/trufflesuite/truffle/tree/master/packages/artifactor","type":"git"},"_npmVersion":"lerna/3.19.0/node@v10.22.0+x64 (darwin)","description":"A contract packager for Ethereum and Javascript","directories":{},"maintainers":[{"name":"seesemichaelj","email":"seesemichaelj@gmail.com"},{"name":"fainashalts","email":"fainashalts@gmail.com"},{"name":"eggplantzzz","email":"pobol234@gmail.com"},{"name":"haltman","email":"harry.j.altman@gmail.com"},{"name":"gnidan","email":"nick@gnidan.org"}],"_nodeVersion":"10.22.0","dependencies":{"fs-extra":"^8.1.0","lodash.merge":"^4.6.2","lodash.assign":"^4.2.0","source-map-support":"^0.5.19","@truffle/contract-schema":"^3.4.0-abi-utils.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tmp":"^0.2.1","chai":"4.2.0","web3":"1.2.1","debug":"^4.1.1","mocha":"8.1.2","sinon":"^9.0.2","ts-node":"8.10.2","typescript":"3.9.6","@types/node":"^12.6.2","ganache-core":"2.11.2","@types/fs-extra":"^8.1.0","require-nocache":"^1.0.0","@truffle/contract":"^4.2.26-abi-utils.0","@types/lodash.merge":"^4.6.6","@types/lodash.assign":"^4.2.6"},"_npmOperationalInternal":{"tmp":"tmp/artifactor_4.0.82-abi-utils.0_1602539048654_0.5477831807168032","host":"s3://npm-registry-packages"},"_id":"@truffle/artifactor@4.0.82-abi-utils.0","version":"4.0.82-abi-utils.0"}