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-Columnsby addingfontsizeoption - updated 
j-Inputby addingui-input-okclass when the value is validated and filled - updated 
j-Detailby addingnotnulloption - updated 
j-LineChartby addingyaxisoption - updated 
j-WebSocketby addingcomponent.idle(is)method - improved 
j-Validation - improved 
j-Banners - improved 
j-Loadingby canceling of focusing of the active element - improved 
j-Approveby canceling of focusing of the active element - improved 
j-Confirmby canceling of focusing of the active element - improved 
j-Messageby canceling of focusing of the active element - improved 
j-BackToTop - fixed 
scrolltoinj-ViewBox - fixed scopes in 
j-DataGrid - fixed scopes in 
j-Centered - fixed 
repositionof connections inj-Flow - fixed 
curvesinj-LineChart - fixed resizing of 
j-Columns - fixed 
opt.itemsoption 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.cssfiles - 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_csrfCONF.default_csrf_maxageDEF.onCSRFcreate(req)DEF.onCSRFcheck(req)controller.csrf()generates token@{csrf}generates token in View engineschema.csrf()enables csrf for schemas and their routescsrfflag forROUTE()methodcsrfverification viax-csrf-tokenheader or via URL argument?csrf=TOKENRESTBuilder.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_errorsfor 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 forTasksandOperations - decreased 
default_interval_websocket_pingto1minute (from3) - created new unit tests by Helferino
 - added GitHub workflows by Marek Mahansky
 - fixed predefined session behavior (a problem with concurrent requests)
 - fixed 
PATCHmethod in the schemas - fixed 
DELETEmethod for the schemas (now it works likePATCHmethod) - fixed 
FlowStream.use()method - fixed pausing of outputs/inputs in 
FlowStream. - fixed 
controller.success() - fixed 
$.success()in multiple operations - fixed 
reconnectserveroption 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 
PATCHmethod - fixed predefined session functionality (a problem with cache)
 - fixed 
APIroutes with empty model - fixed message with 
closing bytesin WebSocket andWEBSOCKETCLIENT() - fixed read stream in 
FILESTORAGE() - fixed measuring dimension for 
.gifimages - 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 
.gifimages - fixed 
DELETEmethod for the schemas (now it works likePATCHmethod) - 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 
Readydelegate - added 
Tasks - added 
Modules - added 
Middleware - added 
copy & pastefeature 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 
HttpRequestcomponent for Total.js 4 - updated 
Functioncomponent for Total.js 4 - updated 
FileWritercomponent for Total.js 4 - fixed 
Schedulercomponent 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 
parentargument insignalevent - 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 
CodeMirrorcomponent 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
- 2025-11-02NEWOctober report 2025
 - 2025-10-22New universal drivers for IoT Platform
 - 2025-10-13IoT Platform Update: New Features and Enhancements
 - 2025-10-01September report 2025
 - 2025-09-05How to create Google Gemini AI component in Total.js Flow
 - 2025-09-01August report 2025
 - 2025-08-25IoT platform — Total.js
 - 2025-08-22How to install OpenPlatform — IoT platform
 - 2025-08-18Total.js Tables is here!
 - 2025-08-18How to install Flow — IoT platform
 
