5 min read
February report 2021
A quick summarization of all changes and news from the entire Total.js Platform. Read more about our work.
February report 2021
UI components
- added a new component
j-IdleTime
- added a new component
j-Carousel2
- added a new component
j-Rows
- updated
j-Columns
by addingfontsize
option - updated
j-Input
by addingui-input-ok
class when the value is validated and filled - updated
j-Detail
by addingnotnull
option - updated
j-LineChart
by addingyaxis
option - updated
j-WebSocket
by addingcomponent.idle(is)
method - improved
j-Validation
- improved
j-Banners
- improved
j-Loading
by canceling of focusing of the active element - improved
j-Approve
by canceling of focusing of the active element - improved
j-Confirm
by canceling of focusing of the active element - improved
j-Message
by canceling of focusing of the active element - improved
j-BackToTop
- fixed
scrollto
inj-ViewBox
- fixed scopes in
j-DataGrid
- fixed scopes in
j-Centered
- fixed
reposition
of connections inj-Flow
- fixed
curves
inj-LineChart
- fixed resizing of
j-Columns
- fixed
opt.items
option with a path to variable inj-Directory
jComponent library
- added a support for CSRF tokens via
DEF.csrf = 'TOKEN'
- improved a callback in the
IMPORT()
method with.css
files - fixed importing of component dependencies
- fixed loading of jComponent adding of body class with a display type
- added a beautiful extension for configuration:
The code below sets a value to the configuration according to the display mode. If the display mode is changed, then jComponent reconfigures all components about new values.
Example:
Total.js framework 4
Update Total.js 4 via NPM $ npm update total4
- added CSRF support
CONF.secret_csrf
CONF.default_csrf_maxage
DEF.onCSRFcreate(req)
DEF.onCSRFcheck(req)
controller.csrf()
generates token@{csrf}
generates token in View engineschema.csrf()
enables csrf for schemas and their routescsrf
flag forROUTE()
methodcsrf
verification viax-csrf-token
header or via URL argument?csrf=TOKEN
RESTBuilder.csrf(token)
- added
HTMLMAIL(address, subject, body, [language], [callback])
method - added
NPMINSTALL(name, [callback])
method for installaing of 3rd party NPM dependencies - added
CONF.default_errorbuilder_errors
for handling of all HTTP response viaErrorBuilder
- added
FILESTORAGE().image()
method for reading of images - added dynamic delegates for receiving of messages in FlowStream in the form
instance.mesage_<INPUT_NAME>
- added
response.proxy(target, [copypath], [after], [timeout])
method - improved handling of errors in all XHR requests (now the framework returns
ErrorBuilder
) - improved HTTP cache
- improved image cache in
FILESTORAGE()
- improved
MIDDLEWARE(name, fn, [assign], [first])
method - extended
EXEC()
by adding support forTasks
andOperations
- decreased
default_interval_websocket_ping
to1
minute (from3
) - created new unit tests by Helferino
- added GitHub workflows by Marek Mahansky
- fixed predefined session behavior (a problem with concurrent requests)
- fixed
PATCH
method in the schemas - fixed
DELETE
method for the schemas (now it works likePATCH
method) - fixed
FlowStream.use()
method - fixed pausing of outputs/inputs in
FlowStream
. - fixed
controller.success()
- fixed
$.success()
in multiple operations - fixed
reconnectserver
option inWEBSOCKETCLIENT()
- fixed custom filters in schema
workflows
- fixed uploading of files in
REQUEST()
method - fixed handling of empty multipart/form-data stream
- fixed auto-redirect with custom port number in
REQUEST()
- fixed command injection in
Image.pipe()
andImage.stream()
identified by huntr - fixed parsing of uploaded files (sometimes was the writeable stream unclosed)
- fixed execution of system routes
- fixed inputs in
FlowStream
- fixed parsing of schema keys in
PATCH
method - fixed predefined session functionality (a problem with cache)
- fixed
API
routes with empty model - fixed message with
closing bytes
in WebSocket andWEBSOCKETCLIENT()
- fixed read stream in
FILESTORAGE()
- fixed measuring dimension for
.gif
images - fixed
BACKUP()
method (a problem with sockets) - fixed potential remote code execution in
U.set()
founded by Snyk - fixed routing with camel-Case URL addresses
- fixed sending of messages via inline registered components in FlowStream
Total.js framework 3
- fixed measuring dimension for
.gif
images - fixed
DELETE
method for the schemas (now it works likePATCH
method) - fixed command injection in
Image.pipe()
andImage.stream()
identified by huntr - fixed potential remote code execution in
U.set()
founded by Snyk
Total.js AppBuilder
- updated Total.js empyt project with AppBuilder
- improved Code editor
- improved UI
- improved resources
- added
Timer
- added
Ready
delegate - added
Tasks
- added
Modules
- added
Middleware
- added
copy & paste
feature for components - added CSRF option
- added a generator for documentation
- added history
- added JavaScript linter
- updated templates
- prepared code for real-time collaboration
Total.js Flow
- added new documentation
- updated
HttpRequest
component for Total.js 4 - updated
Function
component for Total.js 4 - updated
FileWriter
component for Total.js 4 - fixed
Scheduler
component for Total.js 4. - improved and fixed UI
- added a new event
ON('flow.client', client)
- added a new event
ON('flow.error', err, instance, parent)
- added a new event
ON('flow.pause', is)
- fixed
parent
argument insignal
event - fixed unhandled errors
Code Editor
- added a new template
j-Centered
- added Total Combat mode
- updated JavaScript syntax highlighter by adding Total.js localization markup
- updated jComponent
- fixed bundling
CMS
- improved UI
- updated most of UI components
- improved
CodeMirror
component by adding great new features
SuperAdmin
- added a custom name for applications by Tomáš Novák
- improved search by Tomáš Novák
- fixed layout by Tomáš Novák
- improved UI by Tomáš Novák
OpenPlatform
- updated components for UI designer
- updated UI components
- fixed UI designer
DBMS
- updated
modify()
method by adding#
symbol (more in docs)
Other posts from Total.js Platform
- 2024-11-13Benchmarking Node.js Frameworks: selecting your framework for 2025!
- 2024-11-01October report 2024
- 2024-10-22Performance Testing: Total.js vs. NestJS
- 2024-10-01September report 2024
- 2024-09-27Total.js UI Builder: #2 designing your first interface
- 2024-09-26Total.js V5: Middlewares
- 2024-09-23Beginner Guide to Total.js UI: # 05 Client-side routing
- 2024-09-23Total.js UI #4: Data Binding (Part 2 – Practical Example)
- 2024-09-20Introduction to Total.js UI Builder: A Beginner’s Guide
- 2024-09-13Total.js v5: #06 Understanding File Routing