All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Support for element traversal via the Visitor pattern (#14)
DefaultSirenElementVisitorfor visitors that don't need to visit every type of elementLinkFinderfor searching an entity's linksActionFillerfor populating an action's fieldsCompositeVisitorfor composing multiple visitors
- Support for crawling an API via
crawl(#15) - Support for validating fields on action submission (#16)
- Default JSON serializer (#27)
- Advanced
submitusage examples in the JSDocs - Default serializer is available for extension (see
submitdocs)
- Links to source in the docs are no longer generated
0.8.2 - 2023-08-01
- Custom header pairs (
[string, string][]) are now merged correctly on action submit (#35)
0.8.1 - 2023-05-25
- Usage docs for
resolve - Re-export for
HrefandisHrefto round out docs
- Re-export
resolve(#32)
0.8.0 - 2023-05-25
resolvefunction for resolving aSubEntity- Development section in the README
- Project is now built with Node 18
- Contribution guidelines and code of conduct, which now live here
0.7.0 - 2023-04-20
NOTE: This release includes breaking changes from v0.6.0.
- Support for relative URLs (#21)
- For supporting relative URLs (#21),
follow'sRequestInitparameter is now nested in an options object Serialization'scontentTypeis now optional- The default serializer no longer requires
checkboxfields to use thecheckedextension (#22)
- Submitting a
multipart/form-dataaction now includes theboundaryparameter (#23)
0.6.2 - 2023-03-15
EmbeddedEntity'spropertiesnow default to an empty object (#19)
0.6.1 - 2023-03-08
- Made
reflect-metadataa non-dev dependency (#18)
0.6.0 - 2023-03-06
NOTE: This release includes breaking changes from v0.5.0.
SirenClienthas been removed in favor of top-level functions (see below)- Support for Node.js has been removed (for now), primarily for serialization simplification (#17). Including polyfills for
FileandFormDatamay resolve this.
0.5.0 - 2022-01-22
- Default serializer for
multipart/form-dataactions (#8)
0.4.0 - 2021-12-05
- Support for custom serializers
- Default serializer for
text/plainactions
- Upgraded
@siren-js/coreto v0.3.2 - Aligned newline normalization with HTML's algorithm for converting an entry list to a list of name-value pairs, which normalizes newlines in fields'
names and values during action submission.
0.3.1 - 2021-06-12
- Using
@web-std/filein place ofweb-file-polyfill(fixes #6)
0.3.0 - 2021-06-02
- When creating entries for action submission, fields'
nameandvalueproperties are converted according to the HTML standard.
0.2.1 - 2021-05-19
- When submitting an action, non-
checkboxand non-radiofields with novalueproperty are submitted with an empty string value, rather than"undefined"(#3).
0.2.0 - 2021-05-18
- The client class now has a
headersproperty for customizing HTTP headers sent in each request. The property can be initialized via the constructor's options object (see the README).
0.1.0 - 2021-05-03
- Client class for communicating with a Siren server
fetch()method for hitting API entry pointfollow()method for following links (including embedded links)submit()method for submitting actions; currently, only actions whosetypeis"application/x-www-form-urlencoded"are supported.
- Client
Responsewrapper for parsing Siren responses