Releases: eManPrague/frui.ts
v0.17.0-rc.1
#44 Exposed EntityValidationRules (#45) * #44 Proof of concept * #44 Better concept * #44 Remove label control * #44 Add interface for AutomaticeEntityValidators and util function to recognize them. * #44 Fixed naming to be consist * #44 Extend base interface * #44 Reexport hasAutomaticEntityValidator function Co-authored-by: Michal Kopecký <[email protected]>
v1.0.0-alpha.1
Early alpha of the next version of Frui.ts containing refactored validations.
v0.17.0-generator.2
OpenAPI generators use Handlebars
v0.16.3
v0.16.2
v0.16.1
v0.16.0
-
Added
ManualPromise
,groupBy()
to @frui.ts/helpers. -
Added
hideValidationErrors()
to @frui.ts/validation. -
Added
ResponsiveTable
andDataList
controls to @frui.ts/dataviews. -
OpenAPI generator refactored. Supports
allOf
andoneOf
features. -
OpenAPI generator supports Date conversion with date-fns. Use
dates: "date-fns"
in the config file. -
Input
in @frui.ts/bootstrap supports new props:as
androws
. -
Select
in @frui.ts/bootstrap supports new props:emptyText
. -
ScreenBase.isInitialized
is now public. -
Added
ContinuousListViewModel
to @frui.ts/datascreens. It covers the case of 'endless' lists. -
FilteredListViewModel
in @frui.ts/datascreens has new extension/customization points:cloneFilterForApply()
andcreateFilter()
. -
BREAKING: Props of
<View />
changed:fallbackMode: "message" | "children"
. In case"children"
is set, the children props of the<View />
component is rendered when no view is found. You can use"children"
instead of the original"empty"
. -
BREAKING:
getValue
andsetValue
hooks accepttarget
andproperty
arguments instead of a singleprops
. -
Binding types changed. You can use the third type parameter of
IBindingProps<TTarget, TProperty, TValue>
to restrict the binding target value type. -
IApiConnector
andFetchApiConnector
changes:fetchFunction
,jsonSerializer
, andmiddleware
properties are now protected and thus available to inheriting classes- BREAKING:
postText
,postFormData
replaced bypost
. The same goest forputText
,putFormData
,patchText
,patchFormData
,deleteText
, anddeleteJson
. - BREAKING:
delete
now containsbody
argument.
-
RestRequestBuilder
changes:- BREAKING:
postFormData
replaced bypostData
,putFormData
replaced byputData
- added
path(path: string)
for fluent URL building - added
url:string
property for reading current URL - uses
query-string
package for creating query strings (you can use thequeryStringOptions
property to customize the stringification process - see https://github.com/sindresorhus/query-string#stringifyobject-options)
- BREAKING:
v0.15.0
- New package @frui.ts/dataviews with higher-order components for displaying data. Check the readme.
- Added
useBinding
,getValue
, andsetValue
helper functions to @frui.ts/views. You can use them when implementing functional binding components. - React and Mobx made peer dependencies
Router
requires root view model onstart()
instead of the constructorRouter
accepts a navigation adapter onstart()
, which enables proper cooperation of the two components- Route name can be string, symbol, or class
UrlNavigationAdapter
requires root view model onstart()
instead of the constructor- You can provide custom JSON serializer to
FetchApiConnector
initialize(): Promise<any> | void
added toIActivatable
(and therefore toIScreen
as well)ConductorSingleChild
requiresfindNavigationChild
to be implemented. You can returnundefined
, which was the original default, if you don't need navigation to child screens.- When activating a child of a conductor, it gets at least initialized when the parent is not active
AutomaticDirtyWatcher
can be configured to exclude specified propertiesCheck
in @frui.ts/bootstrap supports indeterminate state. Enable it by setting thethreeState
prop. The state id displayed when the bound value isnull
.Check
in @frui.ts/bootstrap supportsvalue
property so that it can set custom values to the bound property (not onlyboolean
).
v0.14.0
@frui.ts/cra-template
- Added a Create React App template.
@frui.ts/Screens
- Added
Router
. IHasNavigationName
deleted,NavigationName
moved toIScreen
.IHasNavigationParams
deleted,get navigationParams()
is now directly inScreenBase
. You can handle incoming params innavigate()
function (move your logic fromapplyNavigationParams()
).- Added
INavigationParent
. - Current screens and conductors updated according to the changes above.
@frui.ts/Views
- [BREAKING] Ordering of the generic parameters of
BindingComponent
changed to conform with other components:BindingComponent<TProps, TTarget>
changed toBindingComponent<TTarget, TProps>
.