Skip to main content
Version: 7.3.0

Release Notes, 6.17.1-beta.2

🚧 Minimum required:

@smartface/native v4.4.1-beta.2 🚀
Android -> v6.17.1-beta.2 🚀
iOS -> v6.17.1-beta.2 🚀

Updated Modules

In order to fully migrate to the new version, you should update these packages:

For further information about versions, check the boilerplate project of Smartface for updated versions and match yours with the new ones:

https://github.com/smartface/helloworld-boilerplate

Changes on the Project Side

  • With the new beta release, we can now get rid of the error-by-sourcemap.ts file under the scripts/ folder. To do this, delete the error-by-sourcemap.ts file and add the new @smartface/source-map module to your project as a dependency.
# Script Folder
yarn add @smartface/source-map
  • The following packages can now be removed from the dependencies under the scripts/package.json file. Usage won't be affected in any way.

    • @smartface/contx
    • @smartface/styler
    • @smartface/core
  • If you added the new @smartface/source-map dependency to your project, the source-map dependency under the scripts/package.json file can now be removed too.

Styling-Context Changes

To add your newly-created and styled view's as a child to a ViewGroup from the code, styleableComponentMixin and styleableContainerComponentMixin have been added to the styling-context.

Usage:

import PageSampleDesign from "generated/pages/pageSample";
import FlexLayout from "@smartface/native/ui/flexlayout";
import Button from "@smartface/native/ui/button";
import { withDismissAndBackButton } from "@smartface/mixins";
import { Route, Router } from "@smartface/router";
import {
styleableComponentMixin,
styleableContainerComponentMixin
} from "@smartface/styling-context";

class StyleableButton extends styleableComponentMixin(Button) {} // For a View, styleableComponentMixin is used.
class StyleableFlexLayout extends styleableContainerComponentMixin(
FlexLayout
) {} // For a ViewGroup, styleableContainerComponentMixin is used.

export default class Page1 extends withDismissAndBackButton(PageSampleDesign) {
myFlexLayout: StyleableFlexLayout;
myButton: StyleableButton;
constructor(private router?: Router, private route?: Route) {
super({});
}

createComponents() {
this.myFlexLayout = new StyleableFlexLayout();
this.myButton = new StyleableButton();
this.myFlexLayout.addChild(this.myButton, "uniqueButtonID", ".sf-button");
}

onShow() {
super.onShow();
}

onLoad() {
super.onLoad();
this.createComponents();
}
}

IDE Changes

IDE Releases are held in its respective place. You can reach it under:

https://github.com/smartface/smartface-ide-releases/releases

Native and Framework Changes

🆕 What's New

  • Feature: Added deviceType to System module. From now on, you can get running device information type (tablet, phone etc.) via System.deviceType
  • Feature: Added Toast component. From now on, messages can be shown for a period of time on the screen.
Toast

iOS Changes

  • Feature: Emulator app version added to the settings page. To reach out you can go to Settings > Smartface.

Android Changes

  • Feature: Added manual cache invalidation for ImageView. Memory and disk caches can be invalidate via unique cache signature parameter on loadFromUrl, fetchFromUrl and loadFromFile.
  • Improvement: HeaderBarItem's color now overrides the HeaderBar's itemColor property.
  • Improvement: Syntax and runtime errors on Javascript are handled more properly on the Java/C++ layer to prevent crashes on the app's startup.

🐞 Bug Fix

  • Fixed unexpected behaviour on clear action for iOS Emulator.
  • Fixed fade animation on images while scrolling through listview items for iOS.
  • Fixed SearchView background color assignment with alpha value for iOS.
  • Fixed alerts getting closed suddenly on iOS.
  • Fixed InputView opens keyboard twice some cases.
  • Fixed the fetchfromurl fails if no onFailure method is defined on Android.
  • Fixed some parameters of fetchFromUrl method are not optional on Android.
  • Fixed the shimmering stops at a random place when the stopShimmering method gets called on Android.

📑 Documentation

The following docs are updated, you can have a look to see what's new: