Skip to content

Releases: eManPrague/frui.ts

v0.17.0-rc.1

19 Aug 10:55
ed0ec28
Compare
Choose a tag to compare
v0.17.0-rc.1 Pre-release
Pre-release
#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

21 Jun 11:06
Compare
Choose a tag to compare
v1.0.0-alpha.1 Pre-release
Pre-release

Early alpha of the next version of Frui.ts containing refactored validations.

v0.17.0-generator.2

18 Apr 13:26
Compare
Choose a tag to compare
v0.17.0-generator.2 Pre-release
Pre-release

OpenAPI generators use Handlebars

v0.16.3

02 Feb 13:04
Compare
Choose a tag to compare

Updated AllOf support in OpenAPI generator

v0.16.2

19 Dec 14:10
Compare
Choose a tag to compare
  • ManualPromise has observable State property
  • Generator shallowly merges default configuration with custom config file
  • OpenAPI generator can configure validation rules
  • Bootstrap input's support for date improved

v0.16.1

17 Dec 12:45
Compare
Choose a tag to compare

Fixed a bug in CollectionCheck that onValueChanged is not called on change.

v0.16.0

09 Dec 09:53
Compare
Choose a tag to compare
  • Added ManualPromise, groupBy() to @frui.ts/helpers.

  • Added hideValidationErrors() to @frui.ts/validation.

  • Added ResponsiveTable and DataList controls to @frui.ts/dataviews.

  • OpenAPI generator refactored. Supports allOf and oneOf 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 and rows.

  • 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() and createFilter().

  • 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 and setValue hooks accept target and property arguments instead of a single props.

  • Binding types changed. You can use the third type parameter of IBindingProps<TTarget, TProperty, TValue> to restrict the binding target value type.

  • IApiConnector and FetchApiConnector changes:

    • fetchFunction, jsonSerializer, and middleware properties are now protected and thus available to inheriting classes
    • BREAKING: postText, postFormData replaced by post. The same goest for putText, putFormData, patchText, patchFormData, deleteText, and deleteJson.
    • BREAKING: delete now contains body argument.
  • RestRequestBuilder changes:

    • BREAKING: postFormData replaced by postData, putFormData replaced by putData
    • 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 the queryStringOptions property to customize the stringification process - see https://github.com/sindresorhus/query-string#stringifyobject-options)

v0.15.0

11 Sep 07:56
Compare
Choose a tag to compare
  • New package @frui.ts/dataviews with higher-order components for displaying data. Check the readme.
  • Added useBinding, getValue, and setValue 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 on start() instead of the constructor
  • Router accepts a navigation adapter on start(), which enables proper cooperation of the two components
  • Route name can be string, symbol, or class
  • UrlNavigationAdapter requires root view model on start() instead of the constructor
  • You can provide custom JSON serializer to FetchApiConnector
  • initialize(): Promise<any> | void added to IActivatable (and therefore to IScreen as well)
  • ConductorSingleChild requires findNavigationChild to be implemented. You can return undefined, 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 properties
  • Check in @frui.ts/bootstrap supports indeterminate state. Enable it by setting the threeState prop. The state id displayed when the bound value is null.
  • Check in @frui.ts/bootstrap supports value property so that it can set custom values to the bound property (not only boolean).

v0.14.0

30 May 16:42
Compare
Choose a tag to compare

@frui.ts/cra-template

  • Added a Create React App template.

@frui.ts/Screens

  • Added Router.
  • IHasNavigationName deleted, NavigationName moved to IScreen.
  • IHasNavigationParams deleted, get navigationParams() is now directly in ScreenBase. You can handle incoming params in navigate() function (move your logic from applyNavigationParams()).
  • 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 to BindingComponent<TTarget, TProps>.

v0.13.0

28 Apr 16:15
Compare
Choose a tag to compare

Added new package @frui.ts/generator with CLI code generator.