Fixed issue where some of the default fonts were not showing correctly in the AppGyver Preview app
Fixed issue where the Dropdown component onChange event did not function correctly when used inside a nested repeat
Fixed issue where data variable direct bindings, or object.value
type bindings when used inside a repeated data variable did not work in flow functions
Fixed issue where the List divider component was not visible
Fixed issue where a Dropdown component's Label did not update to undefined
when its Value was programmmatically switched to null
Fixed issue where logout in a standalone web app with navigation menu enabled left the menu structure visible
Build Service only release; fixes issue where web builds sometimes failed. No changes on other platforms.
Build Service only release; fixes issue where Apple App Store rejected a new iOS binary with an error message complaining about deprecated UIWebView usage. No changes on other platforms.
Fixed issue where Open page flow function did not work when navigation menu was disabled; closes https://tracker.appgyver.com/bug-reports/p/navigation-logic-blocks-dont-work-with-the-navigation-menu-disabled and https://tracker.appgyver.com/bug-reports/p/navigation-not-working-properly-in-2x-beta
Fixed issue where Tag input component was not working properly; closes https://tracker.appgyver.com/bug-reports/p/tag-input-not-wotking-as-expected
Fixed issue where Date picker flow function crashed when certain properties were not set; closes https://tracker.appgyver.com/bug-reports/p/date-picker-not-working-on-runtime-version-2420
Fixed several issues with using formulas in style bindings; closes https://tracker.appgyver.com/bug-reports/p/formula-for-opacity-doesnt-work-for-imagebutton
Fixed several issues with different kinds of data bindings; closes https://tracker.appgyver.com/bug-reports/p/repeat-component-not-working-on-runtime-version-2420 and https://tracker.appgyver.com/bug-reports/p/property-of-data-item-in-repeat-doesnot-work
Fixed issue where composite component internal properties, output values and private variables bindings did not work if the binding is to an object sub-property directly, i.e. internalProps.obj.a
did not work but formula internalProps.obj.b + "!"
did
Fixed issue where Rich text component did not apply Typography styles
Using formulas in Dropdown component Option list property items (when using Custom list binding type) doesn't work
Two-way bindable component properties, e.g. Value property of an Input field component, can be reverted back to "No value" option
Fixed the preview for certain components in the Marketplace, e.g. the Thumbnail carousel component.
Fixed a crash in the Marketplace dialog when navigating in a certain way, e.g. when moving to a Updates tab and then to Data tab
Fixed issue where upgrading from a 1.x version of the Preview app would cause app listing to not load.
Fixed issue where Rich text component did not apply Typography styles.
Fixed issue where using formulas in Dropdown component Option list property items (when using Custom list binding type) did not work.
Fixed issues with direct two-way property bindings in nested repeated items.
Fixed issues with some components inside Recycler view being unresponsive to user interaction.
Fixed issue where web backgrounds were being cut off before the end of the page.
This major release comes with an upgraded version of the mobile/web runtime, so be sure to update your AppGyver Preview app from Apple App Store/Google Play!
We've strived to keep everything working seamlessly, so opening your app after upgrading the Preview app should not result in any changed behaviour by default – please let us know of any regressions on https://tracker.appgyver.com!
That said, there are a few breaking changes to take note of.
All flow functions should be updated to their latest versions to ensure compatibility.
Specifically, older versions of Show spinner and Hide spinner will not work with the new v2 runtime.
Web navigation has been improved, and now there are proper modern routes that can be refreshed (an upcoming feature is to enable you to customize the routes too).
With this update, we no longer try to emulate mobile-style stack navigation on web. The only active contexts are the current page and the global canvas. This means that e.g. events on pages not active are not triggered – such event handling should be moved to the global canvas.
Also, you can no longer open the same page twice in a row, unless the new page has different parameters. Thus, you can open your "Movie Details" page with id
parameter 1, then open "Movie Details" again with id
parameter 2 – but not with id
1 again.
Finally, we've disabled the soft back button on web navigation header, as it's an anti-pattern and browser native back should be used instead. The plan is that you'll be able to enable it back manually in an upcoming release!
If your app has auth enabled, and you want to open a page (e.g. "Create account") from the login view, you need to enable the new Allow page to be opened without authentication property for those pages.
The plus side is that now opening regular and modal pages from the login view works the same on all platforms!
Closes https://tracker.appgyver.com/bug-reports/p/cannot-open-page-while-in-initial-view.
If you find yourself needing access to the old runtime, it is available via Preview app versions under the AppGyver Legend codename:
AppGyver Legend for iOS: https://apps.apple.com/us/app/appgyver-legend/id1462725686
AppGyver Legend for Android: https://play.google.com/store/apps/details?id=com.appgyver.agclient.legend&hl=en&gl=US
AppGyver Legend for web: https://preview-legend.appgyver.com
AppGyver Debugger Legend: https://debugger-legend.appgyver.com
Furthermore, you can now still build 1.9.22 runtime version standalone apps via the Build Service.
The below issues are known regressions from 1.9.22 present in 2.4.17 runtime, that will be fixed soon in an upcoming release.
Component drop shadows are not working on Android
Composite component internal properties, output values and private variables bindings do not work if the binding is to an object sub-property directly, i.e. internalProps.obj.a
doesn't work but formula internalProps.obj.b + "!"
does.
Rich text component doesn't apply Typography styles
Using formulas in Dropdown component Option list property items (when using Custom list binding type) doesn't work
A major change is how composite component properties are treated. The move is towards a much more isolated design, where the idea is that a composite component will never utilize page/app/data variables or other app-specific functionalities directly, but rather expose events and properties that can then be hooked up to your actual app logic.
This paves the way for true reusability across apps, and we already have the first new components published.
The UI in isolation mode has been overhauled, with properties now available via a switch at the top.
See sample components in the gallery!
To clarify how the different component properties behave, they have been split into three types, indicated by a little arrow icon next to the property name.
The biggest difference is that the new two-way property type limits what can be bound to them to ensure correct functionality.
Configuration properties are "one-way" into the component, i.e. they are set from the "outside" and the component never changes them. For example, text content or input keyboard type. You can bind anything to them.
Two-way properties are "two-way" in the sense that changes in the bound value (e.g. page variable) affect the component, but the component itself can also affect the bound value (e.g. bound page variable changes when the user inputs something). You can only bind page/data/app variables to two-way properties.
Output values are "read-only" from the app perspective, and meant to reflect an internal state of the component, such as "Loading" for a data list component. This will be used more in Composite components v2 – read more below!
The new Conditional renderer component is now available to simplify situations where you want to render different things based on your app state.
This new flow function acts as a shorthand to change the value of current
in a repeated item’s logic context. This will only work if repeating data directly from an app/page/data variable, but not otherwise.
For example, you could be repeating a list where the items have a Timestamp property. To update that to the current time, you would simply use Set repeated item value, setting Timestamp to formula NOW()
.
When repeating an input field (or any component with a value/two-way type property), you can now directly bind e.g. current.price or any other formula to the repeated component’s property, with changes propagating back to the variable bound as the repeat source.
Note that this only works for direct app/page/data variable bindings, not through formulas yet.
Closes https://tracker.appgyver.com/bug-reports/p/input-field-binding-doesnt-work-for-nested-object
Custom fonts now work in Preview apps on all platforms. Closes https://tracker.appgyver.com/bug-reports/p/custom-font-not-showing-in-preview-app and https://tracker.appgyver.com/bug-reports/p/web-version-fonts-do-not-work
The following new formula functions are now available for use:
UNION
SYMMETRIC_DIFFERENCE
SPLICE
SOME
SET_ITEM
SET_ITEM_AT
REMOVE_ITEMS_AT
REMOVE_ITEM
LAST_ITEM
INTERSECTION
INSERT_ITEMS_AT
INSERT_ITEM_AT
FLATTEN
FIRST_ITEM
EXACTLY_ONE
EVERY
DIFFERENCE
Previously, if you set a list to repeat based on a formula like
SELECT(appVars.sourceData, CONTAINS(item.title, pageVars.searchString))
changes to pageVars.searchString
caused issues with "ghost" components appearing.
This is now fixed and works as expected. Closes https://tracker.appgyver.com/bug-reports/p/repeating-components-with-the-repeat-source-bind-to-a-formula-can-cause-ghost-co.
The new Recycler view (beta) component allows you to load and display almost arbitrarily large (thousands of items) lists fast. It works by only rendering a certain number of items on the screen at once, and when the user scrolls, rendering them just-in-time to give the appearance of a never-ending list.
A recycler view must have a single child component that is set to repeat itself. It also must have a height like Scroll view, either via flex rules or by setting a specific height property.
You cannot repeat the recycler view component itself.
The Take photo flow function has new Camera type property – set it to front
for selfie camera!
Fixed bug where Android standalone apps would hang HTTP requests indefinitely until user interacted with the screen
Passing undefined
as page parameter no longer transforms it to the text "undefined"
systemVars.dimensions.viewport
no longer becomes undefined when resizing browser window
Preview PDF flow function success output now triggers correctly
Disable scroll and Stretch to viewport height page properties now work properly in web runtime
Fixed Image component "Component tap" not working, closes https://tracker.appgyver.com/bug-reports/p/image-event-component-tap-not-working
Fixed various crashes from components and flow functions receiving wrong kinds of input properties/arguments
Translation variables now work properly in dropdown options
Fixed translation variables not working in composite components that are inside repeats
Fixed issue with camera closing when seeing a barcode, closes https://tracker.appgyver.com/bug-reports/p/camera-module-stops-upon-seeing-a-barcode
Fixed issue where repeating a Slider component caused erratic behaviour
Fixed minor issues with system variables on web
Fixed issue where Slider could not be disabled
Toast now works in web runtime, closes https://tracker.appgyver.com/bug-reports/p/toast-element-does-not-work-in-web-view
Accessing nested data variable/current properties now works via direct binding type, closes https://tracker.appgyver.com/bug-reports/p/accessing-nested-data-variablecurrent-properties-only-works-via-formula-not-the
Slider component fixed on web, closes https://tracker.appgyver.com/bug-reports/p/interactive-form-components-do-not-work-on-web
Flow functions like Take photo and Scan QR code can be opened on a modal page now, closes https://tracker.appgyver.com/bug-reports/p/if-page-is-opened-as-modal-flow-functions-like-take-photo-and-scan-qr-code-fail
Flow function output arguments are no longer available in incorrect outputs, closes https://tracker.appgyver.com/bug-reports/p/flow-function-output-arguments-are-available-in-all-outputs-erroneously
Open keyboard no longer has to be dismissed first for tap events on components to be registered, closes https://tracker.appgyver.com/bug-reports/p/if-keyboard-is-open-due-to-a-focused-input-field-taps-are-registered-only-after
Fixed bug with Receive event node Event source dropdown requiring two selections to set, closes https://tracker.appgyver.com/bug-reports/p/quirky-behavior-of-receive-event-node
Fixed crash with Preview app login on Android, closes https://tracker.appgyver.com/bug-reports/p/appgyver-app-on-android-crashes
Alert node output now triggers correctly on web, closes https://tracker.appgyver.com/bug-reports/p/flow-functions-after-an-alert-node-do-not-get-triggered-in-web-runtime
App no longer crashes if a page in the navigation menu is deleted in Composer, closes https://tracker.appgyver.com/bug-reports/p/preview-app-throws-error-page-when-deleting-a-page-that-was-in-the-navigation-st
WebView component's Visible property now works as expected, closes https://tracker.appgyver.com/bug-reports/p/webview-always-displays-even-when-visible-property-set-to-false
GIF images now work properly on Android, closes https://tracker.appgyver.com/bug-reports/p/gifs-not-working-in-image-block-on-android
Fixed an issue where formula editor did not handle dot notation accessors correctly, e.g. current.fields.Name
did not work but LOOKUP(current.fields, "Name")
did
Using number type values in Dropdown component's Option list property's value
no longer crashes the app (though text type values are still required to work correctly), closes https://tracker.appgyver.com/bug-reports/p/using-number-type-in-dropdown-values-crashes-the-appgyver-app and https://tracker.appgyver.com/bug-reports/p/formula-in-label-dropdown-list
Fixed bugs with Set clipboard content and Get clipboard content flow functions, https://tracker.appgyver.com/bug-reports/p/set-clipboard-produces-an-error-still-copies-to-clipboard-though
Fixed issue with Debugger getting console logs about Global Canvas missing UI that can crash the debugger, closes https://tracker.appgyver.com/bug-reports/p/debugger-gets-console-logs-about-global-canvas-missing-ui-that-can-crash-the-deb
Input field at the bottom of a scroll view now correctly scrolls on focus, closes https://tracker.appgyver.com/bug-reports/p/input-field-below-scrollview-does-not-scroll-correctly-on-focus
Fixed issue with navigation header bar not displayed when navigation menu is disabled, closes https://tracker.appgyver.com/bug-reports/p/navigation-header-bar-not-displayed-when-navitagion-menu-is-not-enabled
Fixed issue where debugger showed the "Connecting" spinner even though connection was established, closes https://tracker.appgyver.com/bug-reports/p/connection-indicator-spins-indefinitely-when-connecting-to-debugger-from-pixel-4 and https://tracker.appgyver.com/bug-reports/p/debugger-not-connecting
Fixed issues with Request notification permissions flow logic with https://tracker.appgyver.com/bug-reports/p/request-notification-permisison-logic-not-working-on-builds
Fixed crash issues on Preview app login with certain Android devices, closes https://tracker.appgyver.com/bug-reports/p/the-app-companion-crash-on-login
Fixed issues with certain images not showing on Android, closes https://tracker.appgyver.com/bug-reports/p/dynamic-image-displayed-in-web-preview-but-not-on-android
Fixed issue with Dropdown component tap event not working correctly, closes https://tracker.appgyver.com/bug-reports/p/dropdown-component-tap-event-not-working-correctly
Fixed issues with Android drop shadows, closes https://tracker.appgyver.com/bug-reports/p/large-image-list-item-breaking-on-android
If you are sure that you know enough how to use Composer Pro, you now can hide the tutorial bar at the bottom. Just open the "Community" tab at the top when editing an app, and check the new checkbox!
Fixed the UI issue when editing JavaScript logic functions where inputs with long labels could not be removed, as the remove icon disappeared.
These features are only available for the users accepted to the Beta program and they do require the latest beta version of the AppGyver app in order to work. These features might still change before becoming available to everyone.
🔒 When editing a component in isolation mode, you can add the following new events by using the "Receive event" in logic:
Component mounted
Component became visible
Component became hidden
🔒 Improvements to the different types of custom component properties: the Binding editor disables accidentally binding in a way that would be in conflict with component property binding types. For example, two-way or outbound properties cannot be bound to static values or formulas, as they are read-only.
Enabling the authentication for an app works again. Fixed the "Internal Server Error" occurring on the server.
Creating a new user account and resetting the forgotten password is now protected by reCAPTCHA for bots.
These features are only available for the users accepted to the Beta program and they do require the latest beta version of the AppGyver app in order to work. These features might still change before becoming available to everyone.
🔒 Recycler view component cannot itself be repeated any more, to avoid users mistakenly to repeat the container instead of its child component. You can still repeat the whole Recycler component by adding it e.g. to a repeated Container.
Prevented accidentally editing conflicting changes to build service settings while loading or saving
These features are not complete yet and they are only available to certain users, not even to all beta users. They might still change significantly.
🔒 Various fixes and improvements to the upcoming navigation editor
Display the type of the variable value when choosing a variable for a "Set app variable", "Set page variable", or "Set data variable" flow function
Fixed formula editor allowing to save formulas that have syntax errors in them
Fixed data variables, data resources and pages not sorted alphabetically in the binding editor
Fixed issue with debugger mass printing errors in certain situations. Closes https://tracker.appgyver.com/bug-reports/p/debugger-mass-printing-errors-for-empty-variables
These features are only available for the users accepted to the Beta program and they do require the latest beta version of the AppGyver app in order to work. These features might still change before becoming available to everyone.
🔒 Fixed the ability to bind to sensor variables
🔒 Fixed crashing issues with the advanced navigation editor
Variables are sorted by their name alphabetically in the binding editor
Accessing and setting variables has been disabled in component "Isolation mode" in order to encourage creating re-usable components that use properties and events to communicate with the outside world
Fixed naming inconsistencies of different value types in different parts of the UI
These features are only available for the users accepted to the Beta program and they do require the latest beta version of the AppGyver app in order to work. These features might still change before becoming available to everyone.
🔒 You can now build your apps for Android and iOS using the new 2.x series of the runtime version
🔒 Improvements to the "Conditional renderer" component user interface
🔒 Improved support for the "Recycler" component
🔒 Beta support for new formula functions: UNION
, SYMMETRIC_DIFFERENCE
, SPLICE
, SOME
, SET_ITEM
, SET_ITEM_AT
, REMOVE_ITEMS_AT
, REMOVE_ITEM
, LAST_ITEM
, INTERSECTION
, INSERT_ITEMS_AT
, INSERT_ITEM_AT
, FLATTEN
, FIRST_ITEM
, EXACTLY_ONE
, EVERY
, DIFFERENCE
These features are not complete yet and they are only available to certain users, not even to all beta users. They might still change significantly.
🔒 The new navigation editor has been improved to a release candidate version
Users that have been added to the new Beta program now see an option on "Community" tab for enabling Beta features in the app.
When repeating components you can now define a property name that uniquely identifies repeated items. This will be used in the future runtime updates to improve the performance of your app.
View components listed on "By me" and "Installed" tabs now preview the components based on how they would look like with your app's theme.
When viewing a single view component in Marketplace, it now shows a preview based on how they would look like with your app's theme
When using a formula in a style property (on "Styles" tab) its preview value now shows up on the view canvas properly. For example, if you bind "Font style" to a formula that results in 24, the text now has the correct size on the canvas.
These features are only available for the users accepted to the Beta program and they do require the latest beta version of the AppGyver app in order to work. These features might still change before becoming available to everyone.
🔒 New namespace repeatedInfo
in formulas providing meta information about the currently repeated items, e.g. the current index
🔒 New namespace root
in formulas providing access to the current root view component
🔒 Namespace self
available in other contexts than styles
🔒 System and sensor variables can be bound directly, without using formulas
🔒 Events in custom view components can have any number of values. These values can be defined when triggering an event using a "Trigger event" flow function. They are then available as "Output of another logic node" in logic flows after event nodes.
These features are not complete yet and they are only available to certain users, not even to all beta users. They might still change significantly.
🔒A test version of a new navigation editor
🔒A test version of a new "Conditional renderer" view component that can be used to easily show one of the defined components based on a single binding or formula
🔒Ability to set a special property "Test ID" for automated UI testing
Fixed the issue where REST API resource test stays in "Status: running" state after failing, instead of showing the error, for example when failing due to a CORS issue.
Full Build Service support for configuring push notifications on iOS also – see the push notification guide for more details
The User account page now has a self-serve Delete account button, which also removes all associated data from the AppGyver platform after a 14-day grace period
Error regarding excluding permissions in build service.
Fixed the issue where "Repeat as" was reset when "Repeat with" was edited
Fixed the "Output" tab causing Composer Pro to freeze completely for certain flow functions.
Fixed the certain event output values not being available for the following logic nodes
Fixed missing descriptions of flow function outputs (on the "Outputs" tab) when the output consisted list of objects.
Fixed a bug in Formula editor where part of the formula could disappear while typing.
Fixed Row component cells incorrectly claiming that "Background image" is a required property.
Fixed issues with editing "Font weight", "Letter spacing" and "Flex basis" style properties.
These features are not complete yet and they are only available to certain users. They might still change significantly.
🔒Events in custom view components can have any number of values. These values can be defined when triggering an event and are available as "Output of another logic node" in logic flows after event nodes.
🔒All view component properties can be marked as inbound, outbound, two-way, or private. These will be used in upcoming improvements.
Navigation menu disable now defaults an initial page.
Default launch images for iOS.
Automatic bundle-id shouldn't create invalid id's anymore.
Required permissions are now shown.
Required permissions can now be removed.
More width to iOS bundle editor.
Fix font weight selection not working.
This release adds preparations for upcoming new features. The experimental features are only available to certain users, but it also adds fixes available for everyone!
Minor improvements to the "Receive event" and "Trigger event" flow functions that make them easier to use in custom view components. Components isolated inside a view component can more easily trigger events for the "root" component, defined in the "Edit properties" dialog.
When editing a view component in isolation mode, in the "Edit properties" dialog, certain property names reserved for internal use have been disabled. These include id
, style
, and repeat
Fixed the bug in "Receive event" flow function where selecting an event was not saved, but the selection was removed when deselecting and selecting the node again.
Fixed the bug where "Page layout" component could be selected and then deleted, causing the page corrupt. This was possible immediately after adding a new page to the app.
These features are not complete yet and they are only available to certain users. They might still change significantly.
🔒 New namespace repeatedInfo
in formulas providing meta information about the currently repeated items, e.g. the current index
🔒 New namespace root
in formulas providing access to the current root view component
🔒 Namespace self
available in other contexts than styles
🔒 View component events may define type of the value they provide
🔒 Event value can be set in "Trigger event" flow function
Fixed the bug with "Update record" flow function causing bindings disappear. Closes https://tracker.appgyver.com/admin/board/bug-reports/p/parameters-in-rest-api-update-record-function-dropped
This release focuses on fixing issues found by our community.
Fixed clicking the "X" in the binding editor dialog which not work in certain cases
Fixed an issue where the new binding editor dialog was missing scroll bar when the window height is small. Closes https://tracker.appgyver.com/admin/board/bug-reports/p/missing-scroll-on-editing-binding
Fixed an issue in the formula editor where the outputs of the same flow function output were offered multiple times, e.g. "Take photo", "Take photo 2", "Take photo 3", etc.
Fixed an issue where advanced flex-basis
style incorrectly showed that the current value is the default value auto
instead of 0
.
Removed invalid categories from the binding editor dialog when selecting a page/app variable for a "Set page/app variable" flow function
Fixed a bug in JavaScript editor where the user interface allowed the whole output to be changed from "Object" to "Text", which does not make sense. Removed the incorrectly shown type selector from this context. The individual output properties can still be set to any type!
Added tooltips to the binding fields and buttons that describe that kind of binding is currently selected
Fixed blank component names when selecting a component ID for a binding, for example, when using a "Focus input" flow function
When editing a data variable of a collection of AppGyver Cloud Storage data records, the UI won't any more show "Filters" or "Sorting criteria" being "Required".
Fixed the issue that prevented properties of repeated components being bound to.
Composer Pro has not supported Edge browser older than version 79, but instead of showing a message, Composer Pro appeared crashed. Old Edge browsers (before version 79) are now correctly blocked.
This major release brings with it updates to the Build Service and a complete overhaul of how component property and flow function input bindings are managed.
See a video overview of the new binding editor below!
Complete overhaul of the binding editor.
Properties panel user interface is cleaned up for both components and flow function node
Unnecessary titles removed.
Action buttons such as "Show in marketplace" are now icons.
The Initial URL and URL scheme system variables are now available.
Set page/app/data variable, Open page and data-related flow functions no longer allow the target variable/page/data resource to be set dynamically, to ensure the correct schema is always presented by Composer UI.
Numerous minor UI fixes and stability/speed improvements around Composer.
Data-related flow functions now instruct the user to configure data resources via the data configurator, if no data resources exist in the app.
Set app/page/data variable flow functions show a friendly message when no variables have been configured in the app instead of appearing broken.
Editing object/array schemas no longer cause bindings to be emptied in some cases.
Certain complex formula functions no longer crash Composer.
When creating nested repeats, Composer now properly enforces a unique name to be given to the inner repeat context.
Isolation mode no longer stays open across page changes.
During multi-user editing, incoming changes from another user no longer cause an active formula edit to be discarded.
During multi-user editing, incoming changes from other users are now detected faster.
ADD_DURATION and NOW formula functions correctly return a date-time text now.
Open page formula function now detects Parameters property's schema from the target page.
New data variables now have correct default names when multiple data variables for the same resource have been added and their names changed
Previously, adding a data variable for Employees resource, renaming it to something else and adding a new data variable for Employees resource caused the new variable to be named Employees2 even though Employees was available.
Data configurator
REST API direct integration Set schema from response button now correctly removes deleted fields from the example value used by the binding editor.
If a route is not defined for a REST API direct integration type data resource, you are now prevented from using a data variable of that type (e.g. if Get collection route is not defined, Collection of records type data variable is not available).
Enabling/disabling REST API methods now correctly triggers the Save button to show up.
For AppGyver Cloud Storage resources, show the system ID field as a non-removable part of the schema.
Build Service
Web builds are now cachebusted properly, so your changes take effect immediately after a new build is completed (though the auto-deploy takes a few moments more after the build is marked successful in Build Service).
Setting Android screen orientation and removing it doesn't break your builds anymore.
You can now see build history properly for each platform (previously, history showed latest 5 builds across all platforms).
Google Maps API key can now be defined when using the Embedded map view component (previously, the API key was left out of the build and the map rendered empty in standalone builds).
You can no longer input dots for a web app subdomain (previously, setting the subdomain to e.g. my.app.appgyverapp.com
caused builds to fail).
Added new launch screen configuration for iOS builds. This is needed for a successful deployment to AppStore.
Fixed the bug in style color picker when working in HSL color mode that added additional %
and other characters to color component fields.
Fixed the issue that caused standalone web builds to remain in "Queued" state after succeeding.
Fixed the cache invalidation issue that caused standalone web builds to remain in their older version after building a new version.
Allow choosing "Custom schema" for "Get record (GET)" and "Get collection (GET)" methods of "REST API direct integration" data resources. By default, for new resources, both methods are linked to use the same schema ("Use GET schema" option).
Fixed the issue with the schema of "Get record (GET)" method of "REST API direct integration" data resources. The type of related data variables are also fixed. Closes https://tracker.appgyver.com/bug-reports/p/rest-api-based-data-variables-require-both-get-collection-and-get-record-routes
Data resources can be now cloned via the three-dot action button at the right side of the data resource in the data resource configurator main list view.
Multi-window editing support (beta). When editing the same project in two separate browser windows, changes are merged every 15 seconds. If conflicts arise, conflicting changes are discarded.
Support for custom URL schemes in iOS and Android standalone apps built with the Build Service, allowing you to open your app from another app via the defined URL scheme, e.g. myapp://
.
Support for default supported orientations in iOS and Android standalone apps built with the Build Service.
Support for custom permission usage strings for iOS in Build Service, allowing you to change the message that is shown to the user.
A valid package/bundle ID is automatically generated for new apps, so that less configuration is required in Build Service.
Route names for REST API direct integration type data resources in the data configurator now reflect their functionality better.
Fixed issue where bindings disappeared after deselecting a component. Closes https://tracker.appgyver.com/bug-reports/p/open-new-page-parameter-disappears-when-using-currently-repeated-item
Fixed issue where changes to composite component properties required a browser refresh to take effect on the view canvas.
After adding a component, you no longer have to click Revert twice to undo changes.
Fixed slightly broken text styles in the Style panel when a composite component is selected.
Improved info texts in the properties panel when a data variable is selected.
Multiple fixes to the data resource configurator:
Set schema from response button fixed for Create record route
Switching between REST API routes when the Test tab is active no longer breaks the test object.
Switching from the Test tab to Schema/Configuration tabs and back no longer empties the test object.
When a new non-static query parameter/URL substitution/header is added, it is now directly available in the data configurator.
New REST API direct integration data resource Get collection route no longer has an ID property in the schema by default.
When Value type for Header is set as Number, Value placeholder correctly says "Type a number"
Project name now correctly updates in the app listing after changing and saving it in the interface builder; fixes https://tracker.appgyver.com/bug-reports/p/changing-project-name-doesnt-update-it-in-the-app-listing
Fixed an issue where certain page configurations caused Composer UI to become unresponsive after changing from one page to the erroring page.
Rollback feature: You can now roll back up to last 50 saves when there are no changes in your app
Reverting unsaved changes is now faster
The Updated timestamp in the app listing now correctly reflects the last time the app was saved
Added validation for the subdomain name field in web build configuration in Build Service
Fixed certain previews of UI components not showing correctly in Marketplace and on the left-side menu
Fixed styles and broken links in automated e-mail messages sent by Build Service
Added more input field validations and streamlined usage of Build Service
29x29 px iOS icon upload to Build Service constantly failed https://appgyver.canny.io/admin/board/bug-reports/p/ios-spotlight-and-settings-icons-wont-upload
Fixed issue with Releases page not loading correctly on first load
Majorly improved Composer Pro performance in regards to saving changes
Majorly improved speed of adding pages to app
Changing from a static array binding to a formula caused saving the application to fail. Closes https://tracker.appgyver.com/bug-reports/p/switching-a-static-array-binding-to-a-formula-causes-failed-to-save-application
Enabled skip
parameter for AppGyver Cloud Database to be used in pagination of the data. Closes https://tracker.appgyver.com/feature-requests/p/enable-skip-parameter-for-appgyver-cloud-database-data-variable
Fixed formula editor text coloring for some default keywords that got highlighted incorrectly
KEYS formula was fixed to only support Object-type parameters, like it was intended
Performance improvement to complex nested formula functions in Composer
Fixed JavaScript editor in Safari browser. Closes https://tracker.appgyver.com/bug-reports/p/javascript-node-editor-is-broken-on-safari
Changed the Build Service related texts in "Launch" section to make them more understandable for first time users.
Fixed an issue where newly created app could not be opened in Composer: https://forums.appgyver.com/t/project-won-t-open-in-composer/325
Fixed an issue where an existing app could not be opened in Composer because of a crashing error: https://tracker.appgyver.com/bug-reports/p/crash-on-chrome-windows-lost-all-work
Fixed an issue where opening the Plugins tab in Build Service without saving changes on another tab first caused an error.
Fixed a problem with horizontal scrolling when the logic canvas size was increased
"Auth" section got stuck on loading dependencies after reopening it when authentication had been added to the app
Removing the properties of objects nested in arrays within Data resources did not work
App delete button did not work
Fixed italic and bold font appearance Composer Pro
Improved the inline documentation of formula functions in the formula editor
Onboarding videos are now opened in a separate tab for convenience
Composer Pro will warn users who try to access it on devices (e.g. phones and tablets) that are currently not supported for use in the app builder.
When installing something from the marketplace that has dependencies, install those dependencies as well
Improved marketplace usability
If the properties of a variable were changed, Set Variable flow functions broke silently by emptying their fields
Fixed problem with the UI jumping when clicking outside of an opened logic canvas
The autofill for formulas has been improved to recognise lowercase
==
and ===
operators in formulas have been changed to work in a more intuitive way. ==
is the same as IS_EQUAL formula, and ===
is the same as IS_SAME formula.
Tooltips added for the Composer Pro canvas quick action icons
Now when adding a navigation item, if no page is defined for it, the default value is the last non-global page. This prevents a crash in the Preview app after save in Composer Pro.
Added more explanations and documentation to the Variables-side in Composer Pro
Typing REPEAT
into formula editor caused a crash
Marketplace previews of components failed on some older versions of Firefox
Added new "Data" level to the onboarding widget
New view components available in the Component Marketplace
Dynamic SVG
Lottie animation
D3.js charts
Map marker container
Composite components can now define custom events, which can be triggered from within the component and which are automatically added to the component instance's logic canvas
Added helpful info texts to the variables section
New app creation has been made faster
Updated user interface for marketplace
Debugger link is more visible
Cannot access Composer on mobile devices anymore; previously Composer opened but was unusable
Minor bugfixes when using data variables
When a component is set to repeat based on data, the "Currently repeated property value" binding type is now immediately available; previously you had to deselect and reselect the component first
Setting the initial value of number properties to 0 is now possible
Editing only the schema of a data resource now both triggers a save and is saved properly
Global canvas and Empty page templates are no longer visible in the marketplace
New onboarding widget that takes you over the fundamental concepts in Composer
Links to AppGyver Preview apps for Android TV and MacOS are now available under the Launch section
Composite components now have a separate inner logic canvas available in isolation mode, giving a clear distinction between logic attached to a component instance (e.g. list item on my page) and internal logic of the composite component (e.g. running a flow function to select a date)
Composite component instances have their own set of styles such as width, height, margin and so on, separate from the component template
You can now configure styles for the composite component root container in isolation mode
You can now dismiss "Application saved" and other notifications by clicking anywhere on the notification
Components can now be dropped anywhere on the view canvas instead of just a smaller part at the top
The blue hover highlight shows up in the right place when dragging components into repeated containers
Marketplace user interface has been overhauled for better usability and discoverability
Binding array-type data variables to custom JavaScript function box inputs did not work
Data view did not scroll if there were a lot of fields
Changing custom JavaScript node content did not cause save button to appear
Fixed some bugs with input properties whose schema included multiple types
Pressing esc while editing a flow function no longer closes the editor
View components and flow functions can now be published to an AppGyver review queue; if they are accepted, they'll be made public in the Marketplace
POST requests to REST API when no request body is expected is now possible
New file service and associated flow functions to allow uploading and downloading files to/from an AppGyver-hosted file storage, see https://docs.appgyver.com/tutorials/uploading-files for a tutorial
JavaScript node code editor did not open and resize correctly in relation to the browser window size
Switching between pages in Composer has been substantially optimized and is faster now
Handling flow functions during saving has been optimized in Composer; this speeds up saving especially for apps that have a lot of flow functions
Navigation editor for navigation bar and tabs etc has been moved under the Navigation section in the global toolbar
This release is recommended to use with version 1.3.1 of the AppGyver companion app.
Fixed problem with debugger crashing occasionally on open
Fixed problem with new users not being able to make their own component sets
Fixed bug where adding a default value to an existing variable caused Composer to crash
Fixed bug where adding a new theme variable caused Composer to crash
Added option to add and edit preview values of app and page variables to the formula editor
In formulas, outputs of flow functions are displayed with informative names instead of just IDs
Improved layout for community-tab
Added preview for AppGyver Auth pages in the pages dropdown
Bindings in formulas don’t get reset if the formats are not compatible
Improve publishing of components, pages and data sets
Default value of `boolean`-type formulas is now `true`
Improved “Trigger event” flow function to only show relevant options
This release is recommended to use with version 1.3.1 of the AppGyver companion app.
New discovery UI for the formula function editor
System variable releaseEnv
is now usable in formulas
Creating new flow functions automatically takes the inputs and outputs of the flow function(s) in them
JavaScript flow function outputs can no longer be deleted accidentally by erasing the output number
JavaScript flow function editor no longer has bug that suggested formula functions
Searching for “not installed” for UI components was fixed.
Formulas now have descriptive names for parameters
When data is added to a page, it will have preconfigured a loop to refresh the data every 5 seconds
This release requires version 1.2.0 of the AppGyver companion app.
The theme editor allows you to change your app's overall look and feel by just editing a few variables like font family and color scheme, while also enabling you to drill down for further customization.
You can read more in the Theme editor guide.
Closes https://tracker.appgyver.com/feature-requests/p/theme-editor.
Build stand-alone iOS and Android binaries of your project; available under the Launch menu in the global toolbar.
Build and deploy your project as a stand-alone web app, hosted by AppGyver.
Available via the Theme menu in the global toolbar, upload custom fonts for use with your app.
Canvas size and device target selector now emulates system variables for advanced layouting
Complete UI overhaul for the data configurator in the global toolbar
Core flow functions now have proper categories and icons in the flow function library panel
Many new flow functions released – see the flow functions reference for a full list
Allow cloning components via the new component toolbar
Added support for the text transform property
Image assets can be uploaded without having to save inbetween
foo.bar.baz
in formulas no longer errors if foo
is undefined
New pages can no longer be created if there are unsaved changes
All Open Sans font weights are now available in new apps
Fixed multiple issues when using Composer with Safari
Numerous other bugfixes around the platform
Core view components have been updated to utilize theme variables
Core flow functions have been updated to new versions
Deleting view components now happens via a new component toolbar that appears when the component is selected
Logic canvas is now hidden by default when a component has no custom logic attached to it
Data references are now called data variables everywhere
Isolation mode overhaul
Editing and publishing composite view components and flow functions in Isolation mode has been upgraded to be more consistent in many ways in both functionality and UI
Publishing new components and flow functions to the Marketplace is now done from the library panel in the left sidebar
The properties panel in the right sidebar now has an info icon next to each property to show more information
“Function” flow function has been renamed to “JavaScript”
Marketplace now displays the share token for every published item
New revamped launch menu, with pre-release version of the new data configurator
Saving changes made to an app is now faster
If the app has been edited in another tab, show a warning
Minor bugfixes
Many small tweaks to the UI all around
New flow functions for interacting with data resources in the backend
Support for AppGyver DB, External and Local resource types with new Data section in the top toolbar
Multi-language support
App list load times in Composer and Preview app significantly improved
App load time in Preview app significantly improved
Formula function namespaces with date/time type refactored