Skip to content

Rubber Dust

Compare
Choose a tag to compare
@FalkWolsky FalkWolsky released this 21 Sep 12:15
· 368 commits to main since this release
ed8ad4f

Lowcoder v2.4.6

After a fruitful summer full of hard work, we are pleased to present v2.4.6 of Lowcoder. Alongside many bug fixes and improvements, we have introduced a long list of fantastic new features!

New Features

New & Updated Translations

  • Language Updates: Existing languages are updated based on English as the master file - by Deepl APIs help.
  • New Languages Added: We now support Chinese, English, Italian, Spanish, Portuguese, German, and Russian. More languages will follow. The new Languages Italian, Spanish and Russian are fully auto-generated. It would be amazing if you can help us to correct the flaws, so the translation will increase it it's quality! Soon we will prepare a small App, that can help to achieve this for you.

Table Enhancements

  • Summary Rows in Tables: You can now add up to three empty rows that are unconnected to the data source and fill them with summary calculations or status/progress displays (e.g., "SUM", "TAX", "TOTAL"). Data calculations can be performed for each column based on the bound table data object or other queries. (#1114)
  • Improved Table Editing Experience: Editing data in tables is now more efficient. Users can activate edit mode with a single click or double-click (configurable by the App Creator) and navigate through cells using the tab key, which auto-activates edit mode. (#1114)
  • New Record Edit Rows: App Creators can activate a new row type displayed at the end of the table to enable users to enter new records. The data is accessible as table.toInsertRows and can be bound to a different Data Query (e.g., INSERT). (#1114)

Timezone Support for Date and Time Components

  • Timezone Selection: The App Editor can set a default timezone for Date, Date-Range, Time, and Time-Range components or allow users to select the corresponding timezone. The time.timeZone provides a JSON object with information about the user-selected timezone, and time.formattedValue includes the timezone name accordingly. (#1144, #1151, #1162)

Calendar Updates with Tab-Modal

  • Enhanced Event Data Entry: Provides more fine-grained control for event data entry in the calendar.
  • Improved Visuals for Past Events: Colors are now also applied to past events with a slight grey layer, making it visually clear that these events are in the past.

Kanban Component (Experimental)

  • New Kanban Component: Introduced an experimental Kanban component, demonstrating the ability to place Lowcoder components inside the Kanban card display, opening up endless possibilities for its use.

Supabase SDK Integration

  • Native Supabase SDK Support: App Creators can now fully use the Supabase Client SDK in their apps.

Scrollbar Control

  • Enhanced Scrollbar Options: Added better scrollbar control (dynamic or static switch) to show/hide vertical and horizontal scrollbars independently for many components like Table and Container. (#1080)

Customizable HTTP Headers for OpenAPI Data Queries

  • HTTP Header Customization: Added the ability to customize HTTP headers for OpenAPI-based Data Queries.

User Logout Function

  • Programmatic User Logout: Added a user logout function (utils.logoutUser()), allowing App Creators to help the currentUser log out via a JavaScript Query.

Modal Component Enhancement

  • 'Open' Event for Modals: Added an 'open' event to the Modal component, so App Creators can now use event handlers when the Modal is opened by a user. (#1139)

FirebirdSQL Data Source

  • New Data Source Support: Added support for FirebirdSQL as a data source. (#1136, #1140)

Private NPM Registry Support

  • Private Component Repositories: Changed the Remote Components Repository mechanism to support private hosted repositories. App Creators and companies can now operate and use a private NPM repository for their individual component plugins, which also aids in component plugin development. (#1061)

Concurrent App Editing Display

  • Optimistic Locking Strategy: Introduced a display to notify when another user is editing the app. If User A is editing an app and User B opens the same app, User B will receive a notice that User A is editing. After 3 minutes of inactivity from User A, the lock will be removed, and User B can proceed to edit the app. (#1113, #1163)

Improvements

App Rendering Optimization

  • Minimized Re-rendering: Invested time to optimize and speed up app rendering, enhancing the overall experience for App Users. (#1147, #1159)

Unified Waiting Indicators

  • Controllable Loading Indicators: Unified various waiting indicator types to now only show skeletons for all components. This helps to calm the visual impression of app loading states. Added the possibility to generally activate or deactivate the loading display for "App Loading" and "Data Query Loading" via Themes. (#1146)

Improved SMTP Server Support

  • Fixed SMTP Server Issues: Resolved issues with the SMTP server to send password reset emails. (#1171)

Page Title Customization

  • App Title in HTML Title Tag: Enabled the App Title (from App Metadata Settings) to be displayed in the HTML title tag, so it shows as the page title in browser tabs. (#1158, #1161)

Extension/Module Search

  • Module Search Enhancement: Fixed the issue where users could not search in the Extensions/Module section for their modules by name. (#1154)

Reduced Branding in Password Reset Emails

  • Neutral Email Templates: Reduced branding in the email template for password reset. Now it is fully neutral.

Option to Show/Hide Save/Cancel Buttons in Table Toolbar

  • Toolbar Customization: Added an option to show or hide save/cancel buttons in the table toolbar. Exposed functions within the table to cancel changes. (#1129)

Dynamic/Conditional Styles

  • Enhanced Styling Options: Allowed dynamic and conditional styles, and refactored logic for applying themes on each component. (#1105)

Upgrade Dependencies

  • Ant Design Upgrade: Upgraded Ant Design to version 5.20.0. (#1102)

Scrollbar Control

  • Show/Hide Scrollbars: Added a switch to show or hide scrollbars (vertical/horizontal independently) for components like Table and Container. (#1080)

Bug Fixes

  • Fixed 'Blank Screen at Startup' Issue: Resolved the issue causing a blank screen at startup. (#1157)
  • Fixed Cookie Expiration Error: Fixed 500 error when cookies expire. (#1079)
  • Allow MongoDB SSL and SRV Configurations: Enabled SSL and SRV configurations for MongoDB data sources. (#1107)
  • Refresh Token Issues: Fixed issues related to refresh tokens. (#1150, #1153)
  • SMTP Class Not Found Error: Fixed SMTP issue where class not found error occurred. (#1171)
  • LocalStorage Issue: Resolved the issue with LocalStorage. (#1157)
  • Fixed Error When dsl == null: Resolved error that occurred when dsl is null. (#1166)

Other Changes

  • Docker Updates: Made updates to Docker configurations. (#1138)
  • Helm Kubernetes Autoscaling API Update: Updated Helm Kubernetes autoscaling API version to v2. (#1165)
  • Chore: Deploy to Elestio Button Updated: Updated the deploy to Elestio button. (#1118)

New Contributors

We welcome our new contributors who have made their first contributions in this release: