Skip to content

Dev > Main for v2.4.6 #1176

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 335 commits into from
Sep 21, 2024
Merged

Dev > Main for v2.4.6 #1176

merged 335 commits into from
Sep 21, 2024

Conversation

FalkWolsky
Copy link
Contributor

Changes

After a fruitful summer full of hard work, we are pleased now to present v2.4.6 of Lowcoder.
Next to many bugfixes and improvements we have done a long list of fantastic new features!

New Translations

Automatic updated (completed) existing languages - based on EN as master file.
We have now Chinese, English, Italian, Spanish, Portuguese, German, Russian. More languages will follow.

Table with up to 3 Summary rows.

One can now add up to 3 empty rows, that are unconnected to the data source and fill it with summary calculations or
status / progress displays for example. We decided to offer up to 3 for “SUM”, “TAX” and “TOTAL” for example. Data
Calculations can be done for each column based on the bound table data object for example. But also other queries
could get used.

Table Edit mode with single click and tab-key navigation

Till now to edit data in a table was truly a bad experience. Every value in a column needed to be double clicked to
“activate” an Edit-Mode. Now we lift that, so users can save a lot of time for fast data edit in tables. Based on tab they
can skip trough the columns and rows and auto-activate the edit mode. Also the App Creator can select between “Single
Click” or “Double click” to activate the Edit Mode in the Table Cells.

New Record Edit Rows

The Current table only supported the editing of existing Rows (so you can UPDATE). Now the App Creator can activate a
new row type which is always displayed at the end of the table to enable users to enter new records. These data is
accessible as table.toInsertRows and by this the App Creator can bind this data to an different Data Query (INSERT for
example)

Timezone for Date, Date-Range, Time, Time-Range.

The App Editor can now set a timezone for these components as default or let it up to the User to select not only date
and time, but also the corresponding timezone. time.timeZone will give then a JSOPN object containing Information
about the user-selected Timezone and in the time.formattedValue the timezone is accordingly named.

Calendar Update with Tab-Modal

More fine graded control for the Event Data Entry at the calendar. Also Colors now also for “past events”, just with a
small “grey layer”, so it is visually to see that these events are in the past.

Kanban Component (EXPERIMENTAL - not yet for productive use)

The Kanban Component is in EXPERIMENTAL State - and only meant as preview. However, it demonstrates the abilities
by the possibility to place Lowcoder Components inside the Kanban Card Display - which opens up endless possibilities
how to use the Kanban Component.

Changed the whole Remote Comps Repository to a “private hosted” Repository mechanism.

Now not only components like the Calendar are hosted directly with the Lowcoder installation and therefore can get loaded
much faster - but also an App Creator and his company can operate and use a “private NPM” Repository for
their individual Component Plugins - which also helps a lot for Component Plugin Development.

Added Supabase SDK natively,

so App Creators can now use the Supabase Client SDK fully in their Apps.

Added better Scrollbar Control

(dynamic or static switched) to show/hide Scrollbars (vertical / horizontal
independently) for many Components like Table, Container…

Concurrent App Editing Display

If a User A edit an Lowcoder app, and another User B also opens the very same app to edit, both would end up in
concurrent overwriting of the app Edit states - as Lowcoder as for now only was made for a single-user as Editor. In our
first attempt to support better multi-user (Editor) experience, we introduce with this PR a optimistic locking strategy. We
think it is not a true way to go to try to get a real "multi-user interactivity" for app editing to work. It is not really the case
that 2 people same time want collaborative want to edit a single app. Still it can happen that by accident and as rather
rare case 2 users open an app independently in the same time. In this PR we introduce a display for "User B" to get a
notice, that a "User A" is editing the app. After a time window of 3 minutes of inactivity of User A - the lock will be
removed and User B can go on to edit the app.

App Re-Rendering minimized

We invested (and will invest further) time to optimise and especially to speed up the App rendering, so the overall
experience will be faster for the App User.

Controllable Waiting Indicators

We unified the various waiting indicator types to now only show “Skeletons” for all components. This helps to “calm” the
visual impression of App Loading state. By the Themes, we added the possibility to generally activate or deactivate the
Loading Display for “App Loading” and “Data Query Loading”.

  • Fixed SMTP Server issue (to send Password Reset eMails)
  • Enabled the App Title (App Metadata Settings) to be named in the “Page” HTML title tag, so it also shows as
    page title in Browser Tabs
  • Fixed the issue, that users could not search in the Extensions / Module section for their Modules by name
  • Added an Event “open” to the Modal, so App Creator can use now Event Handlers as soon as the Modal is
    opened by a User
  • Reduced Branding in the eMail Template for Password Reset. Now it is fully Neutral.
  • Fixed “Blank Screen at Startup” issue.
  • Added a User-Logout Function, so by a JavaScript Query for example the App Creator can help the
    “currentUser” to logout himself. utils.logoutUser()
  • Option to Show/Hide save/cancel button in table toolbar
  • Added customizable HTTP headers for OpenAPI based Data Queries

Types of changes

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation Update (if none of the other choices apply)

Checklist

  • Lint and unit tests pass locally with my changes
  • I have added tests that prove my fix is effective or that my feature works
  • I have added necessary documentation (if appropriate)
  • Any dependent changes have been merged and published in downstream modules
FalkWolsky and others added 30 commits August 12, 2024 14:28
Fix 500 issue when cookie expires
…pmRegistries

[WIP] Enable private npm registries
raheeliftikhar5 and others added 27 commits September 17, 2024 21:19
get editingUserId, lastEditedAt on get endpoint
fix js query to mark ready for itself as dependency
set editingUserId, lastEditedAt on put endpoint, get editingUserId, lastEditedAt on get endpoint
fix overwriting issue on lastEditedAt
Copy link

netlify bot commented Sep 21, 2024

Deploy Preview for lowcoder-test canceled.

Name Link
🔨 Latest commit bcecd5c
🔍 Latest deploy log https://app.netlify.com/sites/lowcoder-test/deploys/66eea6ce84edb000071a93b7
Copy link

netlify bot commented Sep 21, 2024

Deploy Preview for lowcoder-cloud ready!

Name Link
🔨 Latest commit bcecd5c
🔍 Latest deploy log https://app.netlify.com/sites/lowcoder-cloud/deploys/66eea6cecc677900098d566d
😎 Deploy Preview https://deploy-preview-1176--lowcoder-cloud.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@FalkWolsky FalkWolsky merged commit 54cec7a into main Sep 21, 2024
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
10 participants