Shawn Xie
b04efe8c9e
MPT ( #2661 )
...
MPT Support for library and binary codec
2024-12-11 13:38:13 -08:00
Omar Khan
23adb4924b
feat: add Price Oracles support ( #2688 )
2024-05-23 12:10:00 -04:00
Caleb Kniffen
e2433101cb
test: run binary-codec tests in the browser ( #2566 )
...
- Convert tests to typescript
- Update type definitions causing errors in tests
- `makeParser` to accept a `Buffer` in addition to `string`
- `SerializedType` constructor allows not passing in a byte array
- `Comparable` is now a generic type so that it allows `compareTo`
methods to take more that the type itself. Example: `Uint64.compareTo`
can accept `number`
- Update tests to use jasmine compatible functions
- Switching from `test` to `it`.
- Updated test checking if coretypes all implement SerializedType
- Import fixtures directly instead of using `loadFixture` utility
- Remove importing of `buffer/` explicitly. It was throwing off type
checking in tests. Buffer is going away in a future PR anyway.
- Fixed `npm run clean` not clearing `.tsbuildinfo` files for keypairs
- Remove unused account-tx-transactions.db. It was likely used in the
past to test historical ledgers.
2024-02-01 13:53:40 -06:00
Mayukha Vadari
c8f25a6347
feat: add support for XLS-40d + add script to auto-generate models from rippled code ( #2491 )
...
Add support for XLS-40 and adds a script to automatically
generate transaction models from rippled source code.
### Context of Change
https://github.com/XRPLF/XRPL-Standards/pull/136
https://github.com/XRPLF/rippled/pull/4636
2023-11-15 16:19:50 -06:00
Mayukha Vadari
91e7369f1b
feat: add support for current sidechain design ( #2039 )
...
* Update definitions.json
* add new st types
* add tests
* add XChainClaim tx
* add XChainCommit tx
* add XChainCreateBridge tx
* add XChainCreateClaimID tx
* update definitions.json
* rename Bridge -> XChainBridge in binary codec, fix tests
* rename Bridge -> XChainBridge in models
* add codec support for XChainAddAttestation
* add XChainAddAttestation model
* undo debugging change
* fix linting issues
* update definitions.json for new rippled code, add new tests/update old tests
* add/update models
* update history
* update binary-codec
* add XChainModifyBridge model
* update RPCs
* update to latest rippled
* more fixes
* fix definitions.json
* fix spacing
* update definitions.json to avoid conflict with amm
* update definitions.json to resolve amm conflicts
* audit code
* more updates
* update rpcs
* switch to beta version
* add destination tag to XChainClaim
* rename IssuedCurrency -> Issue to match rippled
* update Issue form
* fix account object filters
* fix issue from typing
* fix LedgerEntry types
* fix attestation destination type
* Update definitions.json
* rename XChainAddAttestation -> XChainAddAttestationBatch
* add XChainAddClaimAttestation
* add XChainAddAccountCreateAttestation
* remove XChainAddAttestationBatch
* update definitions
* fix attestation txns
* fix attestation object
* add validate for new txs
* add Bridge ledger object
* add XChainOwnedClaimID ledger object
* add XChainOwnedCreateAccountClaimID ledger object
* update account_objects
* update models to latest rippled
* fix minor issues
* fix bridge ledger_entry
* add XChainModifyBridge flag
* Update definitions.json
* add rbc tests for the new txs
* update validateXChainModifyBridge
* add validate methods to other xchain txs
* fix isXChainBridge
* fix isIssue typing
* fix model types
* update changelog
* switch prepare to prepublishOnly
* add docs
* fix AccountObjectsType filter
* export common types
* fix account_objects filter
* update LedgerEntry
* add sidechain faucet info
* add snippet
* improve snippet
* fix spacing issues
* update ledger_entry
* remove AMMDelete tests for now
* Update definitions.json
* fix unit tests
* convert createValidate script to JS
* remove unneeded linter ignores
* respond to comments
* more snippet fixes
* make validate functions more readable
* add getXChainClaimID method to parse metadata
* re-add linter rules
* clean up common
* fix getXChainClaimID test
* return undefined for failed tx
* test: add model tests for new sidechain transactions (#2059 )
* add XChainAddAttestation tests, fix model
* add XChainClaim model tests
* add XChainCommit model tests, fix typo
* add XChainCreateBridge model tests
* add XChainCreateClaimID model tests
* add XChainModifyBridge tests
* update to most recent version of code
* remove XChainAddAttestationBatch tests
* add more validation tests
* switch createValidateTests to JS
2023-09-26 10:01:21 -04:00
Omar Khan
5581474627
feat: add AMM support ( #2071 )
...
* update definitions.json
* add AMMInstanceCreate
* renamed LPTokens to LPToken in definitions.json
* update HISTORY.md
* add amm_info RPC command
* add AMMDeposit
* use null check for missing fields
* add AMMWithdraw
* add AMMVote
* fix lint error
* add max trading fee check to AMMVote
* refactor MAX_TRADING_FEE to be in one place
* add AMMBid
* add AuthAccount interface to AMMBid
* refactor tests
* add AMMID to AMMInfoResponse
* update amm_info docstrings
* fix EPrice type to be Amount
* update EPrice validation error message and add missing tests
* update definitions to fix AMM in LEDGER_ENTRY_TYPES
* add missing test case Asset1In and Asset2In valid
* add missing test case Asset1Out and Asset2Out valid
* add negative FeeVal check
* update HISTORY.md to specify XLS-30
* update wording on AMMDeposit & AMMWithdraw validation errors
* add negative TradingFee check
* fix ammInfo response
* add AMMID as optional param in ammInfo response
* fix EPrice validation checks in AMMDeposit & AMMWithdraw
* add VoteSlots as optional param in AMMInfoResponse
* update VoteEntry interface
* fix deposit and withdraw tests
* fix AMMBid ValidationError
* update definitions.json with different AuthAccounts number
* Change amm_info asset parameters to Currency type
* API name changes with updated definitions.json
* rename amm_info param asset1 -> asset
* fix typo
* change AMM_MAX_TRADING_FEE to 1%
* Use Asset/Asset2 instead of AMMID for Deposit/Withdraw/Bid/Vote
* add Deposit/Withdraw flags
* rename FeeVal -> TradingFee in VoteEntry
* rename MinBidPrice -> BidMin and MaxBidPrice -> BidMax
* update definitions to change Asset & Asset2 nth values to 3 & 4
* update definitions
* add Issue type and tests for Asset/Asset2
* remove AMMID from amm_info and use Issue type
* update amm_info fields
* fix lint errors
* update unit tests
* add AMM codec-fixtures
* update Issue type
* add one asset and withdraw all tests
* refactor amm_info response fields to match AMMDevnet
* update definitions.json with refactored error codes
* update ammInfo.ts response model
* remove invalid fields from ammInfo.ts response model
* update time_interval description
* rename test model names and fix lint errors
* add Owner Reserve Fee for AMMCreate transaction
* add missing asset_frozen field
* replace Issue with IssuedCurrency
* refactor: convert flags to number
* update asset pair to use Currency type
* refactor isIssue to isCurrency
* add AMM ledger entry object, lsfAMM flag, amm fields to LedgerEntryRequest
* update definitions.json
* WIP defintions
* update codec-fixtures
* fix definitions test
* update DiscountedFee definition
* update definitions
* update codec-fixtures
* update definitions
* update unit tests
* update amm_info response
* sort imports/exports
* update jsdoc
* update amm_info jsdoc
* update jsdoc
* convert caution to all caps
* add validation for AuthAccounts
* refactor and export interfaces
* use Currency type
* update definitions
* add AMMDelete
* rename Issue to Currency in error message
* mark asset frozen as optional fields
* refactor isAuthAccounts
* add AMMDelete jsdoc
* rename to validateAuthAccounts
* fix typo
* fix typo in unit test
---------
Co-authored-by: Caleb Kniffen <ckniffen@ripple.com >
2023-08-17 22:42:32 -04:00
Mayukha Vadari
d7c3583a8f
refactor: use xrpl-codec-gen for definitions.json ( #2037 )
...
* Update definitions.json
* update CONTRIBUTING
* fix tests
* fix UNL
2022-07-19 21:01:19 +01:00
Omar Khan
9d94f4a8ab
rename XLS-20 fields ( #1966 )
...
* rename TokenTaxon -> NFTokenTaxon
* rename MintedTokens -> MintedNFTokens
* rename BurnedTokens -> BurnedNFTokens
* update binary for NFTokenID rename
* rename TokenID -> NFTokenID
* rename TokenOffers -> NFTokenOffers
* rename BrokerFee -> NFTokenBrokerFee
* rename Minter -> NFTokenMinter
* rename NonFungibleToken -> NFToken
* rename NonFungibleTokens -> NFTokens
* rename BuyOffer -> NFTokenBuyOffer
* rename SellOffer -> NFTokenSellOffer
* rename OfferNode -> NFTokenOfferNode
* fix binary for serialize tests
* Add missing MintedNFTokens def + fix tests
* nftokenid -> nft_id
* asfAuthorizedMinter -> asfAuthorizedNFTokenMinter
* Update tec/tem error codes
* Add new definitions
* Update HISTORY.md
* Change to 1.4.0 for binary-codec
* Docgen
* Update HISTORY.md
Co-authored-by: Jackson Mills <jmills@ripple.com >
2022-04-19 10:02:18 -07:00
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
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
7cb38591ac
add support for nfts in binary codec ( #1797 )
2021-11-15 17:08:37 -05: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
440e9922d7
X-address compatibility ( #90 )
...
ripple-binary-codec can encode transactions with X-Addresses
2020-08-21 14:06:09 -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
485ec4e924
Refactored ./src/serdes ( #79 )
...
Refactored `serdes` to use TypeScript Classes and documented functionality.
2020-07-06 16:16:32 -05: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
Matthew Fettig
e99031d6af
add DepositPreauth fields
2018-09-28 14:45:22 -05:00
Matthew Fettig
eb7301b4f6
add DestinationNode definition
2017-11-16 22:10:25 -08:00
wilsonianb
d528331a37
Decode binary ledger header data
2017-08-16 15:29:23 -05:00
Matthew Fettig
4359446101
add TickSize support
2017-03-22 12:15:19 -07:00
wilsonianb
9ddb6498b0
Add escrow support
2017-03-20 15:30:48 -07:00
Ben Sharafian
5cf4301fd0
Add support for PaymentChannel transactions
2017-02-17 16:29:17 +01:00
Nicholas Dudfield
a1a938e895
Enforce proper bounds of Amounts
2016-11-15 18:23:47 +10:00
Matthew Fettig
f9ee5aa029
add support for SignerListID and bump version to 0.1.4
2016-09-22 12:35:40 -07:00
Nicholas Dudfield
bfd022786c
Update enum definitions and dependencies * Remove redundant bytes from field definitions * Remove "date-generated" given hand editing * Remove ripple-lib test dependency * Fix linting errors introduced by updated eslint/eslintrc * Ensure STObject.toJSON returns a plain object
2016-05-09 18:46:51 +07:00
Chris Clark
0d1ae3bfc6
Add support for DeliverMin
2015-12-10 13:41:34 -08:00
Ivan Tivonenko
4a8313ed1c
Add fields that was added with Suspended payment feature 3f0eacf5e7
2015-11-17 04:01:09 +02:00
Ivan Tivonenko
fd75b18582
Add SuspendedPayment feature make it same as in rippled 3f0eacf5e7
2015-11-13 01:19:41 +02:00
Chris Clark
9e3c037491
Remove "type" from PathSet JSON format
2015-10-13 15:15:21 -07:00
Chris Clark
2877d1a280
Merge coretypes repo
2015-10-07 10:57:21 -07:00
Nicholas Dudfield
65987a83fd
Initial import
2015-09-30 16:28:01 +07:00