feat(didc-js): encode and validate specific types and service args #602
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
This PR extends the
didc-js
wasm module with capability to encode values of specific types, and values for the service arguments, with the purpose of also validating them against those types. This is useful for JS clients where the user is expected to produce valid candid value for a particular type.Requirements
encode
function can receive type information other thanservice_method
such as a type name or instruction to use the service argument typesConsidered Solutions
I did not find any other solution.
Recommended Solution
Since
encode
already has this functionality to encode (and validate) service method arguments, this seems like a good place to extend the functionality.Considerations