Skip to content

Releases: dataformsjs/dataformsjs

DataFormsJS v5.14.5

10 Sep 06:26
Compare
Choose a tag to compare
  • Security update for the starter/example webserver that is included with the main project.
    • The file app.js uses a custom express-like API with a minimal web server which allows DataFormsJS examples to run using Node.js built-in features and no outside dependencies.
    • A Path traversal vulnerability was found with credit thanks to Hamidreza Hamidi and Jafar Akhoundali.
    • The issue was decodeURIComponent was called out of order allowing for Proof-of-concept (POC) Path traversal attacks on a local developer machine using URLs such as http://127.0.0.1:8080/..%2fpackage.json or bash 127.0.0.1:8080/%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2fetc%2fpasswd
    • This impacts the development download of the project but not the NPM published release.
  • Replaced CDN https://unpkg.com/ with https://www.jsdelivr.com/
    • The property jsxLoader.babelUrl was changed and can be set back to unpkg if needed by setting the URL prior to the page being loaded.
    • All example pages and apps referenced unpkg for React and related libraries.
    • Even though IE is no longer supported it still works on legacy Windows Servers but unpkg blocks it from downloading CDN content. Given this fact, its possible they may block other browsers in the future so switching to jsDelivr helps avoid issues were code could break and it allows jsxLoader plus all React examples to work out of the box for IE again.
  • Updated several ImageGallery React and Web Components so that css @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {} would only be included if the browser is IE 11.
    • Edge browser started giving a deprecation warning when using this CSS media query.
    • Additionally, the main site, the playground site, and many examples were updated to dynamically handle the CSS media query for IE but not other browsers.
  • Fixed Unit Tests for React and Preact pages
  • Updated Unit Tests to run from Port 4000 instead of Port 5000 because Port 5000 is now used by default on Mac for AirPlay and was causing a conflict when running tests on a Mac.

DataFormsJS v5.14.4

20 Aug 04:56
Compare
Choose a tag to compare

DataFormsJS v5.14.3

19 Apr 07:10
Compare
Choose a tag to compare
  • jsxLoader Update so that JSX Files are compiled and added to the page only after all files are downloaded
    • Related Issue: #22
    • Previously JSX files were asynchronously download, compiled, and added to the page in the order that they downloaded.
    • This caused issues when files downloaded in an unexpected order.
  • Special Thanks to m1sta for opening this issue and providing great examples to show the error https://github.com/m1sta

DataFormsJS v5.14.2

31 Jan 07:56
Compare
Choose a tag to compare
  • Web Components - Renamed function [utils.js].isAttachedToDom() to [utils.js].isDomAttached() because the text string ToDom would show up when searching source code for case-insensitive todo. This is a minor update but prevents the files from showing up in external projects by accident. This could be considered a breaking change if an app calls the function but that is unlikely the case and it's mostly an internal function because it's undocumented outside of the changelog; that is the reason why a patch version is being released.

DataFormsJS v5.14.1

07 Dec 08:21
Compare
Choose a tag to compare
  • Fixed a bug in Web Component <json-data> that was introduced on the previous build where format.{func} was not working in [data-show] attributes.

DataFormsJS v5.14.0

28 Nov 10:38
Compare
Choose a tag to compare

DataFormsJS v5.13.1

02 May 11:48
Compare
Choose a tag to compare
  • Update Code Comments on React Component <JsonData>
    • Previously @license was included in the main comment which resulted in Vite including about 5 kB (uncompressed) and about 1.5 kB of extra code on the build process.
    • Comments were updated so that they are not included on build resulting in smaller files.
  • Update Framework, React, and Web Components for Date/Time formatting:
    • Update for en-US to use format {date} {time} instead of {date}, {time} because most people in the US (and software programs) do not use the comma while Chrome uses the comma.

DataFormsJS v5.13.0

25 Feb 08:02
Compare
Choose a tag to compare
  • DataFormsJS App Object
    • ~/js/DataFormsJS.js
    • New Feature - Pass HTML Attributes as Properties to HTML Controls
      • This is similar in concept to passing props with React or Vue and allows easy and quick customization of content in the HTML control.
    • Update - When manually calling app.refreshHtmlControl() nested HTML controls are now rendered
    • Fix typo in error message
    • Example of the new features is being published on the Handlebars Places Demo:
  • Web Components - Component Class
  • Framework Plugins - Excel and CSV Export
    • ~/js/plugins/exportToCsv.js
    • ~/js/plugins/exportToExcel.js
    • Add support so that elements using the plugin are refreshed when app.refreshHtmlControl() is called.
    • Minor fix handled by using onRendered(rootElement) instead of onRendered().
    • For Excel text columns were the the max character width is less than 20 an extra 2 pixels of space will be added so content better fits.
  • I18N update
    • Framework Plugin ~/js/plugins/i18n.js
    • Web Component ~/js/web-components/i18n-service.js
    • Added ability to find and replace i18n keys inside of an attribute string by using syntax [[key]]
      • Example data-export-file-name="[[Countries]].xlsx" data-i18n-attr="data-export-file-name"
      • Previously both Countries and Countries.xlsx would have had to be defined for each language
      • Now only Countries has to be defined
      • For Vue apps this applies to the v-i18n-attr directive

DataFormsJS v5.12.1

19 Feb 11:41
Compare
Choose a tag to compare
  • Excel Export (Web Component and Framework Plugin)
    • Default data-worksheet-name to data-export-file-name excluding file extension .xlsx if the attribute is not included
    • Trim spaces for text fields
    • Set header style (gray fill color, bold, etc) only on the cells used rather than the entire row
  • CSV Export (Web Component and Framework Plugin)
    • Trim spaces for text fields

DataFormsJS v5.12.0

16 Feb 09:44
Compare
Choose a tag to compare