{"_id":"@abytecurious/serum","_rev":"2-cc1261436da15962bc49517e51b16cb6","name":"@abytecurious/serum","dist-tags":{"latest":"0.13.39"},"versions":{"0.13.38":{"name":"@abytecurious/serum","version":"0.13.38","description":"Library for interacting with the serum dex","license":"MIT","repository":{"type":"git","url":"https://github.com/exoboosters/serum-ts.git"},"main":"lib/index.js","source":"src/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"devDependencies":{"@tsconfig/node12":"^1.0.7","@types/bn.js":"^4.11.6","@types/jest":"^26.0.9","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^7.6.0","eslint-config-prettier":"^6.11.0","jest":"^26.4.0","npm-run-all":"^4.1.5","prettier":"^2.0.5","ts-jest":"^26.2.0","typescript":"^4.0.5"},"prettier":{"singleQuote":true,"trailingComma":"all"},"dependencies":{"@solana/web3.js":"^0.90.0","bn.js":"^5.1.2","buffer-layout":"^1.2.0"},"browserslist":[">0.2%","not dead","not op_mini all","maintained node versions"],"_id":"@abytecurious/serum@0.13.38","dist":{"shasum":"2e96b540e31924cef9e3b1a795c9aff05471a134","integrity":"sha512-3A11V/O+0KOTReIS468bE1oALbp/7qYV1wyJC/4ez4FV9KC7r+uSd+yqRfPvh9VTW2M92Tp/DI2zT+FHBuHOaA==","tarball":"https://registry.npmjs.org/@abytecurious/serum/-/serum-0.13.38.tgz","fileCount":4,"unpackedSize":3463,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtttZCRA9TVsSAnZWagAAoiwP/1WKrckTweWN4xyw3WzD\nqOECkNRD4adbQbCO5jwedauJ7RyQ2EheGcyiPgj0Xg5Cb5pHfBr/P3s2a3ek\ny7VK/qjUscIOjDcojJxFjMWm1yCwxsRY3mZf1qjUM6dgKU6hYIYXPw36Vmkx\n47uv0W+1zorx39vG9oy3VL1EIege8ny4JchjjbAT/TtSP1/efNhrhkSPyQhC\no1dyz1hh/2/JYweNJoFkCw63C0xXfAq6AXjeirnl1eNvFIzCg3vBTlsh9jAf\nEM/MDlIDYCzdFiTvQxZARNhrs+MhHKTn/CPF/bQGtC3b1olUtIgZmqtF7l/j\n7wCz2juW4jjX60qNv+GSvud18dBvgh8o6kLSWV0EPFP38k/m7bQkgRnhDVy/\nGnr00dUGMO7IwFWsUHLeR6OQ+xpJIDZzHzhiKN2TRJDv32z4x/uPekGuiKWc\ntvDMAUBhPaYm1WM6Dl2Jk0EM+QGqm6aeIOb+ez74rLNRPyjVwKxafkD1JWK9\n8NE0zTLQl3NwaULaNs4EFzGVEW2njDPvDHm1kbn55pYD1BaMdUAQ2x25VgKg\ns9FpgMyMOdzipMxVmK3a1r9Un3ddpRvPOWH9d7CLwZmRGEHyjsN6CNEbYFOq\n5j2JfaW3G7IR/5I/V9VZ5wSfW2tjJHxKKt5tXuUz7rkjGXyUfmIBRv97d3ma\nRVAE\r\n=N/lv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD5oGAcDfA/3BsHbPlbUo1awL4G7P9y5BTQHgu04TNbcgIgPn2T+5TCOglN7H/KLGL0IdE7oyDv9avdzTbHz+DAPZQ="}]},"_npmUser":{"name":"abytecurious","email":"abytecurious@gmail.com"},"directories":{},"maintainers":[{"name":"abytecurious","email":"abytecurious@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/serum_0.13.38_1622596440881_0.6292709143535808"},"_hasShrinkwrap":false},"0.13.39":{"name":"@abytecurious/serum","version":"0.13.39","description":"Library for interacting with the serum dex","license":"MIT","repository":{"type":"git","url":"https://github.com/exoboosters/serum-ts.git"},"main":"lib/index.js","source":"src/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"devDependencies":{"@tsconfig/node12":"^1.0.7","@types/bn.js":"^4.11.6","@types/jest":"^26.0.9","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^7.6.0","eslint-config-prettier":"^6.11.0","jest":"^26.4.0","npm-run-all":"^4.1.5","prettier":"^2.0.5","ts-jest":"^26.2.0","typescript":"^4.0.5"},"prettier":{"singleQuote":true,"trailingComma":"all"},"dependencies":{"@solana/web3.js":"^0.90.0","bn.js":"^5.1.2","buffer-layout":"^1.2.0"},"browserslist":[">0.2%","not dead","not op_mini all","maintained node versions"],"_id":"@abytecurious/serum@0.13.39","dist":{"shasum":"5c343edbcd29518680eb9ac4d6a88e10e67fc11c","integrity":"sha512-f8tFmscfC1adL98Z5iqbniHAsWt+wnVjP2fB3U/4tgMD5fFXwsQGQFTrt907p6h3YB2q+ZEEej0r3Zid/CI8rw==","tarball":"https://registry.npmjs.org/@abytecurious/serum/-/serum-0.13.39.tgz","fileCount":47,"unpackedSize":245421,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgt8PiCRA9TVsSAnZWagAAi7kP/jQTcvdMBxFqZTvzh0oP\nTQJ3gk+22mEX3xz30XSHwxB3QaUFKd8WTpuabK4+0rZdSmuWuOAxfBwBVQVd\nqvXaoMkVU6qe9s8ICUS/+o1kvldzZe9r72QAftSBwl0gk3Va8cLx6J3NxYX5\nVuQZP9Ak1zaTlNV9W7LQSyXAyRYIk96/yLTG6rKQjlPSF9iG+PQMh2qsSEu9\nHj3zinet6+xL3YIJRZXpc/b2IhiJosERiSnY+0t5miCwrKSkF60CRcMVzpIo\nSg47eUSSxyZhxTCrV+uxqzie0v84AVxtIhS55oBzXFfdK3zIZIf3ZdN7tJSa\n1HUGL7lDUVqrW4VqIkQQl+ef/QllhGDFb+rTIvZ4v7QM1qLgtu57vMj67dZR\nf0X2Oq3++jyQTMiWI+69e0XmbpuexBZlGCXLZkMBfeUmUu/4XFYfNjHEHQ7G\ni/pdQYDWrq1KuDk2EGxYzKGjBqeqQPDlpwXe9q+IS81yZmM1WFtPmzaIKXNc\n0D63z6K4oX4m5jg0fOlloPMld+Eo89anEIGOH8igxE8tekveQoz0iPCNx54B\ny7nCaSMwAClQlGeLQTpDzUjXnA7GRJVS2+GS/b7RCDCEY389wUO6mM6/v7/y\nCY87i/uj8zz7sG35OKUfYeXFZmXkYARSQZzNZclxk9vBWRT4tYEvkLCDjfE8\n0Ntz\r\n=snJR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD8Z447em14Rtr7bjdGgGuZcivlvkJQqo605pzGhDDnXAIgCkMcaTMMM8Wj2MFOusNbM8eTnq9BfaFN30lJaISXtdE="}]},"_npmUser":{"name":"abytecurious","email":"abytecurious@gmail.com"},"directories":{},"maintainers":[{"name":"abytecurious","email":"abytecurious@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/serum_0.13.39_1622655970187_0.04996414039242958"},"_hasShrinkwrap":false}},"time":{"created":"2021-06-02T01:14:00.799Z","0.13.38":"2021-06-02T01:14:01.056Z","modified":"2022-04-04T11:04:36.322Z","0.13.39":"2021-06-02T17:46:10.384Z"},"maintainers":[{"name":"abytecurious","email":"abytecurious@gmail.com"}],"description":"Library for interacting with the serum dex","repository":{"type":"git","url":"https://github.com/exoboosters/serum-ts.git"},"license":"MIT","readme":"[![npm (scoped)](https://img.shields.io/npm/v/@project-serum/serum)](https://www.npmjs.com/package/@project-serum/serum)\n[![Build Status](https://travis-ci.com/project-serum/serum-js.svg?branch=master)](https://travis-ci.com/project-serum/serum-js)\n\n# Serum JS Client Library\n\nJavaScript client library for interacting with the Project Serum DEX.\n\n## Installation\n\nUsing npm:\n\n```\nnpm install @solana/web3.js @project-serum/serum\n```\n\nUsing yarn:\n\n```\nyarn add @solana/web3.js @project-serum/serum\n```\n\n## Usage\n\n```js\nimport { Account, Connection, PublicKey } from '@solana/web3.js';\nimport { Market } from '@project-serum/serum';\n\nlet connection = new Connection('https://testnet.solana.com');\nlet marketAddress = new PublicKey('...');\nlet market = await Market.load(connection, marketAddress);\n\n// Fetching orderbooks\nlet bids = await market.loadBids(connection);\nlet asks = await market.loadAsks(connection);\n// L2 orderbook data\nfor (let [price, size] of bids.getL2(20)) {\n  console.log(price, size);\n}\n// Full orderbook data\nfor (let order of asks) {\n  console.log(\n    order.orderId,\n    order.price,\n    order.size,\n    order.side, // 'buy' or 'sell'\n  );\n}\n\n// Placing orders\nlet owner = new Account('...');\nlet payer = new PublicKey('...'); // spl-token account\nawait market.placeOrder(connection, {\n  owner,\n  payer,\n  side: 'buy', // 'buy' or 'sell'\n  price: 123.45,\n  size: 17.0,\n  orderType: 'limit', // 'limit', 'ioc', 'postOnly'\n});\n\n// Retrieving open orders by owner\nlet myOrders = await market.loadOrdersForOwner(connection, owner.publicKey);\n\n// Cancelling orders\nfor (let order of myOrders) {\n  await market.cancelOrder(connection, owner, order);\n}\n\n// Retrieving fills\nfor (let fill of await market.loadFills(connection)) {\n  console.log(fill.orderId, fill.price, fill.size, fill.side);\n}\n\n// Settle funds\nfor (let openOrders of await market.findOpenOrdersAccountsForOwner(\n  connection,\n  owner.publicKey,\n)) {\n  if (openOrders.baseTokenFree > 0 || openOrders.quoteTokenFree > 0) {\n    // spl-token accounts to which to send the proceeds from trades\n    let baseTokenAccount = new PublicKey('...');\n    let quoteTokenAccount = new PublicKey('...');\n\n    await market.settleFunds(\n      connection,\n      owner,\n      openOrders,\n      baseTokenAccount,\n      quoteTokenAccount,\n    );\n  }\n}\n```\n","readmeFilename":"README.md"}