Version Number
|
Release Date
|
Changes
|
1.6
|
4/4/2020
|
-
Added JSON capsule type - Allows JSON text to be included in the body of the capsule. The framework will return the
JSON evaluated into an object in the successful callback parameter. It was possible, previous to this version, to send json
but a "trick" would have to be
used like using the "pre" tag or a "textarea" tag, and then the developer would have been responsible for evaluating the json.
-
Added disableNavigation global variable - Enables the developer to utilize WebRocketX for independent async calls only
without having the browser side navigation feature enabled.
-
Bug fix - Unintelligible error message when form not found during form submission - Calling submitAsyncForm with a form
name that couldn't be found was returning an error message that did not indicate the true nature of the problem. Now a precise error
message is given.
-
Bug fix - Developer feedback textarea position improvement - The developer feedback text area was interfering with the dragging
of modal capsules when they overlapped each other. CSS was improved to eliminate this.
|
1.7
|
11/21/2021
|
-
Added pageLoadTimeStampParamName global variable - Allows the developer to configure the parameter name
for the CSRF token that is sent to the server. This improvement became high priority to support developers using
WebRocketX against a Django backend. Django by default checks a parameter called "csrfmiddlewaretoken", with all POST
requests, and will fail the request unless this parameter is sent with the correct value. Django allows the enforcement of the CSRF
token to be disabled for each mapping, but this is not recommended because it leaves the web application vulnerable.
|
1.8
|
06/25/2022
|
-
Fixed loss of attached events when navigating back from modal - The jquery empty command was stripping custom registered
events from removed and stored DOM nodes even though the nodes had references other than the node they were removed from. This
problem only appeared when navigating back from a modal because the DOM node was still present in the view at time of removal.
|
1.9
|
08/11/2022
|
-
Added jsReturn capsule attribute - Specifies a javascript method that will be called when this page is returned to
but not reloaded. Returning to a page can be trigged by using the back button or calling dtSetCapsuleById.
This mechanism is useful when the developer desires part of the view to be refreshed, or any other code to be run,
upon display either conditionally or unconditionally.
Since the application is running in a single page, conditions can be relayed between pages as global variables.
|
1.9.1
|
08/13/2022
|
-
Fixed landing page capsule reinjection error - Fixed landing page refresh from resulting in back button on next injection of the same capsule that is inlined with the landing page.
Steps to reproduce:
Navigate to the welcome page and view the inlined capsule which is registered and displayed
Press the browser refresh
Click on a link that reinjects the same capsule that is inlined on the landing page
Page will go back to the page preceding the landing page and jump out of the application
Desired behavior:
Fresh content for that capsule should instead be displayed without going back to the previous page
Fix:
Registration of landing page capsule was not setting the current capsule id as it should have. Current capsule id is now set upon registration.
|
1.9.2
|
09/01/2022
|
-
Fixed back navigation on untracked pages - The presence of untracked pages were causing back navigation to behave unpredicatably.
-
Fixed dtInit behavior at welcome page level - Fixed the stack initialize so that it does nothing when the user is already at the welcome page.
Previously unpredictable behavior could occur when this method was used when already at the stack base.
-
Fixed vague error message when targetId not found - A more specific error message now displayed when the targetId for a capsule is not found in the DOM.
-
Enhancement. Added the option of specifying targetId for capsule type of data - Previously the developer would have to code the placement of a data capsule type.
Now, the targetId is optional allowing the developer the freedom of leveraging the framework to place the layout if desired.
Thanks to the community for suggesting this convenient upgrade. :)
|
1.10.1
|
07/16/2023
|
-
Fix. Breaking change. Error page modals are now untracked. - Error popups are now untracked but previous developers used dtBack on them. In order to close these pop
ups properly developers should switch from using dtBack to dtCloseUntrackedModal. This fix improved behavior when an error popup appeared over an untracked page.
Previously closing the popup would jump to the page before the untracked page which was undesirable especially in the case that the page was untracked
because it was a create entity page that the developer desired to leave untracked. This prevented the developer from cleanly handling server
side errors during the create process and having the user continue with their data entry. Another solution other than leaving the create page
untracked would be to keep the create page tracked but remove it from the stack, after the create submit was successful, using the removeCapsuleFromHistory method.
-
Fix. Breaking change. dtIniti refactored to fix js race condition - Refactored dtInit so that a callback is required when calling something immediately after it. This fixed race conditions with browser navigation buttons.
-
Enhancement. New multipart form submit - Allows attachments such as images to be sent along with form submits.
-
Fix. Json processing fixed to not encode ampersand - Ampersand was previously being encoded which corrupted json text.
-
Enhancement. New method setDisableSendingCsrfToken - Allows developer to disable the sending of the CSRF token for a single request.
-
Enhancement. New method setUseGetRequest - Allows get to be used instead of default post. Desireable when wanting to cache views.
-
Enhancement. Better handling of untracked modal error pages - Untracked modal error pages will now automatically be closed with any browser navigation.
Also calling dtCloseUntrackedModal from okay button will close it as well. Modal error pages are not tracked by design. To not track a regular modal set trackPage="false" in its capsule.
-
Enhancement. New method dtCloseUntrackedModal - Developer can close an untracked modal and land on the page behind it,
even if the page behind it is untracked, this way the untracked page is not skipped over, handy for untracked popups in front of untracked pages
-
Enhancement. New method removeCapsuleFromHistory - Handy to surgically remove a create page from the stack after creation so that back button will not
land on a filled out form after creating something.
-
Enhancement. Running WebRocketX no longer requires unsafe-eval - Removed "Function" method so that unsafe-eval is no longer required in CSP to run WebRocketX
-
Fix. Error in hash change tracking - Fixed error in hash change tracking when a page is reloaded. Was causing unpredictable navigation in edge cases.
|