Some fixes and minor new features
v7.4.1
Code commits since last release.
📌 Highlights
uibuilder client library
-
New variable
uibuilder.get('currentTransport')Will either be
websocketorpolling. This is set when the connection is established and may change if the connection is lost and re-established. Should generally bewebsocketafter a few ms. If still set topolling, then either there are network issues or there is a poorly configured proxy server in the way. If you are using a proxy server, it should be configured to allow WebSocket connections. Even withpolling, the connection should still work but it will be slower and less efficient.A console error message will be logged if the transport is not
websocketafter a few seconds. -
When using the custom HTML attribute
uib-topic:msg.datasetis now processed along withmsg.attributesandmsg.payload.msg.datasetmust be an object, each key becomes adata-*attribute on the element.
uib-cache node
- FIXED Setting the "# messages" to zero should have retained unlimited messages for each "Cache by" property. It wasn't working correctly. Now fixed. Many thanks to Manjunath Satyamurthy in the Node-RED Forum for reporting this issue.
uib-brand.css front-end styles
- Amended
.status-gridclass to use 3 variables:--status-grid-min,--status-grid-max, and--status-grid-gap. This allows the grid to be more flexible and responsive. The default values have not changed but you can now override them in your own CSS.
Documentation
- Creating UIs:
- Grid Layouts - Now a more complete article on how to create responsive, content-heavy grid layouts.
- CSS Best Practice - Some simple guidelines and good practices for creating flexible layouts using CSS.
- Charts - A new article on how to create charts using the uibuilder client library. This is a work in progress and will be updated as more information becomes available.
- Form Handling - A new article on how to handle user input using forms and other input elements. This is a work in progress and will be updated as more information becomes available.
- Creating Web Apps - How to create data-driven web applications using UIBUILDER. Article updated.
- Several other articles are still awaiting content. Lists, Maps, Tables, Dashboard Layouts, Cards, Articles.
Node-RED Admin endpoints
<nrAdminURL>/uibuilder/uibindex?type=diagnosticsis a new variation on theuibindexendpoint. It returns diagnostics information in JSON format that shows uibuilder detailed diagnostic information. You must have an active Node-RED Editor session to be able to access this endpoint.
Warning
Please take care with the use of this endpoint as it contains sensitive information about your uibuilder instances.
Server library: admin-api-v2.js
- FIX
/uibindexroute incorrectly assumed the presence ofreq.headers.referer. - NEW
/uibindex?type=diagnosticsadded. Returns diagnostics information in JSON format that shows uibuilder detailed diagnostic information. You must have an active Node-RED Editor session to be able to access this endpoint. - Switched from passing the uib master variable to use the
uibGlobalConfigmodule. This is a step towards a more modular codebase.
Devlopment processes
- Rebuilt the gump build process for the front end client library. Now simplified and more robust.