Features:
- Accept multipart form file uploads with good default security settings
Improvements:
triggerandpushEventnow send to the client immediately instead of waiting for the action to finish- Added
cookieSecureoption to Session class - Deprecated
toActionInputin favor ofinputValue- Instead of partially applying a constructor, inputs are read with a function similar to forms Web.Hyperbole.Data.Paramwas unnecessary and removed. Everything uses ToJSON and FromJSON as an intermediate encoding- moved OAuth2 to sub-package to allow for dependencies on cryptography libraries
- Embedded Haddock docs will work even in projects that depend on hyperbole
Breaking Changes:
- Actions with input like
search,onInputanddropdownshould now use an action with no arguments. Get the value usinginputValueinstead ToParamandFromParamare no longer used. Use the generic implementation ofToJSONandFromJSONinstead
Maintenance:
- NIX support is fully up to date
- Strict Typescript
- Many issues resolved
Improvements:
ViewState- built in threaded state, defaults to(), for folks who really miss ElmConcurrencyControls -DropvsReplacefor overlapping updatespushUpdate- server push an update to an arbitrary view- Long-running actions can be interrupted / cancelled
- https://hyperbole.live now has inline documentation, code snippets, and live examples
Breaking Changes:
- A few functions now require state, such as
triggerandtarget
Improvements
triggeractions in other views- Javascript FFI
window.Hyperbole- API available from custom JS.runActionallows JS to trigger actionspushEvent- send events to JS from the server
- Documents
- Choose to configure with
View DocumentHead ()instead ofByteString->ByteString quickStartDocument- Live Reload
- Choose to configure with
- Websocket - ping keepalive
- New form fields:
radio,select Web.Hyperbole.Effect.OAuth2- AuthenticationWeb.Hyperbole.Effect.GenRandom- Simple random effect used by OAuth2- Error handling, custom errors
- Examples
- Many additions and improvements
- External Stylesheet TodoMVC
- OAuth2 example
Breaking Changes / Improvements
Web.Atomic.CSSoverhauled, and is now opt-in. Use new@and~operators to apply attributes and stylesWeb.Hyperbole.Data.Param- unified param encoding for Forms, ViewId, ViewAction, Sessions, QueriesWeb.Hyperbole.Data.Encoding- encoding for ViewId, ViewActionWeb.Hyperbole.Data.URI- Standardize onNetwork.URI, extra utilities to manage pathstrigger: required refactor ofPagetype alias to support type-checking:Eff es (Page '[])is nowPage es '[]
- Bug fixes and improvements
- Cleaner HyperView class (@cgeorgii)
- data family Action
- update
- Type-safe resolution of HyperViews
- Record-based Forms
- textarea (@tusharad)
- High-level sessions and query params
- Events: onLoad, onClick onInput, onSubmit, onDblClick, onKeyDown, onKeyUp
- Major refactoring
- Nix build and CI (@Skyfold)
- New Examples Live: https://docs.hyperbole.live
- New Examples Added:
- TodoMVC
- Forms - Simple
- DataTable
- Search - Filters
- Search - Autocomplete
- First version. Released on an unsuspecting world.