{"_id":"@browscord/etf.js","name":"@browscord/etf.js","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.1":{"name":"@browscord/etf.js","version":"1.0.1","description":"An External Term Format Encoder/Decoder, written in pure JavaScript","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"prepublishOnly":"yarn build","build:browser":"webpack","lint":"eslint --ext ts src --fix","test:lint":"eslint --ext ts src","test":"yarn build && node dist/test/suite.js","test:azure":"yarn build && node dist/test/suite.js | tap-xunit --package=\"etf.js\" > test.xml","coverage":"yarn nyc --require ts-node/register --require source-map-support/register tape src/test/suite.ts | yarn tap-nyc","coverage:report":"yarn nyc report --reporter=cobertura","build":"tsc -p .","watch":"tsc -p . -w"},"keywords":["etf","erlpack"],"repository":{"type":"git","url":"git+https://github.com/vladfrangu/etf.js.git"},"author":{"name":"Vlad Frangu","email":"kingdgrizzle@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/vladfrangu/etf.js/issues"},"homepage":"https://github.com/vladfrangu/etf.js#readme","dependencies":{"pako":"^2.0.4"},"contributors":[{"name":"Aura Román","email":"kyradiscord@gmail.com","url":"https://kyra.dev"}],"devDependencies":{"@istanbuljs/nyc-config-typescript":"^0.1.3","@types/node":"^12.6.8","@types/pako":"^1.0.1","@types/tape":"^4.2.33","@typescript-eslint/eslint-plugin":"^1.13.0","@typescript-eslint/parser":"^1.13.0","erlpack":"github:discordapp/erlpack","eslint":"^6.1.0","eslint-config-bamboo":"^1.3.0","nyc":"^14.1.1","source-map-support":"^0.5.12","tap-nyc":"^1.0.3","tap-xunit":"^2.4.1","tape":"^4.11.0","ts-node":"^8.3.0","typescript":"^3.5.3"},"_id":"@browscord/etf.js@1.0.1","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-Sztkb72wQazm8IwmCBVBs48bZlt1FjXZdUW9FKf6ct/4v7O0gWO+IvbObrJ3it5UDFyQXrzlhNCku7ubSMKmZw==","shasum":"6a617ad20b43aafddab265f7ea7500763a4746a3","tarball":"https://registry.npmjs.org/@browscord/etf.js/-/etf.js-1.0.1.tgz","fileCount":17,"unpackedSize":53861,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDEbeBGsYpAtGV8uxjgCveBQAS/tDyUvDLYo3YK+OEhuAiABtw5ZtqJzs8onfPdyNSH2Pj3BI2MPsETPtVh5W/TCaw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjVR32ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr5IA//dT9sVenBiZpLxl0dAjlS1YhPBRKyyYQaW4t83Mqg3d4muC2b\r\npeWSh8EKZ7ewxFcGWIuZGmcuoavmmOb2ZmWs4S0shbrdLVWZ9EYO2lnbIGA6\r\nptN/9QGZuWqIWXukOAfhGqlasf4WJfKRibhmXZ7CGYOFN9eDzOsdV4qutplQ\r\nLNGCpJyLW2DS3PfFUp1qFTIxfzM30bPaYSqNZ8sDFkz318tyVKgGotiRLYBW\r\nLLrLr4Q8QHSPRnm7TCROQ32ZrA4vOLudd6rdd62ZriDlQIBEcym+or4unU/v\r\n9TY1d/+N7UGozorO8/VNRTrcFzWqvxCt19irGLx3dj2HQuCDW0rkEfrlVHl1\r\nqcoafTqt/m0JAGGkVs7T0t/8vcnLBBtZEQAWam809UdOQ6T4tmNhROJyh2eD\r\nNCFhxYrpWzL2ECwqIAEr+B0+pV6wtu0JNzD+6UIuZU0/9RzWYsEtMePTEIq2\r\nVVemR4i6ZXXoTzE8GeMb1UGke3uxi3HE2V+MxNRNiTuti6rIid3V8QfwCS3X\r\nS4fOJo/pSJjf1UTx32ZH1HSkauBRxwhF1n3lR7wbUFGg4DPt88bNEZJdMw65\r\nQU01eiJ+2Q2SHr/8obALRknBWbndMNpyKTykczO2LcEwCSwdd4WYTpAThsP+\r\nAMsP1UkaZRuLYXHpgEz9jTaJ+RZDIB6uAHo=\r\n=jkyV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jason_benfrin","email":"bhonemyatmin123@gmail.com"},"directories":{},"maintainers":[{"name":"jason_benfrin","email":"bhonemyatmin123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/etf.js_1.0.1_1666522614498_0.8508869019449647"},"_hasShrinkwrap":false}},"time":{"created":"2022-10-23T10:56:54.432Z","1.0.1":"2022-10-23T10:56:54.787Z","modified":"2022-10-23T10:56:54.955Z"},"maintainers":[{"name":"jason_benfrin","email":"bhonemyatmin123@gmail.com"}],"description":"An External Term Format Encoder/Decoder, written in pure JavaScript","homepage":"https://github.com/vladfrangu/etf.js#readme","keywords":["etf","erlpack"],"repository":{"type":"git","url":"git+https://github.com/vladfrangu/etf.js.git"},"contributors":[{"name":"Aura Román","email":"kyradiscord@gmail.com","url":"https://kyra.dev"}],"author":{"name":"Vlad Frangu","email":"kingdgrizzle@gmail.com"},"bugs":{"url":"https://github.com/vladfrangu/etf.js/issues"},"license":"MIT","readme":"# Clone of vladfrangu/etf.js\nI needed this and the owners would not fix a bug so i did\n\n# etf.js\n\n<!-- markdownlint-disable MD033 -->\n<div align=\"center\">\n  <p>\n    <a href=\"https://www.npmjs.com/package/etf.js\">\n      <img src=\"https://img.shields.io/npm/v/etf.js.svg?maxAge=3600\" alt=\"NPM version\" />\n    </a>\n    <a href=\"https://www.npmjs.com/package/etf.js\">\n      <img src=\"https://img.shields.io/npm/dt/etf.js.svg?maxAge=3600\" alt=\"NPM downloads\" />\n    </a>\n    <a href=\"https://dev.azure.com/vladfrangu/Public/_build/latest?definitionId=7&branchName=master\">\n      <img src=\"https://dev.azure.com/vladfrangu/Public/_apis/build/status/vladfrangu.etf.js?branchName=master\" alt=\"Build status\" />\n    </a>\n    <a href=\"https://dev.azure.com/vladfrangu/Public/_build/latest?definitionId=7&branchName=master\">\n      <img src=\"https://img.shields.io/azure-devops/coverage/vladfrangu/Public/7/master.svg\" alt=\"Azure DevOps coverage\">\n    </a>\n    <a href=\"https://lgtm.com/projects/g/vladfrangu/etf.js/alerts/\">\n      <img src=\"https://img.shields.io/lgtm/alerts/g/vladfrangu/etf.js.svg?logo=lgtm&logoWidth=18\" alt=\"Total alerts\">\n    </a>\n    <a href=\"https://dependabot.com\">\n      <img src=\"https://api.dependabot.com/badges/status?host=github&repo=vladfrangu/etf.js\" alt=\"Dependabot Status\">\n    </a>\n    <a href=\"https://www.patreon.com/kingdgrizzle\">\n      <img src=\"https://img.shields.io/badge/donate-patreon-F96854.svg\" alt=\"Patreon\" />\n    </a>\n  </p>\n  <p>\n    <a href=\"https://nodei.co/npm/etf.js/\"><img src=\"https://nodei.co/npm/etf.js.png?downloads=true&stars=true\" alt=\"npm installnfo\" /></a>\n  </p>\n</div>\n<!-- markdownlint-enable MD033 -->\n\n## About\n\n[`External Text Format`][etf] is the format Erlang uses when sending and receiving data. This module implements packing and unpacking of said format in pure, native JavaScript.\n\n## Usage\n\nThis module is [plug-and-play](https://en.wikipedia.org/wiki/Plug_and_play), it exposes two functions, `pack` and `unpack`, and would be used in the following way:\n\n```javascript\nconst { pack, unpack } = require('etf.js');\nconst serialized = pack({ hello: 'world' });\nconst deserialized = unpack(serialized);\nconsole.log(deserialized); // { hello: 'world' }\n```\n\n### What can be packed\n\n- [x] Null ([Primitive Tests](https://github.com/vladfrangu/etf.js/blob/master/src/test/primitives.ts))\n- [x] Booleans ([Primitive Tests](https://github.com/vladfrangu/etf.js/blob/master/src/test/primitives.ts))\n- [x] Strings ([Primitive Tests](https://github.com/vladfrangu/etf.js/blob/master/src/test/primitives.ts))\n- [x] Atoms ([Atom Tests](https://github.com/vladfrangu/etf.js/blob/master/src/test/atoms.ts))\n- [x] Unicode Strings ([String Tests](https://github.com/vladfrangu/etf.js/blob/master/src/test/strings.ts))\n- [x] Floats ([Primitive Tests](https://github.com/vladfrangu/etf.js/blob/master/src/test/primitives.ts))\n- [x] Integers ([Primitive Tests](https://github.com/vladfrangu/etf.js/blob/master/src/test/primitives.ts))\n- [x] Longs ([Primitive Tests](https://github.com/vladfrangu/etf.js/blob/master/src/test/primitives.ts))\n- [x] Longs over 64 bits ([Primitive Tests](https://github.com/vladfrangu/etf.js/blob/master/src/test/primitives.ts))\n- [x] Objects\n- [x] Arrays\n- [ ] Tuples\n- [ ] PIDs\n- [ ] Ports\n- [ ] Exports\n- [ ] References\n\nPlus added support for Maps (will be converted into Objects) and Sets (will be converted into Arrays)\n\n## Credits\n\n`etf.js` is heavily based of [`binarytf`][binarytf] for the structure, and could not have been done without the help from it's author:\n\n- [Aura Román](https://kyra.dev)\n\n## Contributing\n\n1. Fork it!\n1. Create your feature branch: `git checkout -b my-new-feature`\n1. Commit your changes: `git commit -am 'Add some feature'`\n1. Push to the branch: `git push origin my-new-feature`\n1. Submit a pull request!\n\n## Author\n\n**etf.js** © [vladfrangu][githubvlad], released under the\n[MIT](https://github.com/vladfrangu/etf.js/blob/master/LICENSE) License.\nAuthored and maintained by vladfrangu.\n> Github [vladfrangu][githubvlad] - Twitter [@KingDGrizzle](https://twitter.com/KingDGrizzle)\n\n[etf]: http://erlang.org/doc/apps/erts/erl_ext_dist.html\n[binarytf]: https://github.com/binarytf/binarytf\n[githubvlad]: https://github.com/vladfrangu\n","readmeFilename":"README.md"}