Skip to content

Commit

Permalink
Updates
Browse files Browse the repository at this point in the history
  • Loading branch information
TotallyInformation committed Jan 1, 2024
1 parent 7f37ba2 commit 62be202
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 39 deletions.
53 changes: 15 additions & 38 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,43 +8,15 @@ Please see the documentation for archived changelogs - a new archive is produced

## Issues

* uibuilder node - Issues if user deploys without entering a url

To reproduce: [ref](https://discourse.nodered.org/t/uibuilder-new-release-v6-7-new-front-end-router-improvements-to-uib-html-uib-save-and-more/83106/4)

Pull a uibuilder node in a flow.
Press Deploy.
The editor complains that the node just dropped isn't configured correctly. Deploy anyway.
Open the property editor of the uibuilder node, enter a valid URL ( like uibtest), close the property pane with Done.
First observation: The uibuilder node still shows the red triangle - despite correctly configured now.
Press Deploy.
The editor complains that the node still isn't configured correctly. Deploy anyway.
Second observation: The uibuilder node still shows the red triangle - which is definitely unexpected now. Node status displays "Node Initialised" @ blue.

Looks like it's validateVersion that triggers this red triangle.. [ref](https://discourse.nodered.org/t/uibuilder-new-release-v6-7-new-front-end-router-improvements-to-uib-html-uib-save-and-more/83106/7?u=totallyinformation)

## To Do

* Examples
* update the remote-commands example
* Add a "FE Router Test" example
* Add new low-code example
* Add example save current page to file

* uibuilder client
* Add `formateDate` standard utility fn. [ref](https://discourse.nodered.org/t/format-date-at-yyyydd-hh-mm-ss/83130/12?u=totallyinformation)
* Add uibuilder.tag()
* Add client msg filter for URL Hash.

Docs
* Update docs for ctrl msgs and msg._uib return data to say that anything set via the socket.io auth can only update when the client reconnects.
* document clientTimeDifference
None.

------------

## [Unreleased](https://github.com/TotallyInformation/node-red-contrib-uibuilder/compare/v6.7.0...main)
## [Unreleased](https://github.com/TotallyInformation/node-red-contrib-uibuilder/compare/v6.8.0...main)

Nothing currently.

<!-- Nothing currently. -->
## [v6.8.0](https://github.com/TotallyInformation/node-red-contrib-uibuilder/compare/v6.7.0...v6.8.0)

### 📌 Highlights

Expand Down Expand Up @@ -79,27 +51,31 @@ Docs
* Front-end commands issued from Node-RED can now take a `quiet` option set to `true` to prevent the return message. e.g. `{"_uib": {"command":"navigate","prop":"#newroute","quiet":true}}`
* Front-end developers now have full access to the `ui.js` library via the `$ui` global.

### `uib-cache`
### `uibuilder` node

* **FIXED** Previously, if an editor deployed a uibuilder node with an invalid URL, the node configuration & setup still happened which lead to odd results. Now a missing or invalid URL results in a logged error and the node is not configured. [ref](https://discourse.nodered.org/t/uibuilder-new-release-v6-7-new-front-end-router-improvements-to-uib-html-uib-save-and-more/83106/4)

### `uib-cache` node

* **FIXED** - bug introduced by last version's correction of `connections` count meant that "Only replay cache when client is really new" option resulted in the cache never being sent.
* Re-worked node's html into latest format with JS in separate resources file.

### `uib-html`
### `uib-html` node

* Downgrade `jsdom` version to 21.* as that is the last version that supports Node.js v14.

### `uib-save`
### `uib-save` node

* **FIXED** - usePageName logic.
* **FIXED** - import - initial deployment does not connect to node - need to clear the entry & mark as invalid. Also, no url = invalid
* URL (uibuilder instance) drop-down list is now sorted
* On copy/paste or import, link to uibuilder node is now cleared.

### `uib-tag`
### `uib-tag` node

* **FIXED** - Allow blanks in some typed input fields.

### `uib-update`
### `uib-update` node

* **FIXED** - Allow blanks in some typed input fields.

Expand Down Expand Up @@ -180,6 +156,7 @@ Docs

* Re-organised & renamed examples now there are more of them.
* **NEW** - "Text Update - Different Methods" example
* **NEW** - "FE Router Test" example

### Documentation

Expand Down
10 changes: 9 additions & 1 deletion docs/roadmap/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: uibuilder Roadmap
description: |
This page outlines the future direction of uibuilder. Including specific things that will almost certainly happen as well as more speculative ideas.
created: 2022-02-01 11:15:27
updated: 2023-12-31 15:17:45
updated: 2024-01-01 13:59:16
---

Is there something in this list you would like to see prioritised? Is there something you could help with? Please get in touch via the [Node-RED forum](https://discourse.nodered.org/). Alternatively, you can start a [discussion on GitHub](https://github.com/TotallyInformation/node-red-contrib-uibuilder/discussions) or [raise a GitHub issue](https://github.com/TotallyInformation/node-red-contrib-uibuilder/issues). Please note that I no longer have the time to monitor the #uibuilder channel in the Node-RED slack.
Expand Down Expand Up @@ -464,6 +464,8 @@ Vars moved to ti-common (replace): node.urlPrefix, node.nodeRoot, paletteCategor



* Add client msg filter for URL Hash. To allow sending of data only to a specific router route.

* ??? `uib.setAttr(selector, attr, val)`? - quick way to set an attribute on an element.

* Consider special variable `managedTags`? where each entry update will automatically update the matching element ID and if the element doesn't yet exist, will watch for it and update as soon as it is added. E.g. setting value on `uib.managedTags.mytag` would update `<xxxx id="mytag"></xxxx>`. ?? Just the slot content? Or attributes as well (perhaps making the value an object).
Expand All @@ -490,6 +492,7 @@ Vars moved to ti-common (replace): node.urlPrefix, node.nodeRoot, paletteCategor

* *New Functions* (all to be callable from Node-RED):

* [ ] `formateDate` - Use INTL std lib, usable as a `<uib-var>` filter function. [ref](https://discourse.nodered.org/t/format-date-at-yyyydd-hh-mm-ss/83130/12?u=totallyinformation)
* [ ] `uibuilder.cacheSend()` and `uibuilder.cacheClear()` - send ctrl msgs back to node-red - reinstate in uib-cache fn now we've removed extra ctrl send.
* [ ] `uibuilder.showLog()` - Add a visible panel on-page to show console.log output. Redirects (or maybe copies) uibuilder.log output - possibly also console.log. Will need amendments to the uibuilder.log function to give options for output to this and/or back to Node-RED.
* [ ] `uibuilder.socketReconnect()` Add manual socket.io reconnection function so it can be incorporated in disconnected UI notifications.
Expand Down Expand Up @@ -570,6 +573,9 @@ Vars moved to ti-common (replace): node.urlPrefix, node.nodeRoot, paletteCategor
### Library: `uibrouter.js` (FE router)

* Add option to auto scroll to a css selector on route change.
* Add a function to auto-rotate routes.
* Add a function to go to next/previous route.
* Update "FE Router Test" example with an auto-rotate flow.

### Web Component: `uib-var` (internal)

Expand Down Expand Up @@ -611,6 +617,8 @@ Vars moved to ti-common (replace): node.urlPrefix, node.nodeRoot, paletteCategor

### Documentation (including videos)

* Update docs for ctrl msgs and `msg._uib` return data to say that anything set via the socket.io auth can only update when the client reconnects.
* document clientTimeDifference
* New doc for using `ui.js` outside of uibuilder.
* `README.md`: Add more links to the Features section so that each feature points to appropriate documentation. Add a landing-page link to "includes many helper features" to signpost to relavent detailed documentation.
* Node-specific docs.
Expand Down

0 comments on commit 62be202

Please sign in to comment.