Releases: riot/riot
Releases Β· riot/riot
v7.0.0
- Update: code cleanup to improve the
esm
bundle and treeshaking- Remove:
riot.esm.js
in favor of theesm
folder
- Remove:
- Add: runtime
slots
#2917- The runtime slots are available in the
riot+compiler.js
bundle (A documentation update will be available soon)
- The runtime slots are available in the
- Update: reduced bundle size to 5kb riot.min.js gzipped
- Update: new Compiler (riot+compiler.js) bundle 50% lighter than the previous one
Important: The documentation will be updated during the next few weeks, however no API breaking changes were introduced.
v6.1.2
v6.1.1
- Fix compiler issues with object expressions riot/compiler#155
v6.1.0
- Update compiler
- Components output code will use modern javascript (like arrow functions) reducing heavily their size
- Components code output will be smaller due to compiler optimizations
- Update dependencies
v6.0.4
v6.0.3
- Fix tags with only named export statements. Their javascript will be properly generated also without an export default
- Update
@riotjs/dom-bindings
types adding better typescript support
v6.0.2
- Fix small incompatibility with @riotjs/lazy
v6.0.1
- Update: update the
@riotjs/compiler
improving the typescript support for type aliases like export type ComponentInterface = RiotComponent<MyComponentProps, MyComponentState>
v6.0.0
- Add strict typescript support #2912 Breaking Change: the Riot.js types have been updated
- Add fallback rendering for
slots
#2920 - Add typescript Parser as default compiler parser riot/compiler#149
- Fix #2925
- Fix typescript compilation #2926
If you are not a typescript user this release doesn't introduce any braking change. If you are a typescript user you can start writing Riot.js components as follows
<my-component>
<p>{ state.greeting }{ props.username }</p>
<!--
Notice that lang="ts" does actually nothing.
It's just needed to let your IDE interpret the below code as typescript.
The riot compiler will ignore it
-->
<script lang="ts">
import {withTypes, RiotComponent} from 'riot'
export type MyComponentProps = {
username: string
}
export type MyComponentState = {
message: string
}
export type MyComponent = RiotComponent<MyComponentProps, MyComponentState>
export default withTypes<MyComponent>({
state: {
message: 'hello'
}
})
</script>
</my-component>
Many thanks to https://github.com/kachurun for his help on this major release
v5.4.5
- Fix #2914 many thanks to @kachurun
- Fix template tags rendering with empty DOM riot/dom-bindings#19