SDK Changelog
3.5.4 (2026-06-19)
Regular bugfix release.
Upgraded
@open-formulieren/formio-rendererto 1.6.2 release, which fixes:[#6076] Fixed not being able to place pins, lines or polygons in the map component.
[#6279] Fixed multiple version of the same CSS packages being installed/bundled.
[#6356] Fixed displaying time values that only have the hours and minutes parts.
[#6375] Fixed scrolling the first component with validation errors into the viewport on submit.
[#6354] Fixed data-retrieval callbacks being called excessively despite no data being changed.
[#6075] Fixed the asterisk/label suffix display for required map components.
[#6371] Fixed the children component data not being updated properly when prefill data is used.
[#6279] Fixed profile summary data font-size being too big.
[#6354] Fixed too many network calls being made in address lookups.
3.5.3 (2026-06-02)
Regular bugfix release.
Upgraded
@open-formulieren/formio-rendererto 1.6.0 release, which fixes:Accesibility for screenreaders when a fieldset label is visually hidden.
Interaction bugs with the
addressNLcomponent, among others: clearing of validation errors, displaying an error if address derivation yields no results, custom error messages not being used…Date field maximum date validation being off by one day.
Datetime (picker) validation triggering too early.
Submissions sometimes not being submittable when there are
.’s in the component key.
3.5.2 (2026-05-06)
Regular bugfix release.
Fixed address derivation configuration in textfields not being supported in the new renderer.
3.5.1 (2026-04-28)
Regular bugfix release.
Upgraded
@open-formulieren/formio-rendererto 1.5.3 bugfix release, which fixes:[#6185] Fixed soft-required file component inside a conditionally visible editgrid causing a form crash.
[#6190] Fixed the anchor
targetattribute being stripped out by DOMPurify.[#6192] Fixed missing textfield
autocompleteattribute support.[#6181] Fixed empty-ish comparison against file components not working as expected.
[#6163] Fixed UX of date(time) validation not applying consistently.
[#6125] Fixed a crash in
addressNLwhen conditionally displaying it.
[#6099] Fixed component initial values not being taken into account for the first logic evaluation call if there’s no step submission data yet.
[#6183] Fixed a crash in the new logic evaluation when there’s a default hidden component inside an editgrid.
Upgraded dependencies to latest available security fixes.
3.5.0 (2026-04-10)
Feature release.
Warning
SDK 3.5.0 requires at least version 3.5.0 of the Open Formulieren API.
New features
Appointments improvements:
[#5820] We now support retrieving custom static translation assets from the backend.
[#5691] Added a descriptive text to clarify appointment product selection.
[#5692] Hide weekend and year navigation controls from Calendar in the Appointments.
[#5691] The product amount limit (if provided) can now be validated.
[#5319] Login option for organizations with OpenID Connect can now be dynamically displayed depending on the
auth_visiblequery param.[#4365] Disabled scrolling maintenance mode message into view for form designers.
[#5962] We now support evaluation of “backend” logic rules in the SDK (new renderer only). You can try ouy JsonLogic engine in the plaground.
Bugfixes
[#5690] Fixed display of the product description in the appointments.
[#5884] Fixed long filenames overflowing under the progress indicator in the submission summary.
[#5923] Fixed “Next” button not being disabled when it should be.
Fixed missing translations for the AddressNL component.
Fixed contact details cache key in appointments not taking the language into account.
Project maintenance
[#936] Upgraded to storybook 10 and switched storybook testing to the vitest addon.
Changed npm configuration, making it more secure.
Removed usage of types from
cryptomodule, since it’s not available in browser.Switched to individual Utrecht community CSS packages.
Tidy up the CSS packages/imports for the NL DS components already used/distributed via the renderer CSS.
Updated test with DST.
Updated dependencies to their latest versions, amongst others:
@open-formulieren/formio-rendererto 1.5.1@open-formulieren/typesto 1.0.1@utrecht/component-library-reactto 13.1.0
3.5.0-alpha.2 (2026-02-27)
Third preview release of the upcoming 3.5.0 version.
Bugfixes
Fixed contact details cache key in appointments not taking the language into account.
3.5.0-alpha.1 (2026-02-12)
Second preview release of the upcoming 3.5.0 version.
Bugfixes
[#5923] Fixed “Next” button not being disabled when it should be.
Fixed missing translations for the AddressNL component.
Project maintenance
Removed usage of types from
cryptomodule, since it’s not available in browser.
3.5.0-alpha.0 (2026-02-06)
First preview release of the upcoming 3.5.0 version.
Warning
SDK 3.5.0 requires the backend API version 3.5.0 or newer.
New features
[#5820] We now support retrieving custom static translation assets from the backend.
[#5319] Login option for organizations with OpenID Connect can now be dynamically displayed depending on the
auth_visiblequery param.[#5691] Added a reason question for the appointment.
Bugfixes
[#5690] Fixed display of the product description in the appointments.
[#5884] Fixed long filenames overflowing under the progress indicator in the submission summary.
Project maintenance
[#936] Upgraded to storybook 10.2.1 and switched storybook testing to the vitest addon.
Changed npm configuration, making it more secure.
3.4.1 (2026-02-03)
Regular bugfix release.
[#5819] Fixed not being able to place a pin in the map component after removing the previous pin.
3.3.2 (2026-02-03)
Regular bugfix release.
[#5819] Fixed not being able to place a pin in the map component after removing the previous pin.
3.4.0 (2025-12-31)
Feature release.
Warning
SDK 3.4.0 requires at least version 3.4.0 of the Open Formulieren API.
Deprecations
The UMD bundle is deprecated and will be removed in Open Forms SDK 4.0. The UMD bundle is currently the default export of the NPM package. In 4.0, the ESM modules will be the default and the ESM bundle will require an updated import path.
The bundles have moved from
dist/open-forms-sdk.{js,mjs,css}todist/bundles/open-forms-sdk.{js,mjs,css}. The Docker image still supports the old paths for backwards compatibility, but this is deprecated and may be removed in 4.0. For bundle imports, use a base path of/bundles/*.The
formio.jsbased renderer is deprecated in favour of our own library. Removal is scheduled for Open Forms SDK 4.0. From this release on, we will only fix critical issues and no new features will be added to the legacy renderer.The reworked file upload component (new renderer) deprecates the old upload component design tokens. The Open Forms backend implements shims for backwards compatibility, and the upgrade notes in the Open Forms documentation describe in detail what’s changed.
This includes the reworked
LoadingIndicatorandModalcomponents, now provided by the new renderer.
New features
The new renderer library (replacing
formio.js) is feature complete and stable. A detailed changelog is available, but some highlights of what wasn’t possible on the legacy renderer are:Accessibility of the
textfieldandtextareacomponents withshowCharCount: trueis improved.In the email verification flow you now have feedback that the email is verified.
Some custom validation error messages set in the backend are now supported.
The default validation error messages are improved and provide better user feedback.
Validation errors for an item in a repeating group are now displayed “for the item” rather than near the first field in the item.
Components that are “read only” are now marked as such in an accessible manner instead of being “disabled” and removed from the accessibility tree.
Applied a number of quality-of-life improvements to components that weren’t possible before, notably for
addressNL.Added support for the new
customerProfilecomponent for interaction with Open Klant 2/customer interaction services.Map component geometry validation now restricts geometries to the bounds of The Netherlands.
The date picker for
dateanddatetimecomponents is now accessible through keyboard navigation and for screen reader users.Added preparations to lazy-load more functionality to improve loading times for users on slow network connections.
Accessibility of
numbercomponents with prefix/suffix is improved.
[#445] The NPM package now includes TypeScript declaration files for the public API.
Appointments improvements:
[#5694] Updated “location and time” step title to “date and time”.
[#5695] Added extra information to contact details step: products, date and time, descriptions.
[#5548] Reduced visual clutter created by buttons to add a value to a multi-value field and the button to add another item to a repeating group.
Build artifacts now include all the source messages used for localization/i18n.
Bugfixes
Legacy renderer:
[#5435] Fixed validation not being skipped for hidden selectboxes component.
[#5728] Fixed delete buttons showing when
disableAddingRemovingRowsis set totruein repeating groups.
New renderer:
[#918] Fixed the “disable next step” logic action not disabling the step submit button.
[#5727] Fixed map overlays not being shown in the form submission summary page.
Project maintenance
[#445] Finished the conversion of our own code to TypeScript. We will have some “plain” JavaScript for the overrides/custom components used in the (legacy) formio.js renderer and there are no plans to convert this to TS.
Replaced the
DateFieldwith the variant from the our@open-formulieren/formio-rendererpackage.Removed obsolete code, stories, documentation and tests.
Refactored some code to be in a more logical location and improve consistency.
Improved (UI) test stability/determinism.
Updated dev dependencies to their latest (security) fixes, amongst others:
globjs-yamlminimatchjackspeak
Refactored button component(s) to use the components from our renderer package and updated the linter rules.
Refactored the
Loadercomponent to use the one from our renderer package.Dropped the
react-modaldependency in favour of the native HTML variant provided by our own renderer.Replaced the
LeafletMapcomponent usage with the implementation of our own renderer.Cleaned up CI pipelines by using our own reusable actions.
[#217] Coverage reporting is now informational instead of failing builds due to the peculiarities of instrumenting JS/TS code.
The Docker Hub description generation is now a self-contained standalone script, executed with UV.
3.4.0-alpha.2 (2025-12-04)
Third preview release of the upcoming 3.4.0 version.
Deprecations
The UMD bundle is deprecated and will be removed in Open Forms SDK 4.0. The UMD bundle is currently the default export of the NPM package. In 4.0, the ESM modules will be the default and the ESM bundle will require an updated import path.
The bundles have moved from
dist/open-forms-sdk.{js,mjs,css}todist/bundles/open-forms-sdk.{js,mjs,css}. The Docker image still supports the old paths for backwards compatibility, but this is deprecated and may be removed in 4.0. For bundle imports, use a base path of/bundles/*.The reworked file upload component (experimental renderer) deprecates the old upload component design tokens. We’ll provide upgrade documentation and shims for backwards compatibility.
The reworked
LoadingIndicatorcomponent replaces the old one. The old design tokens are deprecated, but this release is backwards compatible.The reworked
Modalcomponent replaces the old one from the renderer. Any old design tokens are deprecated, but we’ll provide upgrade documentation and shims for backwards compatibility where necessary.
New features
Updated the new renderer version. A detailed changelog is available.
The following component types are now supported:
mapchildren
The
textfieldcomponent can now display the character count, and accessibility is improved which was previously not possible.The email verification flow is now implemented and improved - you now have feedback that the email is verified which wasn’t possible before.
Custom validation error messages set in the backend are now supported.
Default validation error messages are improved and provide better user feedback.
Validation errors for an item in a repeating group are now displayed “for the item” rather than near the first field in the item, which was previously not possible.
selectboxeswith a maximum count of options now disable the remaining options when that limit is reached.
Bugfixes
Many bugs are fixed in the new renderer, see the detailed changelog.
Project maintenance
Refactored button component(s) to use the components from our renderer package and updated the linter rules.
Refactored the
Loadercomponent to use the one from our renderer package.Updated to latest security fixes of dependencies:
globjs-yamlminimatchjackspeak
Dropped the
react-modaldependency in favour of the native HTML variant provided by our own renderer.Cleaned up CI pipelines by using our own reusable actions.
3.4.0-alpha.1 (2025-11-10)
Second preview release of the upcoming 3.4.0 version.
Deprecations
The UMD bundle is deprecated and will be removed in Open Forms SDK 4.0. The UMD bundle is currently the default export of the NPM package. In 4.0, the ESM modules will be the default and the ESM bundle will require an updated import path.
The bundles have moved from
dist/open-forms-sdk.{js,mjs,css}todist/bundles/open-forms-sdk.{js,mjs,css}. The Docker image still supports the old paths for backwards compatibility, but this is deprecated and may be removed in 4.0. For bundle imports, use a base path of/bundles/*.The reworked file upload component (experimental renderer) deprecates the old upload component design tokens. We’ll provide upgrade documentation and shims for backwards compatibility.
New features
Appointments improvements:
[#5694] Updated “location and time” step title to “date and time”.
[#5695] Added extra information to contact details step: products, date and time, descriptions.
Updated the new renderer version. A detailed changelog is available.
The following component types are now supported:
datetimetimeaddressNLpostcodepartnerssignaturecoSign(legacy)file
The multiple-values option is now supported in components that offer this option.
The backend plugin validation is now enabled.
Applied a number of quality-of-life improvements to components that weren’t possible before, notably for
addressNL.
[#5548] Reduced visual clutter created by buttons to add a value to a multi-value field and the button to add another item to a repeating group.
Bugfixes
[#5728] Fixed delete buttons showing when
disableAddingRemovingRowsis set totruein repeating groups.[#5727] Fixed map overlays not being shown in form submission summary page.
Project maintenance
Refactored some code to be in a more logical location and improve consistency.
Improved (UI) test stability/determinism.
Updated dev dependencies to their latest (security) fixes.
3.3.1 (2025-10-29)
Regular bugfix release.
[#5728] Fixed delete buttons showing when
disableAddingRemovingRowsis set totruein repeating groups.[#5727] Fixed map overlays not being shown in form submission summary page.
3.4.0-alpha.0 (2025-10-10)
First preview release of the upcoming 3.4.0 version.
Deprecations
The UMD bundle is deprecated and will be removed in Open Forms SDK 4.0. The UMD bundle is currently the default export of the NPM package. In 4.0, the ESM modules will be the default and the ESM bundle will require an updated import path.
The bundles have moved from
dist/open-forms-sdk.{js,mjs,css}todist/bundles/open-forms-sdk.{js,mjs,css}. The Docker image still supports the old paths for backwards compatibility, but this is deprecated and may be removed in 4.0. For bundle imports, use a base path of/bundles/*.
New features
[#445] The NPM package now includes TypeScript declaration files for the public API.
Bugfixes
[#5435] Fixed validation not being skipped for hidden selectboxes component.
Project maintenance
[#445] Finished the conversion of our own code to TypeScript. We will have some “plain” JavaScript for the overrides/custom components used in the formio.js renderer and there are no plans to convert this to TS.
Replaced the
DateFieldwith the variant from the our@open-formulieren/formio-rendererpackage.Removed obsolete code, stories, documentation and tests.
3.2.2 (2025-10-09)
Regular bugfix release.
[#5435] Fixed validation not being skipped for hidden selectboxes component.
The NPM packages are now published with Trusted Publishing, enhancing supply chain security.
3.1.4 (2025-10-06)
Final bugfix release in the 3.1.x series.
[#5435] Fixed validation not being skipped for hidden selectboxes component.
3.3.0 (2025-09-30)
Feature release.
Note
This release adds the ability to opt-in to the new experimental form renderer. The feature can be enabled on a per-form basis through the admin interface.
New features
[#5191] Improved the interactions on the map component:
Using the current location (via the browser location permission) is now an explicit user action.
Removing drawn shapes/geometry on the map now requires only a single click instead of multiple.
[#5191] Changed the Leaflet-Draw “delete” button behavior and removed the “Delete” menu.
[#5575] The map component can now display WMS overlays.
[#5133] There is now experimental support for our own formio renderer. Some low-level components have been replaced with their equivalent from our own renderer:
The select fields in the appointment steps.
The number field in the appointment steps.
Form submission sessions are now isolated between tabs. This also enables filling out multiple instances of the same form in different tabs/browser windows.
[#825] Added the
childrenfamily members component type.
Bugfixes
[#5378] Fixed not having to select an interaction choice on the map component if only one option is available.
[#850] Fixed missing exports for our formio module and template library.
Project maintenance
Fixed invalid dates in test stories.
Added reusable github actions for i18n checks.
Pinned the minor NodeJS version.
[#445] Converted another chunk of code to typescript.
Bumped dependencies to their latest (security) releases.
Added Storybook stories for
FormStart.Removed obsoleted and unused SDK embed example.
Fixed missing underlines causing CI builds to fail.
[#4879] Removed some dead code.
3.3.0-alpha.2 (2025-08-22)
Third preview release of the upcoming 3.3.0 version.
Note
This release adds the ability to opt-in to the new experimental form renderer. The feature can be enabled on a per-form basis through the admin interface.
New features
[#5575] Implemented WMS layers in the map component.
[#5133] Updated the open-formulieren formio-renderer and replaced several components:
Select field for appointments.
NumberField.
Bugfixes
[#5378] Updated map drawing behaviour when only map interaction is allowed.
Fixed invalid dates in test stories.
Added the missing ‘selected’ poperty from the manually added children.
Project maintenance
[#445] Converted another chunk of code to Typescript.
3.3.0-alpha.1 (2025-08-21)
Second preview release of the upcoming 3.3.0 version.
Project maintenance
Fixed missing underlines causing CI builds to fail
3.3.0-alpha.0 (2025-08-21)
First preview release of the upcoming 3.3.0 version.
New features
Switched from local storage to session storage for form submissions.
[#825] Added children component.
Bugfixes
[#850] Fixed missing exports for our formio module and template library.
Fixed the behaviour of
selectedproperty.
Project maintenance
Bumped dependencies to their latest (security) releases.
Added Storybook stories for
FormStart.Removed obsoleted and unused SDK embed example.
[#4879] Removed some dead code.
[#445] Converted another chunk of code to Typescript.
3.2.1 (2025-07-25)
Package metadata fix.
[#850] Added the missing formio module/template library exports to the package metadata.
3.1.3 (2025-07-25)
Package metadata fix.
[#850] Added the missing formio module/template library exports to the package metadata.
3.2.0 (2025-07-10)
Feature release.
New features
[#824] Added new partners component type. When partner details have been prefilled, they are displayed. When no details are available, the end-user can provide them (BSN, initials, last name, date of birth).
[#5132] Added appropriate error message when authentication via Yivi has failed.
Bugfixes
[#4614] Fixed required asterisk being on the line below the text of the privacy and truth statement checkbox.
[#5266] Fixed re-use of submission being offered when using an initial data reference.
[#5240] Fixed incorrect date field value format blocking form suspension.
[#5191] Fixed incorrect zoom level of the map component depending on the drawn shape.
[#5242] Fixed crashes because of browser translation plugins (like Chrome) by not allowing translations.
[#4917] Substantially reduced the impact of the UX/NL DS changes to (existing) custom themes by graciously falling back to default styling, and provided upgrade instructions for theme designers/developers.
Project maintenance
[#445] Various changes:
Refactored error-boundary code.
Removed obsoleted formio checkbox component.
Converted more code to Typescript.
Removed obsoleted checkbox (S)CCS.
Fixed test flakiness.
Added regenerator-runtime dependency.
Updated dependencies:
Upgraded to @open-formulieren/design-tokens 0.59.0.
Upgraded to @open-formulieren/formio-renderer 0.6.0.
Upgraded to storybook 8.6.12.
Upgraded CI configuration dependencies.
Upgraded to requests 2.32.4.
Upgraded to urllib3 2.5.0.
3.1.2 (2025-07-04)
Periodic bugfix release.
[#5266] Fixed re-use of submission being offered when using an initial data reference.
3.0.3 (2025-07-04)
Final bugfix release in the 3.0.x series.
[#5266] Fixed re-use of submission being offered when using an initial data reference.
3.2.0-alpha.1 (2025-05-23)
Second preview release of the upcoming 3.2.0 version.
Project maintenance
[#445] Converted code to Typescript.
3.2.0-alpha.0 (2025-04-25)
First preview release of the upcoming 3.2.0 version.
Bugfixes
[#5240] Fixed incorrect date field value format blocking form suspension.
[#5191] Fixed incorrect zoom level of the map component depending on the drawn shape.
[#5242] Fixed crashes because of browser translation plugins (like Chrome) by not allowing translations.
[#4917] Substantially reduced the impact of the UX/NL DS changes to (existing) custom themes by graciously falling back to default styling, and provided upgrade instructions for theme designers/developers.
Project maintenance
[#445] Refactored error-boundary code and converted more code to Typescript.
Updated dependencies:
Upgraded to @open-formulieren/design-tokens 0.59.0.
Upgraded to @open-formulieren/formio-renderer 0.5.0.
Upgraded to storybook 8.6.12.
3.1.1 (2025-04-16)
Periodic bugfix release.
[#5240] Fixed incorrect date field value format blocking form suspension.
[#5242] Fixed crashes because of browser translation plugins (like Chrome) by not allowing translations.
[#4917] Substantially reduced the impact of the UX/NL DS changes to (existing) custom themes by graciously falling back to default styling, and provided upgrade instructions for theme designers/developers.
3.0.2 (2025-04-16)
Periodic bugfix release.
[#5151] Fixed incorrect empty value for map component.
[#5240] Fixed incorrect date field value format blocking form suspension.
[#5155] Fixed
initial_date_referencebeing lost on language change while filling out a form.[#5195] Fixed the “start form” button being displayed in cosign flows.
[#5242] Fixed crashes because of browser translation plugins (like Chrome) by not allowing translations.
2.4.4 (2025-04-16)
Final bugfix release in the 2.4.x series.
[#5151] Fixed incorrect empty value for map component.
[#5240] Fixed incorrect date field value format blocking form suspension.
3.1.0 (2025-03-28)
Feature release
There are additional changes compared to the alpha versions. Continue reading for the full changelog, which includes the alpha versions release notes.
Warning
SDK 3.1.0 requires the backend API version 3.1.0 or newer.
Warning
We have made changes that affect (custom) themes. You likely need to specify some additional design tokens. Please see our upgrade notes for 3.1.0.
New features
[#4917] Changed placement of form “next”, “previous”, “continue later” and “log out” buttons.
[#5046] The form start button is now hidden if the maximum number of submissions is reached.
[#5033] If there’s an outage in an external service that we rely on, we now provide more useful feedback.
[#2177] You can now also draw lines and polygons on map components, in addition to point markers.
[#5003] AddressNL component styling update.
Removed asterisk next to AddressNL component label. When the component is required, only the field labels have an asterisk next to them.
Aligned address styling with other components in the submission summary.
Note
The addressNL component is not yet a fully capable replacement for
individual address fields. Currently, it’s only recommended for BRK-validation
purposes.
Note
The map component is not yet fully worked out and some improvements are
needed to optimize the user experience.
Bugfixes
[#5195] Fixed “start form” button being displayed on cosign start page.
[#5155] Fixed the url parameter “initial_data_reference” being lost after switching the form language.
[#5086] Fixed soft-required component showing warnings for hidden fields.
[#5038] Fixed missing map shapes in form submission summary.
[#4510] Fixed missing validation error messages in the submission summary.
[#4699] Fixed AddressNL validation being triggered on page load, and a crash when the AddressNL component is hidden.
Project maintenance
[#445] Started converting the codebase to Typescript.
Upgraded to @utrecht/components 7.4.0 in the process, which may affect (custom) CSS themes.
Errors in error boundaries are now captured and sent to Sentry, if configured.
Removed unused Sentry tracing.
[#76] Optimized bundle to lazy load code until it’s relevant.
[#4929] Restructured routes for and upgraded to react-router v7.
Enabled Codecov JS bundle analysis.
Separated storybook and Vitest coverage reporting.
[#724] Replaced create-react-app build toolchain with ViteJS.
Upgraded dependencies.
Upgraded to Storybook 8.6.3.
Upgraded to playwright 1.49.
Upgraded to Vitest 3.0.
Upgraded to Sentry 8.50.
Upgraded CI configuration dependencies.
Upgraded to jinja2 3.1.6.
3.0.1 (2025-03-03)
Bugfix release
[#5086] Fixed soft-required errors being shown for hidden fields.
3.1.0-alpha.1 (2025-02-20)
Second preview release of the upcoming 3.1.0 version. Containing a hotfix to ensure correct working with the backend.
Hotfix release
Fixed build assets placed in a unexpected folder, causing build errors when connecting to the backend.
3.1.0-alpha.0 (2025-02-17)
First preview release of the upcoming 3.1.0 version.
New features
[#5033] If there’s an outage in an external service that we rely on, we now provide more useful feedback.
[#2177] You can now also draw lines and polygons on map components, in addition to point markers.
[#5003] AddressNL component styling update.
Removed asterisk next to AddressNL component label. When the component is required, only the field labels have an asterisk next to them.
Aligned address styling with other components in the submission summary.
Bugfixes
[#4510] Fixed missing validation error messages in the submission summary.
[#4699] Fixed AddressNL validation being triggered on page load, and a crash when the AddressNL component is hidden.
Project maintenance
Errors in error boundaries are captured with Sentry.
Removed unused Sentry tracing.
[#76] Optimized bundle to lazy load code until it’s relevant.
[#4929] Restructured routes for and upgraded to react-router v7.
Enabled Codecov JS bundle analysis.
Separated storybook and Vitest coverage reporting.
Updated Docker Hub config file.
[#724] Replaced create-react-app build toolchain with ViteJS.
Upgraded dependencies.
Upgraded to playwright 1.49.
Upgraded to Vitest 3.0.
Upgraded to Sentry 8.50.
3.0.0 (2025-01-06)
Feature release
There are additional changes compared to the alpha versions. Continue reading for the full changelog, which includes the alpha versions release notes.
Warning
SDK 3.0.0 requires the backend API version 3.0.0 or newer.
New features
[#4984] Changed “abort” button’s text to “cancel”.
[#4321] Forms can now have a submission limit. The SDK displays appropriate messages when this limit is reached.
[#2173] The map component now supports using a different background/tile layer.
[#4320] Improved the user experience for forms with cosign
The confirmation page content is now dynamically provided by the API.
Tweaked the texts displayed in various points in the cosign process.
Cosign login options are now only displayed if the cosign request email does not use direct links. When direct links are used, the cosigner is directly taken to the cosign page without having to manually enter codes.
[#4546] It’s now possible to “soft-require” file uploads. Soft-required uploads show a warning message when no file has been uploaded, but don’t block the step submission or form progress.
[#4718] Improved accessibility when using an increased zoom level.
[#4720] Improved navigation and visibility accessibility.
[#4717] Improvement accessibility of the loader, modal components, alerts and file upload buttons.
[#4716] Improved the accessibility of form fields and associated error messages.
[#4420] Added pattern validation for AddressNL subfields.
[#4544] Added design tokens for configuring the position of the previous page link. You can now choose if the link should be at the top, the bottom or both. By default this is shown at the bottom. The ability to add an icon has been added as well.
Bugfixes
[#4918] Fixed redirects to take into account the query parameters.
[#4809] Fixed layout components in edit grid row summary.
[#4398] Fixed the initial data reference not properly being passed to the backend.
[#4600] Added an
onLanguageChangehook for container pages so they can manage their translated content on language changes if needed.
Project maintenance
Removed legacy appointment code.
[#724] Set up ESLint in CI.
Upgraded to Vite 6.
Dropped support for custom display components.
[#4920] Updated Dutch translations.
Deleted deprecated router decorator.
[#3283] Updated API endpoints to use consistent casing.
Upgraded to design-token-editor 0.6.0.
[#3283] Updated the deprecated address endpoint.
Prepare build toolchain to use Vite instead of CRA - we’ll switch over once 3.0.0 is released to Docker Hub and NPM.
Renamed .js files to .jsx.
Removed old tilde prefix in SCSS imports.
Added a parallel Vite-based build.
Migrated test runner from Jest to Vitest.
Migrated storybook builder from webpack to Vite.
Upgraded dependencies.
Upgraded to Storybook 8.4.
Upgraded to MSW 2.5
[#724] Upgraded to Jest 29 because of MSW requirements.
[#429] Updated all React tests to testing-library.
Ensured prettier checks jsx files.
[#4849] Ensured .jsx files are picked up for translation as well.
[#3283] Removed password Formio component.
[#4320] Updated stories and UX of completion view.
Updated stories after translations updates.
Updated developer docs about mocking in stories.
Cleaned up test errors/warnings due to missing mocks.
Updated Docker Hub config file.
2.5.0-alpha.1 (2024-11-27)
Second preview release of the upcoming 2.5.0 version.
New features
[#4320] Improved the user experience for forms with cosign
The confirmation page content is now dynamically provided by the API.
Tweaked the texts displayed in various points in the cosign process.
Cosign login options are now only displayed if the cosign request email does not use direct links. When direct links are used, the cosigner is directly taken to the cosign page without having to manually enter codes.
[#4546] It’s now possible to “soft-require” file uploads. Soft-required uploads show a warning message when no file has been uploaded, but don’t block the step submission or form progress.
[#4718] Improved accessibility when using an increased zoom level.
[#4720] Improved navigation and visibility accessibility.
[#4717] Improvement accessibility of the loader, modal components, alerts and file upload buttons.
[#4716] Improved the accessibility of form fields and associated error messages.
Project maintenance
Ensured prettier checks jsx files.
[#4849] Ensured .jsx files are picked up for translation as well.
[#3283] Removed password Formio component.
Fixed button stories/documentation page.
[#4320] Updated stories and UX of completion view.
Renamed .js files to .jsx.
Removed old tilde prefix in SCSS imports.
[#724] Upgraded to Jest 29 because of MSW requirements.
Updated story after translations update.
Upgraded to MSW 2.5.
Updated actions with explicit mocks.
Upgraded to Storybook 8.3.6.
2.4.2 (2024-11-22)
Periodic bugfix release
[#4772] Fixed select component with integer values.
2.3.4 (2024-11-22)
Periodic bugfix release
[#4772] Fixed select component with integer values.
2.5.0-alpha.0 (2024-10-23)
First preview release of the upcoming 2.5.0 version.
New features
[#4544] Added design tokens for configuring the position of the previous page link. You can now choose if the link should be at the top, the bottom or both. By default this is shown at the bottom. The ability to add an icon has been added as well.
Bugfixes
[#4398] Fixed the initial data reference not properly being passed to the backend.
2.4.1 (2024-10-22)
Periodic bugfix release
[#4600] Added an
onLanguageChangehook for container pages so they can manage their translated content on language changes if needed.
2.3.3 (2024-10-22)
The published 2.3.2 version was broken and missing a number of fixes, this is rectified in 2.3.3.
2.3.2 (2024-10-22)
Periodic bugfix release
[#4600] Added an
onLanguageChangehook for container pages so they can manage their translated content on language changes if needed.
2.4.0 (2024-10-02)
Feature release
There are no changes compared to the beta version. Continue reading for the full changelog, which includes the alpha and beta release notes.
Warning
SDK 2.4.0 requires the backend API version 2.8.0 or newer.
New features
[#4542] Email address components now support a verification flow to prove ownership of and access to the provided email address.
[#4545] Added an optional introduction page before the form start page.
[#4543] You can now optionally enable a short progress summary for a form, describing the current step number and total step count.
[#4515] Updated Dutch translations from formal to informal variant.
[#4397] Added support for an ‘initial data reference’ parameter so that form fields can be pre-populated from existing data.
Bugfixes
Fixed the click action not being properly suppressed on disabled buttons.
Fixed the modal close button/icon not being accessible.
Project maintenance
Improved the handling of modals in Storybook.
Bumped some libraries for their latest security fixes.
2.4.0-beta.0 (2024-09-16)
Beta release for the upcoming 2.4.0 release.
The stable version is scheduled to be released at the end of September.
Warning
SDK 2.4 requires the backend API version 2.8.0 or newer.
New features
[#4542] Email address components now support a verification flow to prove ownership of and access to the provided email address.
[#4545] Added an optional introduction page before the form start page.
[#4543] You can now optionally enable a short progress summary for a form, describing the current step number and total step count.
Bugfixes
Fixed the click action not being properly suppressed on disabled buttons.
Fixed the modal close button/icon not being accessible.
Project maintenance
Improved the handling of modals in Storybook.
Bumped some libraries for their latest security fixes.
2.4.0-alpha.0 (2024-08-09)
First preview release of the upcoming 2.4.0 version.
Updated dependencies to latest security releases.
[#4397] Added support for an ‘initial data reference’ parameter so that form fields can be pre-populated from existing data.
[#4515] Updated Dutch translations from formal to informal variant.
2.3.1 (2024-07-09)
Feature release - this changelog also includes the changes from the alpha release.
Warning
SDK 2.3.0 requires the backend API version 2.7.0 or newer.
Note
Version 2.3.0 does not exist - a beta build was accidentally released to npm as 2.3.0.
New features
[#4115, #4208] Support different kinds of GovMetric feedback (aborting the form vs. completing the form).
[#3993] The
addressNLcomponent can now derive street name/city from postcode and house number.[#4423] The
addressNLcomponent now supports single column layout mode too, in addition to the existing double column layout.
Bugfixes
[#4382] Fixed the “pause modal” not being submittable after validation errors and added better validation.
[#4328] Fixed the Govmetric smiley images not rendering.
[#4199] Fixed starting submissions anonymously while already logged in. Before, the existing authentication metadata was added as if you started the form with login.
[#4158] Fixed custom error messages not being picked up for datetime, date and time components.
[#4009] Fixed fieldset components accidentally displaying a value in the summary.
[#4082] Fixed multiple submissions being created when starting a form.
[#4172] Fixed a crash when validating a date against a minimum/maximum date.
[#4130] Forms requiring payment no longer offer the user to go back to the main page.
[#4201] Fixed a crash when a map component is hidden.
[#4222] Fixed being able to circumvent the maximum number of files limit.
[#4220] Fixed “optional” translation for radio and selectboxes components.
[#4207] Fixed styling overflow for select dropdown.
Project maintenance
Dropped support for SDk 2.0 and older.
Deprecations
Location autofill in textfield components is deprecated and will be removed in SDK 3.0. Instead, use the
addressNLcomponent.
2.2.3 (2024-06-14)
Bugfix release
[#4328] Fixed the Govmetric smiley images not rendering.
2.2.2 (2024-05-08)
Bugfix release
[#4115] Support different kinds of GovMetric feedback (aborting the form vs. completing the form).
2.3.0-alpha.0 (2024-05-01)
First preview release of the upcoming 2.3.0 version.
[#4009] Fixed fieldset components accidentally displaying a value in the summary.
[#4082] Fixed multiple submissions being created when starting a form.
[#4172] Fixed a crash when validating a date against a minimum/maximum date.
[#4130] Forms requiring payment no longer offer the user to go back to the main page.
[#4115, #4208] Support different kinds of GovMetric feedback (aborting the form vs. completing the form).
[#4201] Fixed a crash when a map component is hidden.
[#4222] Fixed being able to circumvent the maximum number of files limit.
[#4220] Fixed “optional” translation for radio and selectboxes components.
[#4207] Fixed styling overflow for select dropdown.
2.2.1 (2024-04-16)
Bugfix release
[#4082] Fixed duplicate creation of submissions when starting a form after authenticating.
[#4172] Fixed the minimum date for a date field incorrectly saying the input is invalid.
2.2.0 (2024-03-22)
Feature release - all the changes from 2.2.0-alpha.0 are also included!
New features
[#3855] Added better error handling on submission start, e.g. crashes because of a DMN backend being down.
[#3791] The abort button is now consistently applied through all variants of authenticated/non-authenticated form submissions, turning into a “logout” button when relevant.
[#3957] Updated to the new eIDAS logo.
[#483] Added support for descriptions in addition to the label for radio and selectboxes options.
Bugfixes
[#654] Fixed a styling regression in radio/selectboxes.
Project maintenance
[#650] Replaced the Yarn package manager with
npm.Upgraded a number of dependencies to their latest available versions.
[#662] Upgraded to Storybook 8.
[#645] The session expiry notice is now its own route, making cleanup easier.
Bumped github actions to their latest versions.
Replaced Formiojs with a fork to address Formio CDN referencess to vulnerable versions of WYSIWYG libraries. Note that this was not deemed a security concern by us, since Internet Explorer is required which is end of life.
2.1.4 (2024-03-14)
Bugfix release
[#3845] Fixed WYSIWYG content missing styling in summary page.
2.0.4 (2024-03-14)
Bugfix release
[#3845] Fixed WYSIWYG content missing styling in summary page.
1.5.8 (2024-03-14)
Bugfix release
[#3845] Fixed WYSIWYG content missing styling in summary page.
2.2.0-alpha.0 (2024-02-19)
First preview release of the upcoming 2.2.0 version.
Features
[#3680] Co-sign login now supports all authentication plugins available on the form.
The “required field asterisk” can now be used in themes other than the Open Forms theme.
[#2617] Added UI support for dynamic no-payment-required situations.
Bugfixes
Added the base class
utrecht-form-label--openformson component labels where it was missing so that styling can be properly isolated.[#642] Updated DigiD error message text.
[#3835] Fixed the progress indicator displaying non-applicable steps despite the being configured to hide them instead of appending a suffix.
Project maintenance
Fixed some test warnings.
2.1.3 (2024-02-06)
Bugfix release
Included missing GovMetric translations.
[#642] Updated DigiD error message text.
2.0.3 (2024-02-06)
Bugfix release
[#642] Updated DigiD error message text.
[#3805] Fixed the form field label if a field is not required and asterisks for required fields are disabled.
1.5.7 (2024-02-06)
Bugfix release
[#642] Updated DigiD error message text.
1.4.8 (2024-02-06)
Bugfix release
[#642] Updated DigiD error message text.
2.1.2 (2024-01-25)
This release fixes some defects in SDK 2.1.x
[#180] Added missing UI code for GovMetric analytics.
[#3805] Fixed the form field label if a field is not required and asterisks for required fields are disabled.
2.1.1 (2024-01-25)
Fixed a release blocker
[#3616] Fixed not recording query string parameters in hash-based routing embed mode
2.1.0 (2024-01-25)
Feature release - all the changes from 2.1.0-alpha.0 are also included!
New features
[#3607] Added a new component type
addressNL, taking postcode and house number, which supports validation against the BRK. This component may replace the address auto-complete (based ontextfield) in the future.Updated some literals to be more accessible
[#3690] Update texts for authentication plugin outages to be B1-level.
[#619] Update texts in the map component to be B1-level.
⚠️ We have adapted more NL Design System components for our SDK, please review the 2.1.0 upgrade notes. If you’re developing your own theme, this may break some styling. Users of the default Open Forms theme (even if you tweak some design tokens in the backend) are not affected.
[#471] Refactored the
FormStepSummaryto make use ofDataListandHeading2components.[3178] Reworked the layout scaffolding to support NL DS principles - appearance can now be configured through design tokens.
We now expect an outer wrapper with the class name
utrecht-document, any CMS making use of embedding should ensure this class is applied in a form container ( ideally you apply this to thehtmlorbodyelement).
[#3726] Reworked the payment and confirmation page flows - it is now more obvious that the user still needs to be pay (if payment is relevant).
[#3778] Content components displayed on the summary do not display a name/label, to be consistent with email and PDF summary.
Bugfixes
[#3671] Fixed max date validation when “today” is included.
Project maintenance
Upgraded the development tooling to Node 20 (LTS).
Upgraded playwright to be compatible with Debian 12.
Upgraded dependencies to reduce the amount of warnings during
yarn install.[#584] Added mobile snapshots to Storybook and Chromatic configuration to run visual regression tests on multiple viewports.
Marked the
stable/1.3.xrelease branch as end-of-life.[#614] The Leaflet Dutch coordinate system code is replaced with a reusable library.
2.0.2 (2024-01-12)
Bugfix release
[#3671] Fixed max date validation when “today” is included.
2.1.0-alpha.0 (2023-12-15)
First preview release of the upcoming 2.1.0 version.
Features
[#469] Repeating groups now use NL DS data-list components and appearance is configurable through design tokens.
[3178] Reworked the layout scaffolding to support NL DS principles - appearance can now be configured through design tokens.
[#36] Reworked the implementation of the progress indicator, you can now use existing NL DS component design tokens and further tweak the appearance through custom design tokens. The scrolling behaviour and text overflow/cutoff (on mobile) is now also fixed, and the component is not invasive anymore when embedding the SDK in a third party CMS.
[#3651] Changed the optional field label suffix to more accessible language.
Bugfixes
[#3576] Repeating groups summary no longer displays colons when no component label is available.
Fixed regression in leaflet styles not being included in CSS bundle.
[#3362] Fixed support for backend-to-frontend server side redirects when using hash-based routing.
[#3612] Fixed the maximum date validation not being run when both
minandmaxare specified.[#3611] Fixed time component validation to allow the exact min/max value (bounds are now inclusive).
[#3450] Fixed text overflow not being properly hyphenated.
[#607] Fixed the regular expression for phone number validation to disallow leading dashes or spaces.
[#3647] Applied a bandaid fix to Formio/momentjs turning in invalid time value into the literal string ‘Invalid date’. Instead, the invalid value is now kept (and the validation error is still displayed).
Project maintenance
Cleaned up the columns CSS.
Refactored routes for
ManageAppointment.Fixed
localStoragecleanup in storybook.
1.5.6 (2023-12-12)
Periodic bugfix release
[#3647] Applied a bandaid fix to Formio/momentjs turning in invalid time value into the literal string ‘Invalid date’. Instead, the invalid value is now kept (and the validation error is still displayed).
Applied (a partial) fix for hash-based routing when embedding a form. Forms load properly now and can be submitted, however the resume-from-backend flow still has known issues for which you’ll need SDK 2.1.
1.4.7 (2023-12-12)
Periodic bugfix release
[#3647] Applied a bandaid fix to Formio/momentjs turning in invalid time value into the literal string ‘Invalid date’. Instead, the invalid value is now kept (and the validation error is still displayed).
1.3.9 (2023-12-12)
Periodic bugfix release
[#3647] Applied a bandaid fix to Formio/momentjs turning in invalid time value into the literal string ‘Invalid date’. Instead, the invalid value is now kept (and the validation error is still displayed).
2.0.1 (2023-12-08)
Open Forms SDK 2.0.1 fixes some defects.
[#3612] Fixed the maximum date validation not being run when both
minandmaxare specified.[#3611] Fixed time component validation to allow the exact min/max value (bounds are now inclusive).
[#607] Fixed the regular expression for phone number validation to disallow leading dashes or spaces.
[#3647] Applied a bandaid fix to Formio/momentjs turning in invalid time value into the literal string ‘Invalid date’. Instead, the invalid value is now kept (and the validation error is still displayed).
1.5.5 (2023-11-09)
Hotfix release
[#3536] Fixed a crash in appointments when clearing or specifying an invalid number of persons for a product/service
[#3572] Fixed a race condition on WebKit that would cause the submit button to get stuck in the disabled state.
[#3577] Fixed an issue with checkbox/radio buttons on WebKit that would make only the label clickable and not the checkbox/radio itself.
[#587] Fixed a checkbox label focus outline regression.
1.4.6 (2023-11-09)
Hotfix release
[#3572] Fixed a race condition on WebKit that would cause the submit button to get stuck in the disabled state.
1.3.8 (2023-11-09)
Hotfix release
[#3572] Fixed a race condition on WebKit that would cause the submit button to get stuck in the disabled state.
2.0.0 (2023-11-08)
💥 Breaking changes ahead!
We’ve opted to bump the major version number of the SDK due to a number of refactors with (potential) breaking changes to existing environments. This release was originally scheduled to become v1.6.0, so all the 1.6.0-alpha.0 changes are included in this version too.
Warning
SDK 2.0.0 requires at least version 2.4.0 of the Open Formulieren API.
Breaking changes
Button component refactor
We’ve refactored all of our button component usage with the utrecht-button component
from the NL Design System community. The design tokens that were used before to change
the appearance of buttons no longer work, instead you must specify the equivalent
utrecht-button design tokens. We’ve provided a mapping:
--utrecht-button-primary-action-focus-border-colorhas#000000(black) in the Open Forms theme.--utrecht-button-primary-action-danger-focus-border-colorhas#000000(black) in the Open Forms theme.--utrecht-button-secondary-action-danger-background-colortakes the value of the old--of-button-danger-bg.--utrecht-button-secondary-action-danger-colortakes the value of the old--of-button-danger-fg.--utrecht-button-secondary-action-focus-border-colortakes the value of the old--of-color-focus-border.--utrecht-button-subtle-danger-colortakes the value of--of-color-danger.--utrecht-button-subtle-danger-background-colortakes the value of--of-color-bg.--utrecht-button-subtle-danger-hover-background-colortakes the value--of-color-bg.--utrecht-button-subtle-danger-active-background-colortakes the value of the old--of-button-danger-active-bg.--utrecht-button-disabled-color. This does not take the value of an old token. For the Open Forms theme this is now#ffffff.--utrecht-button-disabled-background-color. This does not take the value of an old token, the colour was previously obtained by graying out the primary button. For the Open Forms theme, this is now#b0b0b0.--utrecht-action-disabled-cursor. This does not take the value of an old token. It controls the looks of the cursor when hovering a disabled button. For the Open Forms theme, this is nownot-allowed.--utrecht-action-submit-cursor. This does not take the value of an old token. It controls the looks of the cursor when hovering over a submit button. For the Open Forms theme, this is nowpointer.
Additionally, in the .openforms-theme we apply some custom CSS overrides that may
need to be replicated in your own theme since they’re now scoped to our own theme
selector.
Unfortunately, setting up a backwards compatible layer was considered too complex.
Buttons that look like links
These are now actual links instead of button elements. If you have automated test scripts, they may fail on these links now when querying by accessible role.
Formio time component cleanup [#3531]
The time component min/max time validation is moved into the validate namespace, for
a consistent builder configuration.
Existing component definitions need to be updated: component.minTime becomes
component.validate.minTime, and a similar action is needed for maxTime. This is
done automatically in the Open Forms backend, so it only requires attention if you have
other form definition sources.
Alert component refactor
The alert component has also been refactored to use the Utrecht alert component. In order to maintain the same styles as in the previous version, the following Utrecht design tokens should be set:
--utrecht-alert-warning-background-colorwith the value of--of-alert-warning-bg.--utrecht-alert-info-background-colorwith the value of--of-alert-info-bg.--utrecht-alert-error-background-colorwith the value of--of-alert-error-bg.--utrecht-alert-icon-error-colorwith the value of--of-color-danger.--utrecht-alert-icon-info-colorwith the value of--of-color-info.--utrecht-alert-icon-warning-colorwith the value of--of-color-warning.--utrecht-alert-icon-ok-colorwith the value of--of-color-success.
We’ve set up a backwards compatibility layer for these design tokens, so they won’t break just yet, but we urge you to update your themes.
New features
[#437] Added support for Home/End keypresses in the select component search box to move the cursor to the start/end of the input.
We’re using more NL Design System components instead of rolling our own
[#571] Removed the openforms-form-control wrapper around form fields. The
utrecht-form-fieldandutrecht-form-fieldsetcomponents already fulfill this role.[#462] Replaced our own button component/variants with the
utrecht-buttoncomponent.[#454] The editgrid (repeating group) markup and styling now make better use of NL DS & NL DS principles.
[#464] Navigation links that used to be buttons-styled-like-a-link are now actual links for correct, accessible semantics.
[#467] Replaced our own alert component with the
utrecht-alertcomponent.
[#2952] Added support for steps that are initially not-applicable.
[#524] Improved accessible labels on number fields with suffixes.
Bugfixes
[#3510] Fixed the closest address under the map component being overlaid on the next field.
[#546] Fixed excessive amounts of API calls firing in new appointments.
[#2656] Fixed the address autofill when the fields are nested in repeating groups.
[#3485] Fixed hidden components messing with the vertical spacing between components.
[#3536] Fixed appointment form crashes when number field input was not a valid number.
[#3572] Fixed a race condition on WebKit browsers.
Project maintenance
Fixed tests breaking due to DST change.
Bumped design-token-editor to latest version.
1.5.4 (2023-10-30)
Periodic bugfix release
Fixed the width of the progress indicator on mobile devices.
[#3510] Fixed the closest address under the map component being overlaid on next field.
[#2656] Fixed the address autofill when the fields are nested in repeating groups.
[#546] Fixed excessive amounts of API calls firing in new appointments.
1.4.5 (2023-10-30)
Periodic bugfix release
Fixed the width of the progress indicator on mobile devices.
[#2656] Fixed the address autofill when the fields are nested in repeating groups.
[#3523] Fixed not sending privacy policy information to the backend when the field is not rendered.
1.3.7 (2023-10-30)
Periodic bugfix release
Fixed the width of the progress indicator on mobile devices.
[#2656] Fixed the address autofill when the fields are nested in repeating groups.
1.6.0-alpha.0 (2023-10-02)
First preview release of the upcoming 1.6.0 version.
Features
[#3300] Appointments: added product pre-selection via query string parameters.
[#1884] Added more flexibility for custom time component validation errors.
[#3443] Added (custom) validation errors for date components and allow manual entering of invalid dates so that validation errors are displayed instead of input being discarded.
[#3414] Co-sign authentication buttons now have more distinctive styling (+ support theming via design tokens).
[#3383] When using multiple backend validation plugins on a plugin, they now accept the user input as soon as any plugin accepts it rather than all plugins.
Bugfixes
Fixed width of progress indicator on mobile.
[#3419] Fixed tooltips not applying design tokens everywhere.
[#3385] Fixed inconsistent styles because of browser validation errors being shown rather than own validation messages.
Project maintenance
Added
stable/1.5.xbranch to CI configuration.The SDK build artifact should now include the version number.
[#309] Added story for cosign component.
Fixed products schema proptype warning.
Reorganized appointments code.
1.5.3 (2023-09-29)
Hotfix for WebKit based browsers
[#3511] Fixed user input “flickering” in forms with certain (backend) logic on Safari & other WebKit based browsers.
1.4.4 (2023-09-29)
Hotfix for WebKit based browsers
[#3511] Fixed user input “flickering” in forms with certain (backend) logic on Safari & other WebKit based browsers.
1.5.2 (2023-09-25)
Periodic bugfix release
[#3418] Fixed asterisk being shown on not-required selectboxes/radio fields.
[#3404] Fixed inaccurate amount of products being sent to the backend in appointment forms.
[#3385] Disabled browser validation on form.
1.4.3 (2023-09-25)
Periodic bugfix release
[#3385] Disabled browser validation on form.
1.3.6 (2023-09-25)
Periodic bugfix release
[#3385] Disabled browser validation on form.
1.2.11 (2023-09-25)
Final bugfix release in the 1.2.x series.
[#3385] Disabled browser validation on form.
1.5.1 (2023-08-24)
Hotfix release
The truth checkbox statement error message key was not aligned with the value received from the backend.
1.5.0 (2023-08-23)
New SDK minor version.
We’ve worked on a couple of big topics in this release:
a tailored flow for appointment forms. Legacy appointments features are now deprecated and will be removed in SDK 2.0.
improved handling of maps/geographical information.
various improvements for NL Design System integration, which is still an ongoing effort.
Warning
SDK 1.5.0 requires at least version 2.3.0 of the Open Formulieren API.
This release includes the changes from 1.5.0-alpha.0.
Features
[#2174] Added a map search widget to find locations based on address auto-complete search.
[#3045] Added support for affixes in Form.io (number) fields.
[#2176] Added gesture handling for the map component.
[#3203] Added more generic support for “submission confirmation” checkboxes for the user to agree to.
[#3332] Ensure that the list of available appointment products is retrieved with the context of the already selected products.
[#1884] Added support for custom validation errors in the Form.io time component.
[#493] Added support for error message translations in new form validation library.
[#492] Added field-reset behaviour to dependent fields in appointment form.
[#3299] The amount field is now read-only when the appointment form does not support multiple products.
[#506] Ensured that any backend processing errors during appointment creation are displayed to the end user.
[#508] Added state checks to prevent users directly accessing nested URLs in appointment forms.
Bugfixes
[#515] Fixed date presentation of dates in January having an empty month.
[#517] Updated react-leaflet to be compatible with React 18.
[#3312] Fixed broken select component styling due to CSP errors.
[#514] Appointment form pages now always allow submit, deferring client-side validation until the submit button is clicked.
[#3322] Fixed broken appointment cancel routes.
[#3327] Fixed order of style imports breaking the radio and checkbox styling in production builds.
[#505] Added session storage cleanup to session expiry reset handler.
Project maintenance
[#3322] Reworked calculation of “form URL” to record the public (root) URL of a form during submission creation in the backend.
Added storybook test runner to CI configuration and coverage reporting from Storybook.
Updated dependencies via @dependabot.
Documented how to deal with non-generic validation error translations using Zod.
Prevent errors on test teardown due to missing
actcalls.[#463] Added SDK version number to Javascript bundle.
1.5.0-alpha.0 (2023-07-24)
First preview release of the upcoming 1.5.0 version.
Warning
SDK 1.5.0-alpha.0 requires at least version 2.3.0-alpha.0 of the Open Formulieren API.
Features
Implemented a bunch of (non-formio) form components:
[#433] Added an input group component to split a single field in multiple user input elements for better user experience.
[#433] Added the input group widget for date fields (day, month, year) with localization.
[#465] Added the radio field component.
NL Design system improvements
[#468] Reworked selectboxes to have NL DS markup and styling.
[#475] Reworked radio inputs to have NL DS markup and styling.
[#476] Reworked checkboxes to have NL DS markup and styling.
[#1892] Added tooltips to formio components.
[#3209] Added base tooltip styling, configurable via design tokens.
[#2471] Appointments rework - there is now a dedicated appointment flow without Form.io
Note
This is currently in preview to get some early feedback, but we are aware of a number of issues.
[#3066] Added contact details step, showing the required fields as exposed by the backend.
Appointment data submitted in any step is persisted in the session storage so that it survives hard-refreshes. This also makes it possible to open multiple forms in multiple browser tabs/windows.
[#3067] Exposed the appointment flow in the main app routes.
UI toggles between single/multi-product depending on backend support.
[#435] Added client-side user input validation.
[#2175] Support initial map center and zoom level from backend configuration.
Bugfixes
[#3268] Fixed Piwik Pro Referrer URL.
Project maintenance
Bumped
requestsin CI tooling following security reports via @dependabot.Upgraded to Storybook 7.
Added Amsterdam and Rotterdam (WIP) design tokens and preview themes to Storybook.
Added loader component to Storybook.
[#310] Added basic map component to Storybook.
Fixed (some) proptype warnings in tests.
[#3067] Added submission completion component to Storybook.
Refactored components to retrieve data via context instead of props, to make them more suitable for react-router’s data routers.
1.4.0 (2023-06-21)
SDK for the upcoming Open Forms 2.2 release.
Warning
SDK 1.4.0 requires at least version 2.2.0 of the Open Formulieren API.
Features
[#2789] The text content of the suspend/pause modal is now retrieved from the API.
[#2240] Added hash fragment routing option, especially interesting for parties embedding the SDK in their CMS or SPA/PWA who can’t implement catch-all routes.
[#2788] Renamed/rephrased the form entry point page title to “start page”.
[#2921] Added the form title back to every step page so that both form and step title are displayed.
[#2444] Added option to hide non-applicable steps in the overview/progress indicator.
[#2863] Updated the order of parts in the document title for better accessibility.
[#3004] Form suspension can now be disabled.
[#396] Radio, checkbox and selectboxes components can now be themed using NL Design System.
[#1530] Implemented entirely new co-sign flow and deprecated the existing one.
[#2809] The submission PDF report download link title is now configurable.
Implemented a number of form components using NL Design System for non-formio forms:
[#3057] Text field.
[#3059] Email field.
[#3058] Number field, with widgets for small and large numbers and localization.
[#3061, #420] Select field, with static and dynamically retrieved options.
[#3060] Added a datepicker-based date field.
[#442] These should all be themeable with the appropriate design tokens - see our storybook.
[#2471, #3062, #3063, #3065, #3067] (experimental) Started appointment form rework UX.
Bugfixes
[#2760] Fixed checkbox value not being capitalized on summary page.
[#2077, #2888] Fixed “previous” link and privacy consent checkbox not being reachable with keyboard navigation.
[#2907] Fixed long form names being truncated with an ellipsis - they now wrap.
[#2903] Fixed unintended clearing of number/currency data with backend logic.
[#2911] Fixed support for heic/heif file types.
[#2912] Fixed disappearing file upload drag and drop area after deleting a succesful upload.
[#2909] Fixed the cursors jumping back to the start of email fields.
[#2905] Fixed overflow being visually cut off in time field.
[#2939] Fixed co-sign component error ‘missing next parameter’.
[#2813] Fixed inconsistent styling of add-buttons in varous places.
[#2875] Fixed SiteImprove analytics, for real this time.
[#2986] Fixed users accidentally restarting a form submission when they navigate back to the start page.
[#2929] Fixed a cache/storage invalidation bug which would sometimes lead to authentication errors.
[#3040] Fixed user-unfriendly validation errors for invalid file-type uploads.
[#2808] Fixed overflowing filenames in upload validation errors.
[#3096] Fixed validation errors inadvertedly being removed in repeating groups, blocking the form (step) submission.
Project hygiene
Fixed MSW relative path for deployed version of storybook.
[#308] Documented the file upload component in storybook.
Automated updating the Docker Hub SDK description/README.
Documented the Form step modal in storybook.
Removed 1.1.x series from supported versions.
[#3056] Added
FormikDecoratorfor storybook to support Formik forms.Upgraded to React 18.
Upgraded to react-router v6.
Removed a bunch of CSS in favour of NL DS community components.
Moved developer documentation to be better visible (at the top).
Refactored some internal components to now use the new components from
components/forms.Documented the appointment cancellation components in Storybook.
Upgraded react-intl to v6.
1.3.4 (2023-06-21)
Periodic bugfix release
[#2875] Fixed SiteImprove analytics, for real this time.
[#2929] Fixed a cache/storage invalidation bug which would sometimes lead to authentication errors.
[#3096] Fixed validation errors inadvertedly being removed in repeating groups, blocking the form (step) submission.
1.2.9 (2023-06-21)
Periodic bugfix release
[#2875] Fixed SiteImprove analytics, for real this time.
[#2929] Fixed a cache/storage invalidation bug which would sometimes lead to authentication errors.
[#3096] Fixed validation errors inadvertedly being removed in repeating groups, blocking the form (step) submission.
1.3.3 (2023-04-19)
[#2875] Patched and confirmed fix for SiteImprove analytics tracking
1.2.8 (2023-04-17)
Periodic bugfix release
[#2903] Fixed unintended clearing of number/currency data with backend logic
[#2912] Fixed disappearing file upload drag and drop area after deleting a succesful upload.
1.1.4 (2023-04-17)
This release marks the end-of-life (EOL) of the 1.1.x series.
[#2903] Fixed unintended clearing of number/currency data with backend logic
[#2912] Fixed disappearing file upload drag and drop area after deleting a succesful upload.
1.3.2 (2023-04-14)
Periodic maintenance release
[#2909] Prevent the cursors jumping back to the start of email fields.
[#2939] Fix co-sign component error ‘missing next parameter’.
1.3.1 (2023-03-31)
Periodic maintenance release
[#2912] Fix disappearing drag and drop area when removing a file from the upload file widget.
[#2911] Delegate validation of .heic and .heif files to the backend.
[#2903] Prevent number and currency fields to re-fill themselves upon input deletion.
[#2907] Improve the styling when titles are too long to fit on one line (avoid clipping them with ellipsis).
[#2077] + [#2888] Enable reaching the “previous page” button with keyboard navigation.
1.3.0 (2023-03-01)
Open Forms SDK 1.3.0 feature release.
This feature release contains roughly the following improvements compared to 1.2.0:
Added support for multilingual forms
Improved accessibility
Improved mobile user experience
Components are now organized in smart/presentational parts to make programmatic overriding/replacing easier
More re-use of NL Design System components and principles + better design token documentation
See below for the detailed changes since the beta version.
Warning
SDK 1.3.0 requires at least version 2.1.0-rc.0 of the backend API.
Features
[#322] The focus-style ring color of login icons now adapts to the icon appearance (dark vs. light).
[#2646] The privacy policy accept/reject is now recorded in the backend.
[#2675] The progress indicator now stays in the viewport on non-mobile devices.
[#337] Added support for translations to the group label of repeating groups
Bugfixes
[#348] Fixed unintended horizontal scroll on mobile.
[#2676] Fixed/improved mobile behaviour.
Fixed regressions introduced between 1.2.x and 1.3.0 beta.
The progress indicator now closes after navigating.
Fixed overflowing text when large unbreakable words are present.
Fixed overflowing text in titles with large unbreakable words.
Reduced visual clutter due to repeated elements.
Added more spacing between title and body on start page.
[#2686] Fixed regression in options menu of dropdowns.
[#2708] Fixed rendering the missing value
0in summary pages.[#2692] Fixed (visible) file input element being appended to the DOM by Formio.
[security#19] Escape textarea content to prevent self-XSS.
[security#22] Escape file upload user-generated content to prevent self-XSS.
Project hygiene
Available/used design tokens (globally/per component) are now automatically documented in storybook from the style-dictionary build artifacts. Theme designers can use this information to find relevant tokens.
Organized code of a number of components (Button, Anchor) into their own directories.
Replaced deprecated Github Actions
set-outputcommand.[#311] Added repeating group component to Storybook documentation.
[#365] Replaced storybook API mocks with MSW mocks.
[#366] Added the
FormStepcomponent to the private API documentation in Storybook.Documented how to document stories in storybook.
[#368] Refactored tests to use MSW mocks
1.2.7 (2023-03-01)
Security release (low severity)
[security#22] Fixed additional missing user-input escape when the filename of uploads is reflected in backend validation errors.
1.1.3 (2023-03-01)
Security release (low severity)
[security#19] Escape textarea content to prevent self-XSS.
[security#22] Fixed additional missing user-input escape when the filename of uploads is reflected in backend validation errors.
1.2.6 (2023-02-23)
Security release (low severity)
When HTML is used in the filename of an upload, self-XSS is possible. The impact is limited when using a content-security policy blocking inline scripts.
[#1351] Allow negative numbers and currencies
[security#22] Escape file upload user-generated content to prevent self-XSS.
1.1.2 (2023-02-09)
Periodic maintenance release
[#1832] Debounce the location autofill API calls
[#1868] Ensure that invalid data is still kept in the client-side data state (fix for new bug in #1526)
[#1351] Allow negative numbers and currencies
[security#22] Fixed self-XSS through bad filenames in file-upload component
1.3.0-beta.0 (2023-01-30)
First beta version of the SDK.
Warning
SDK 1.3.0 requires at least version 2.1.0-beta.0 of the backend API.
This beta version marks the feature freeze for the 1.3.0 SDK version (and the 2.1.0 backend version).
Features
[#2266] Added various
aria-*attributes and more descriptive messages to improve accessibility[#2276] Added attributes to validation error messages and containers for improved accessibility
[#2267] Improved accessibility of navigation elements
[#2516] Use consistent ‘bin’ icons for delete buttons/icons instead of crosses
[#2557] Added datetime component type
Bugfixes
Fixed incorrect
inputTypevalue for time component story[#2440] Fixed hidden components being displayed in repeating groups
[#2502] Fixed appearance of disabled progress indicator links
[#2377] Fixed link-hover theme configuration not being applied consistently. Note: you should now be using the
--utrecht-link-*design tokens.[#2539] Fixed mime type validation for mime types unknown by the browser (such as
.msg)
Project maintenance
[#325] Fixed Content component story
[#307] Added more components to Storybook documentation: Body, Fieldset, nested components
Added more documentation in
src/components/FormStep.jsRemoved unused table component
[#335] Configured turbosnap in Chromatic UI to save snapshots
Updated the contributing guidelines and technical vision
1.2.5 (2023-01-19)
Security release (low severity)
This seemed to only be triggered in form configurations with textareas and data pickers, while the end-user needs to input malicious content by themselves. Additionally, using a content-security policy blocking inline scripts severely hinders the exploitability.
[security#19] Escape textarea content to prevent self-XSS.
1.3.0-alpha.1 (2022-12-19)
Second alpha for the 1.3.0 series
This release brings support for custom display-components via an experimental API. The
main OpenForm constructor now accepts a displayComponents object option, mapping
component labels to callbacks accepting the necessary props.
Which props must be supported, are documented in Storybook. Display components have their own Story and documentation section. You can of course also find inspiration by checking the code of our default components.
Features
[#1517] The
Formcomponent is now split into a smart and display component. This is the first pass at a component-replacement API for developers integrating the SDK.[#2374] The progress indicator is now split into a smart and display component, making it possible to replace this in your own application stack.
[#2267] Form step names are now wrapped in headings in the summary page
[#2272] Navigating between form steps/phases now sets accessible page titles
[#2270] added focus styles to buttons and signature refresh button
[#2447] Login buttons structure refactor, accounting for authentication plugins that work via ‘machtigen’ principles. This also splits the component into a smart and display component that can be replaced.
Bugfixes
[#2384] Fixed language switch before logging on/starting the form
[#2391] Fix loading translated literals and progress steps
[#2406] Make required checkboxes consistent in style if no asterisks are used
[#2407, #2431] Scroll validation errors into view only on submit
[#2465] Added user input marker to some Formio templates which should prevent accidental static translations to be loaded from user input
[#2488] Force logic re-evaluation on repeating groups row delete
Project maintenance
Switched to using organization-wide project boards, allowing us to create and track issues directly in the SDK repository
[#304] Added Formio
signaturecomponent to Storybook[#305] Added Formio
selectboxescomponent to Storybook[#306] Added Formio
contentcomponent to StorybookAdded import-sorting plugin to prettier
Fix code previews in formio stories
Fix flatpickr locale error in
datecomponent stories[#2465] Added example to Storybook for radio option labels with anchors/links embedded
Update changelog title so it can be included in the backend docs build
1.3.0-alpha.0 (2022-11-21)
First alpha for the 1.3.0 series
Open Forms now aims to publish an alpha version every 4 weeks, and a new (minor) version every quarter.
Warning
The default Open Forms theme is now only applied within the
.openforms-theme selector. If you embed the SDK 1.3, you need to ensure a/the
parent element has this class name.
Features
Added NL Design System class names to form.io components
Added Utrecht component library devDependencies
Use NL Design System React components under the hood
Added
TableHeadercomponentIntegrate utrecht-button component design tokens
Integrate textbox/textarea design tokens
[#2126] Reworked “delete” icons to be accessible via keyboard navigation
[#2225] Only emit default styles/design tokens in openforms-theme scope
[#2232] Added support form translations configuration (enabled/disabled)
[#2253] Added
LanguageSelectioncomponent presenting available languages[#2254] Conditionally render
LanguageSelection(depending if translations are enabled for the form)[#2255] Added
I18NManagerto manage the currently active locale (when forms support translations)[#2256] Restart submission when the end-user changes the locale/language
Bugfixes
Fixed some accessibility issues
[#1351] Allow negative numbers and currencies
[#1180] Fixed analytics provider integrations
[#2335] Re-display drag & drop on upload cancellation
[#2344] Put asterisk next to repeating group label
Project maintenance
Set up Chromatic & Storybook for visual regression testing
Updated Github Actions version following deprecation notices
[#1345] Add story for required checkbox
Updated browserslist database
[#280] Added prettier and eslint integration
1.2.4 (2022-10-24)
Preparation for 2.0.0 release
[#1180] Fixed Google Analytics integration to track page views
[#2234] Update API endpoints to use v2 URLs instead of v1
1.2.3 (2022-10-12)
Fixed a number of styling issues
This patch introduces support for a number of new design tokens to customize styles as well.
Fixed flicker on summary page
Tweaked styles of components using design tokens
[#2137]
--of-file-upload-drop-area-paddingfor file upload padding[#2138]
--of-progress-indicator-mobile-marginfor the progress indicator horizontal margins on mobile[#2142]
--of-fieldset-legend-colorfor the fieldset legend text color[#2129]
--of-summary-row-spacingfor vertical spacing of summary rows[#2150]
--of-label-font-weightand--of-input-font-weightfor label and input element font-weights.[#2152]
--of-typography-sans-serif-font-familyto alter the main font-family
[#2149] Fixed inconsistent padding for content components
[#2129] Fixed responsiveness of summary page and tweaked step header styles
1.2.2 (2022-10-07)
Fixed regression in danger button styling due to missing design tokens.
1.2.1 (2022-10-07)
First 1.2.x series bugfixes
[#2053] Fixed styling of a number of components to not overlay other page elements
[#2056] Fixed broken file upload
[#2058] Refactored summary page display to evaluate logic on backend instead of (badly) replicating this on the frontend
[#2075] Fixed missing translations for (validation) errors in repeating groups
[#2077] Make ‘previous page’ and privacy checkbox accessible with tab-navigate
[#2073] Fixed accidental styling of content due to specific key names
[#2067] Applied consistent error message style
[#2084] Fixed “repeating group” row validation triggering complete form validation
[#2082] Scroll first component with error into view if there are validation errors
📦️ restore build artifact correctly so dist/ ends up in npm
[#2035] Scroll to top on step load
[#551] Upgrade Formio.js to 4.13.12
Fixed alignment Radio button circle/dot
[#2101] Add label to repeating group
Ensured that CSRF token is sent in file upload/delete calls
Fixed Formio options for proper formio.js component rendering in Storybook
[#2113] Added support for mobile styling of columns
[#2124] Display max file size in file upload widget
[#2127] Fixed UI state on hover for non-clickable nav “links”
[#2114] replaced removed session delete endpoint
1.2.0 (2022-09-19)
Feature release
Note
Note that this version REQUIRES at least version 2.0.0 of the Open Forms API.
Features
[#1687] We now run an explicit validation call during submission so that step submission validation errors from the backend can be displayed.
[#1710] Added repeating groups component
[#1717] Reworked handling of autofill fields (street/city) to not overwrite user-submitted data
[#509] Users now get a warning when their session is about to expire with the option to extend it.
The codebase now mostly uses design tokens for colors, improving the theming options
[#1832] Debounce the location autofill API calls
[#1933] Removed hardcoded authentication explanation message, instead you should define the relevant text/message in the form start explanation message.
[#1944] Blocked step navigation without completed steps, except for staff-users
[#1967] Deactivated and maintenance mode forms are now properly reported to end-users. Staff users can still continue in maintenance mode forms.
Bugfixes
[#1526] SDK now always calls the backend to evaluate form logic, even if the form is invalid on the client-side. Only valid data is passed to the backend.
[#1868] Ensure that invalid data is still kept in the client-side data state (fix for new bug in #1526)
[#1964] Adjusted padding on content components with CSS class
Added missing button variant
[#1738] Fixed sometimes all validation errors dissapearing when changing one field
Project maintenance
[#1603] Set up yarn workspaces and design tokens integration
[#1516] Set up publishing the SDK as package to NPM
Reworked internal API Error handling to be exception-based
Wrap more errors in error boundaries and display appropriate UI components for the type of error
[#1521] Added Storybook for component documentation and publish to Github pages
Removed obsolete Formio wrapper component
Added Formio components to Storybook docs
Added theme switcher to Storybook docs
Updated
PropTypesfor removed functionality in 2.0.0 backendUpdated translations
1.1.1 (2022-07-25)
Fixed a number of bugs
[#1526] Fixed a situation where users could get “stuck” on a form step - backend logic checks are now always performed, using the input data that validates client-side.
[#1687] Fixed the SDK progressing to the next step even if the backend has validation errors on step submission.
Fixed displaying (generic) backend errors in a user-friendly way
1.0.4 (2022-07-25)
Fixed a number of bugs
[#1526] Fixed a situation where users could get “stuck” on a form step - backend logic checks are now always performed, using the input data that validates client-side.
[#1687] Fixed the SDK progressing to the next step even if the backend has validation errors on step submission.
Fixed displaying (generic) backend errors in a user-friendly way
1.1.0 (2022-05-24)
Feature release 1.1.0 of the SDK
Nothing has changed since the release candidate, so please review those changes for a complete overview.
1.1.0 Release Candidate (2022-05-16)
Feature release
Note
Note that this version REQUIRES at least version 1.1.0 of the Open Forms API.
Features
[#1404] Fields can now be required by default (without asterisk) and optional fields receive a suffix indicating they are. This behaviour is opt-in and configurable in the backend.
[#1418] The logout button is now also displayed for authenticated users where form authentication is optional.
[#1313] Forms can now automatically initiate authentication on load.
[#1441] Logging out is now scoped to the form submission where the logout button is clicked, other forms in other browser tabs are no longer affected.
[#1449] File uploads can now validate a maximum number of files.
[#1479] “not-applicable” form steps (as determined by logic) are no longer shown on the summary page.
[#1452] Phone number fields can now be validated more strictly (opt-in).
[#1523] The login button icon no longer pretends to be a button and the link is now clickable.
[#1541] The content component can now receive custom CSS classes, integrating better with NL Design System. Supported are: info, success, warning, error.
[#1555] Display a loader while files are uploading.
[#1451] Visibility of form elements can in the summary page can now be configured. The default behaviour (if unspecified) is to display visible fields. WYSIWYG content labels are no longer displayed, unless explicitly configured.
[#1580] Show warning to accept privacy policy when users try to submit the form without accepting it.
Bugfixes
This release also contains all the bugfixes up until the 1.0.3 version.
Project maintenance
Build CI for the
stable/prefixed branchesEnsure that for local dev we get CSRF tokens
Node 16 is now the minimum required version
Updated build toolchain to react-scripts 5.0.1 with webpack 5
[#1514] Refactor color variables to use CSS variables for NL Design System integration
Fixed our own usage of slash for math.div in the sass
Upgrade to font-awesome 6
Upgraded the sass version
Removed unused font assets
1.0.3 (2022-05-16)
Bugfix maintenance release
[#1539] Fixed file upload not deleting temporary file in the backend when the file is removed again
1.0.2 (2022-04-25)
Bugfix maintenance release
[#1494] Fixed disabled/enabled state of form step submission button
[#1527] Show only visible fields in summary
1.0.1 (2022-03-16)
Bugfix maintenance release
[1076] Fixed form submission not being blocked if there are still validation errors
1.0.0 (2022-03-10)
Final fixes/improvements for the 1.0.0 release
[#940] Fixed some smaller issues on confirmation screen
[#1391] Implemented option to hide fieldset headers
[#1393] Style and validate disabled fields
Fixed some spelling mistakes in the Dutch translations
[#1410] Send CSRF Token if provided
1.0.0-rc.3 (2022-02-25)
Bugfixes for issues still present in rc.2
[#1368] Updated translations
[#1371] Fixed Digid login by upgrading django-digid-eherkenning package
[#1340] Fixed misaligned asterisk for required fields
[#1301] Fixed validation in component variants with multiple=True:
BSN
Date
Phone number
[#1374] Fixed broken appointment dependent-dropdowns
1.0.0-rc.2 (2022-02-16)
Fixed a set of bugs that didn’t make it into rc.1
[#1262] Fixed long filenames overflowing in file upload component
[#807] Fixed strict Content Security Policy violations
[#1270] Fixed formatting of numbers with decimalLimit=0
[#1284] Fixed clearing address prefills
[#1261] Fixed privacy-checkbox styling
[#1274] Fixed more event/race conditions while typing values
[#1193] Fixed styling of file upload validation errors
[#942] Improved user experience when navigating between steps
[#1018] Implemented various accessibility (a11y) improvements
1.0.0-rc.1 (2022-01-28)
[#1226] Handle empty values in file fields.
[#1224] Handle empty multi-file fields.
[#1152] Handle additional time case validation
[#1203] Fix empty file field representation
1.0.0-rc.0 (2022-01-17)
First release candidate of Open Forms SDK.
Features
Supports the Open Forms 1.0.x backend API
Implements the form fill-out flow
Present authentication options
Render form definitions
Progress through form steps
Confirm form submission
Report backend processing status
Supports a wide range of form widgets
Text based fields
Dropdowns, checkboxes, radio inputs
Date and time fields
Postcode, IBAN, BSN
Digital Signature
Co-signing
Map widget
Layout options: fieldsets, free content, columns
Mobile/responsive support
Appointment changing/cancellation
Payment integration
Session expiry management
Analytics integration, out of the box support for Piwik/Matomo, SiteImprove and Google Analytics
Internationalization support, Dutch and English supported out of the box
Developer features
Analytics integration is pluggable, allowing you to register your own
The custom templates & Formio modules are exposed, allowing you to customize the look and feel of components
Load/embed through a single Javascript and CSS bundle