You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+39-23
Original file line number
Diff line number
Diff line change
@@ -10,6 +10,8 @@ Please see the documentation for archived changelogs - a new archive is produced
10
10
11
11
## To Do
12
12
13
+
*[ ][started] Change all calls to `$.get` into `$.ajax` and add beforeStart to add optional bearer token header
14
+
*[ ] Add Docsify external libraries to `/docs/.config` to allow true offline use of docs. Add new gulp process to update them, possibly pack them all.
13
15
*[ ] Add instance descriptions to the index pages
14
16
* Update examples:
15
17
*[ ][started] Update text update example to include new `uib-topic` html attributes
@@ -26,6 +28,9 @@ Please see the documentation for archived changelogs - a new archive is produced
26
28
*[ ] Document how to use `<instanceRoot>/routes/` properly. [Ref](https://totallyinformation.github.io/node-red-contrib-uibuilder/#/changelog?id=new-features)
27
29
*[ ] Remove `writeJson` from package.mgt.js then remove `fs-extra` dependency
28
30
*[ ] Remove execa from gulpfile.js & remove from dev deps
31
+
*[ ] Add automatic `search` handler for all uibuilder endpoints - [Ref](https://developer.mozilla.org/en-US/docs/Web/API/Window/location#example_5_send_a_string_of_data_to_the_server_by_modifying_the_search_property)
32
+
*[ ] New Node Idea: `uib-meta` - links to a uibuilder node and returns the instance metadata including URL's and folder locations and other settings. (e.g. use with [node-red-cleanup-filesystem](https://discourse.nodered.org/t/announce-node-red-cleanup-filesystem-request-for-testing/88135))
33
+
*[ ] Move the loading of the Editor common CSS/JS to a plugin so they are only loaded once. Remove explicit links from node html files.
29
34
30
35
### `uibrouter` FE library
31
36
@@ -71,9 +76,9 @@ Please see the documentation for archived changelogs - a new archive is produced
@@ -118,33 +123,33 @@ Please see the documentation for archived changelogs - a new archive is produced
118
123
### `uibuilder` node
119
124
120
125
*[ ] ?? Filter `clientId` and `pageName` using socket.io rooms?
126
+
*[ ] On uibuilder Libraries tab:
127
+
*[ ] Process for updating libraries updates EVERYTHING (runs `npm install`) - need to update docs?
128
+
*[ ] Major version updates are not listed - because of package.json version spec - need to update docs?
129
+
*[ ] uibuilder.packages after an update does not contain the `outdated` prop for each package because the server only does a quick update and so does not call `npmOutdated` (from packge-mgt.js) on each package because it is async and quite slow. This may mean that update flags are not updated until the Editor is next reloaded which isn't ideal. Probably need to fix at some point.
130
+
121
131
122
132
## Issues
123
133
124
-
*[ ] Process for showing outdated libraries ~~isn't working~~ is working sometimes.
125
-
*[ ]`uibuilder` file Editor - sometimes on file change, we get:
126
-
Uncaught Error: Illegal value for lineNumber
127
-
Error: Illegal value for lineNumber
128
-
at e.getLineMaxColumn (editor.js:5:1743420)
129
-
at zo.getViewLineMaxColumn (editor.js:5:1161732)
130
-
at Go.getViewLineMaxColumn (editor.js:5:1174931)
131
-
at es.getLineMaxColumn (editor.js:5:1196932)
132
-
at new yn (editor.js:5:1096427)
133
-
at In._actualRender (editor.js:5:1110215)
134
-
at editor.js:5:1109784
135
-
at editor.js:5:1109747
136
-
at In._renderNow (editor.js:5:1109773)
137
-
at In._flushAccumulatedAndRenderNow (editor.js:5:1107153)
138
-
at In._onRenderScheduled (editor.js:5:1109678)
139
-
at y.execute (editor.js:2:180485)
140
-
at o (editor.js:2:181412)
141
-
at editor.js:5:161683
134
+
*[ ] uibuilder library update
135
+
*[x] Runs `npm install`. Run `npm update` with package name
136
+
*[x] Running 1 update resets displays for all updatable packages
137
+
138
+
*[ ] uib-element editor panel
139
+
*[ ] Heading 2nd drop-down needs to be narrower to account for 1st drop-down
140
+
*[ ] uibuilder editor panel
141
+
*[ ] info panel fixed width, needs to be expandable
142
+
*[ ] Text in fieldset is fixed width
143
+
*[ ] uib-cache editor panel
144
+
*[ ] Some inputs width not consistent
145
+
*[ ] uib-save & uib-file-list editor panels
146
+
*[ ] URL drop-down width not consistent (check uib-update as this is correct)
142
147
143
148
### "Outdated" dependencies
144
149
145
150
As of v7, all outdated dependencies have been removed or limited to uibuilder development only, not production use.
146
151
147
-
The following are only used for developing UIBUILDER:
152
+
The following are only used for _**developing**_ UIBUILDER:
148
153
149
154
*`execa` - restricted to v5. Author sindresorhus decided that everyone HAS to use ESM even though his packages are widely used and he must know that it is often impossible to move from CommonJS without a complete rewrite. Node-RED is so complex, when would that be possible? Very annoying.
150
155
*`@types/node` - restricted to v18 to match Node-RED's current baseline.
@@ -237,10 +242,12 @@ Most of these changes will *not* impact most people but you should check through
237
242
* You can now define a set of external html files (that can include scripts and css just like routes) that are immediately loaded to the page. These can be defined in the initial router config when they will be loaded immediately (before routes) or can be manually loaded later. Use these for things like menu's or other fixed parts of the UI.
238
243
239
244
* You can now define route content as Markdown instead of HTML. This makes Notion/Obsidian-like applications feasible using UIBUILDER.
245
+
246
+
* You can now use Markdown-IT plugins to enhance your Markdown content.
240
247
241
248
* Markdown improvements.
242
249
243
-
Both the main uibuilder node (via the `ui.js` library) and the `uibrouter` library both accept markdown content (via the external Markdown-IT library) and now they both support Markdown-IT plugins so that you can add features such as checkbox lists, GitHub style callouts, Mermaid diagrams and much more.
250
+
Both the main uibuilder node (via the `ui.js` library) and the `uibrouter` library both accept markdown content (via the external Markdown-IT library) and now they both support *Markdown-IT plugins* so that you can add features such as checkbox lists, GitHub style callouts, Mermaid diagrams and much more.
244
251
245
252
There is also a new documentation page dedicated to using Markdown.
246
253
@@ -272,9 +279,13 @@ Most of these changes will *not* impact most people but you should check through
272
279
* The `nanoid` package is no longer a dependency. UIBUILDER now has its own UUID generator function. The nanoid package stopped being useful since it moved to only an ESM release.
273
280
* The `jsdom` package now tracks the current release again thanks to UIBUILDER moving to a node.js baseline in line with Node-RED v4 (Node.js v18)
274
281
* External module `execa` no longer a dependency.
282
+
* On the Detailed Information Page (uibindex) "User-Facing Routes" is changed to "Client-Facing Routes" to make it clearer.
275
283
276
284
* Documentation
277
285
* New How-To: Creating a well-structured HTML page
286
+
* Mustache plugin removed from Docksify load. Not used and not required since Docsify supports easy loading of custom Vue components which can do the same work.
287
+
* Additional uibuilder web path added `./docs/resources` which is mapped to the `/front-end` package folder. Allowing the docs to use the images, router, branding, etc in the future.
288
+
* The Docsify JS and CSS now split from the main html file for ease of management.
278
289
279
290
* URL's are now _case sensitive_ when using the custom ExpressJS server feature.
280
291
@@ -284,6 +295,9 @@ Most of these changes will *not* impact most people but you should check through
* Node-RED's admin optional auth token is now added to all admin API calls. [Ref](https://github.com/victronenergy/node-red-contrib-victron/blob/ac5e383b727a13d7f613cb02c183f5b205408c1b/src/nodes/victron-nodes.html#L233-L238). This should ensure that, if you are using tokens in your Node-RED authentication, all the UIBUILDER admin API calls should work consistently.
299
+
300
+
287
301
### NEW node - `uib-file-list`
288
302
289
303
Returns a list of files with their folders from the active source folder of the chosen uibuilder instance. The searches are constrained to that folder or below and may not escape for security purposes. In addition, any file or folder name starting with a `.` dot will not be searched. Any files or folders that are links, will be followed.
@@ -378,7 +392,7 @@ The `URL Output?` setting will change the output from a folder/file list to a re
378
392
* Now enforces only 1 instance of a router on page (would need to change how uib vars work otherwise).
379
393
* Internally, a tracking flag is added to inbound messages from Node-RED to indicate if/where they have been processed by the library. This helps to avoid double-processing. This is important now that there are ever more auto-process features available.
380
394
381
-
### `uibuilderfe` old front-end library
395
+
### **REMOVED**`uibuilderfe` old front-end library
382
396
383
397
**REMOVED** - this was deprecated in UIBUILDER v5, it has now been removed completely. Please use `uibuilder.iife.min.js` (for simple `<script>` loading) or `uibuilder.esm.min.js` for ESM module imports.
384
398
@@ -437,6 +451,8 @@ The `old-blank-client` template and all associated documentation has also been r
437
451
438
452
* The help panel has been updated to better reflect the current configurations. Also some additional links added.
439
453
454
+
* The list of installed libraries now has more reliable behaviour for updates. If there are >1 updates waiting, updating 1 library no longer looses the other indicators.
455
+
440
456
### `uib-list` node
441
457
442
458
**REMOVED** - this node was deprecated in UIBUILDER v6. It has now been removed. Use the `uib-element` node with one of the list element types.
> These are the docs for UIBUILDER v7. If you need the v6 or earlier docs, the easiest way is to set up a test instance of Node-RED and manually install the appropriate UIBUILDER version: `npm install node-red-contrib-uibuilder@5` then use the documentation links from a `uibuilder` node.
0 commit comments