Commit Graph

82 Commits

Author SHA1 Message Date
ledhed2222
46a8adcac9 feat: NFT support (#1829)
* add NFTokenBurn and NFTokenMint

* add NFTokenCreateOffer

* add NFTokenCancelOffer

* add NFTokenAcceptOffer

* add requests and responses

* make a beta 2.1.0

* rename TokenIDs to TokenOffers

* add validations and fixup docs

* add tests

* add missing error codes to binary codec

* adds history changes
2021-12-17 18:26:47 -05:00
Mayukha Vadari
fe845de884 fix: encoding issue with encoding non-traditional currency codes (#1857)
* add test

* fix decoding issue
2021-12-02 14:43:26 -05:00
Mayukha Vadari
fc101c6733 fix: add workaround for rippled UNLModify encoding bug (#1830)
* initial patch

* clean up

* make ts happy

* fix typing

* respond to comments

* Revert "respond to comments"

This reverts commit 689768bbf1.

* Publish

 - ripple-address-codec@4.2.1-beta.0
 - ripple-binary-codec@1.2.1-beta.0
 - ripple-keypairs@1.1.1-beta.0
 - xrpl@2.0.3-beta.0

* add helper comments

Co-authored-by: Nathan Nichols <natenichols@cox.net>
2021-11-30 17:16:03 -05:00
ledhed2222
ff9bdbdc4c initial pass at linting ripple-address-codec (#1798)
* initial pass at linting ripple-address-codec

* refix doc changes autofixed by eslint
2021-11-30 04:18:35 -05:00
ledhed2222
7cb38591ac add support for nfts in binary codec (#1797) 2021-11-15 17:08:37 -05:00
Greg Weisbrod
afd6aadaf1 run prettier on all packages 2021-11-12 02:41:28 -05:00
Greg Weisbrod
43b55ab598 run 'npx lerna link convert' to hoist common devDependencies to top 2021-11-08 18:19:45 -05:00
Greg Weisbrod
99c817ca8a fix all errors resulting from running 'npx lerna bootstrap', hoist github actions to top, hoist vscode config to top 2021-11-08 18:19:44 -05:00
Mayukha Vadari
332102a523 use null instead of undefined 2021-06-30 14:43:13 -04:00
Mayukha Vadari
7448142ee4 only first byte is 0 2021-06-30 14:41:48 -04:00
Mayukha Vadari
a23ba65322 fix code to pass tests 2021-06-25 11:22:26 -04:00
Mayukha Vadari
5520b81038 attempted test fix 2021-06-25 10:59:47 -04:00
Mayukha Vadari
8cc6f40c6f fix typo 2021-06-25 10:27:13 -04:00
Mayukha Vadari
32dcd3070a clean up code 2021-06-24 17:36:19 -04:00
Mayukha Vadari
f25aecd853 fix encoding problems 2021-06-24 17:35:49 -04:00
Nathan Nichols
c149ec87ea fix: allow lowercase hex in Uint64 (#135) 2021-06-11 10:58:15 -07:00
Nathan Nichols
7e7f47cc20 fix: change sfValidatorToReEnable to field code 21 (#130) 2021-06-08 16:41:01 -07:00
Nathan Nichols
c63c235a05 fix: Encode hex strings length <16 to match rippled (#133) 2021-06-08 16:40:48 -07:00
Nathan Nichols
761121eba2 fix: Order HopObject (#122)
* fix: orders HopObject fields correctly
2021-03-10 16:53:27 -06:00
Nathan Nichols
53c72b7045 fix: edge case constructing from string '0' (#121)
* fix: edge case constructing from string '0'
2021-03-10 11:36:01 -06:00
Nathan Nichols
6c537c0dc3 X-Address Encoding in Issued Currencies (#113)
* feat(account): allow issued currency to use x-address
2021-02-04 14:24:34 -06:00
golobitch
b1f78b7bea fix(path-set): do not return undefined values in toJSON function (#118) 2021-01-28 18:41:23 +01:00
Andrey Rezvov
b59c5002ed fix typo in the text of exception (#114) 2020-12-10 20:21:28 +03:00
Nathan Nichols
5a711afb7e fix: polyfill Buffer for browser compatibility (#112)
* Polyfill with "buffer" and "assert" for browser environments
* Instead of relying on webpack to make this library browser compatible, we now use a buffer library that provides a polyfill when used in the browser
2020-12-03 21:38:57 -06:00
elmurci
b023e9b35b fix(tickets): Field codes for TicketCount and TicketSequence (#111)
* fix(tickets): Field codes for TicketCount and TicketSequence
BeginLedgerSeq was taking the place of TicketCount (40) in definitions.
From a8d481c2a5/src/ripple/protocol/impl/SField.cpp
TicketCount should be 40 and TicketSequence 41.
BeginLedgerSeq doesn't seem to be used, so removing it

* fix(ci): fix tests ci
2020-11-23 21:51:03 +01:00
elmurci
479ade8a76 Tickets support (#110)
* feat(tickets): add TicketCount definition

* feat(tickets): add TicketSequence definition

* fix(tests): unit tests
2020-11-17 17:33:20 +01:00
Nathan Nichols
b43e79a9af Browser Compatibility Updates (#107)
* BigInt -> big-integer to support older browsers
* Buffer read/write BigUInt64 removed for browser compatibility.
2020-10-22 15:36:45 -05:00
Nathan Nichols
b197897227 Encode any 3 character ASCII currency code (#106)
* Encode all 3 character ASCII codes
2020-09-14 13:09:38 -05:00
Nathan Nichols
a5559825ae Filter undefined values (#105)
filter out fields with undefined values
2020-09-08 17:17:14 -05:00
Nathan Nichols
440e9922d7 X-address compatibility (#90)
ripple-binary-codec can encode transactions with X-Addresses
2020-08-21 14:06:09 -05:00
Nathan Nichols
d1b23a8b2d Add tests for parsing lower-case hex-strings (#97)
Add one test suite to verify that ripple-binary-codec could handle lower-case hex-strings.
2020-08-20 17:30:50 -05:00
Nathan Nichols
34d2d2c9ed Update default export (#98)
Updated default exports to by changing `export` to `export =`
2020-08-20 12:37:12 -05:00
Nathan Nichols
e9d5ae0d35 Order objects consistent with 0.2.6 (#96)
Changed object order so 1.0.0 is consistent with 0.2.6.
2020-08-19 13:44:53 -05:00
Nathan Nichols
d3064920f1 API typed as object (#94)
encode, encode for signing, and decode ledger are all typed as `object`. linter error disabled.
2020-08-18 13:33:23 -05:00
Nathan Nichols
1c273ce427 Publish 1.0.0-rc1 (#93)
* Prepare to release rc1 of ripple-binary-codec v1.0.0
2020-08-18 12:56:43 -05:00
Nathan Nichols
30ff63e653 Support encoding and decoding of NegativeUNL pseudo-transactions (#89)
* Support encoding and decoding of NegativeUNL pseudo-transactions
2020-08-13 12:20:12 -05:00
Nathan Nichols
2e6c68ba73 ripple-binary-codec refactor (#88)
Refactored all components in ripple-binary-codec /src
2020-07-31 09:14:11 -05:00
Nathan Nichols
383ab88d62 refactored src/types (#86)
Final refactor of the src/types directory. Refactored Amount and STObject classes, and finalized SerializedType and Comparable classes.
2020-07-20 11:02:59 -05:00
Nathan Nichols
2bfb8fc191 Refactored STArray Class (#85)
Refactored STArray and pushed end-byte computations into the STArray and STObject classes.
2020-07-16 12:15:00 -05:00
Nathan Nichols
51ad4e36fc refactored ./src/types/path-set (#84)
Refactored PathSet, Path, and Hop types. Constructing these types with Buffers, and using class instead of makeClass.
2020-07-13 16:35:08 -05:00
Nathan Nichols
ba04ea5f1f Refactored UInt and Derived Classes (#83)
Refactored UInt and Derived classes to be constructed from Buffers, and swapped out BN.js in favor of BigInt to reduce dependencies.
2020-07-10 15:24:49 -05:00
Nathan Nichols
2b8fba0c8a Refactor ./src/types Hash and derived types (#82)
Refactored Hash and derived types.
2020-07-09 16:04:29 -05:00
Nathan Nichols
8ac03699aa Check field_code and type_code when readFieldOrdinal() is called (#81)
Added verification that nth and type are valid when read from BinaryParser
2020-07-07 13:58:24 -05:00
Nathan Nichols
485ec4e924 Refactored ./src/serdes (#79)
Refactored `serdes` to use TypeScript Classes and documented functionality.
2020-07-06 16:16:32 -05:00
Elliot Lee
7da60d30b5 Improve documentation of definitions.json (#80)
* Add documentation about type_code

* Clarify "nth"

Co-authored-by: Nathan Nichols <natenichols@cox.net>
2020-07-04 12:58:17 -07:00
Nathan Nichols
cd0eb2b623 Refactor ./src/enums (#73)
* rewrote enums in TS
* changed folder name to src/definitions
2020-06-30 14:29:29 -07:00
Nathan Nichols
ede5b254e3 Added Linting with ESLint (#72)
* added linting, but currently the linting will fail on all files that have not been refactored.
2020-06-26 07:14:31 -07:00
Nathan Nichols
a930b9413c Initial change from Babel/JS to TypeScript (#70)
* will compile as typescript

* migrated test suite to use JestJS

* Migrated to Jest testing framework and typescript source files

* updated deps

* updated prepublish

* resolved 1 failing test

* changed decimal .0 on four tests, it appears that these were the only four tests expecting integer values to have '.0'

* added linter

* added package-lock

* removed tslint in favor of eslint

* changed yarn to npm

* updated version 2.6->3.0

* removing package lock

* updated node version in nvmrc and jest version in package

* removed nvmrc

* removed some unused functions

* replaced data driven with file from master

* commitint yarn.lock

* removing babel as a dependency in favor of typescript compiling to es5

* removing babel deps

* resolved testing issues by migrating helper function

* added partial linting functionality for test suite

* updated imports for decodeLedgerData

* updated test

* updated yarn.lock

* removed a console.log

* added eslint-jest-plugin to package

* reverting to old linting, will add linting in next PR

* removed comments in shamap

* re-adding .nvmrc

* npm -> yarn

* added . to .eslintrc

* added .eslintrc

* removing linting for this PR

* Changed linting to print a message so that linting doesnt fail in CI

* changing back

* added newline so diff wont show

* removed eslint deps, since linting will be dealt with in a later PR

* changed function calls to describe(...)
2020-06-24 09:00:28 -07:00
Elliot Lee
e1ec2f79e5 Support AccountDelete (#37)
- Fix https://github.com/ripple/ripple-binary-codec/issues/36
- Re-number transaction result codes
- Link reference for transaction types
2019-12-14 22:34:14 -08:00
Elliot Lee
c6d01e4ce0 Remove unused 'signing' code (#34)
Use ripple-keypairs library for signing
2019-10-15 09:15:25 -07:00