SurveyJS PDF Generator Releases

Learn what's new across releases, with details of features, enhancements, and resolved issues.

Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
SurveyJS PDF Generator v2.5.37Aug 4, 2026
Fixes

Form Library

  • [Survey Creator] Ranking question: Cannot add items after setting a default answer.
  • Matrix totals and custom question cell expressions are not recalculated regardless of whether expressionQuestionTrackDependencies is enabled.
  • A page containing a Multi-Select Matrix with hideIfRowsEmpty set to true doesn't appear in the TOC when the visibility condition is satisfied.
  • Dynamic Panel with multiple entries causes the total number of answered questions to be calculated incorrectly.

Survey Creator

  • [Localization] German Expand/Collapse button captions are now translated correctly.
  • [Localization] Dutch Expand button tooltip is now translated correctly.
SurveyJS PDF Generator v2.5.36Jul 28, 2026
Fixes
  • Form Library
    • Enabling expressionQuestionTrackDependencies does not skip recalculation of Dynamic Panel expressions that reference questions within the same panel.
    • Dynamic Panel: validateExpressions() unexpectedly modifies survey.data when panels share the same valueName and use defaultValueExpression.
    • Changing a Rating Scale question triggers a custom function used in unrelated questions.
    • Built-in required validation doesn't work when onServerValidateQuestions is used and preview mode is enabled.
  • Survey Creator
    • Contrast theme no longer meets minimum color contrast ratio requirements.
    • Autoprefixer reports a start value warning for survey-creator-core.min.css.
    • Translations Tab: Remove button doesn't work for unselected languages.
SurveyJS PDF Generator v2.5.35Jul 21, 2026
Features
  • Table of Contents: Custom Item Template
    • You can now customize the appearance of Table of Contents items by rendering them with your own component. To do this, implement a custom component, register it in the factory for your frontend framework, and assign its name to the SurveyModel's tocItemComponent property.
Fixes
  • Form Library
    • Single-Line Input with a mask doesn't update its displayed value when survey.data is set while the input is focused.
    • Enabling expressionQuestionTrackDependencies does not skip recalculation of Dynamic Panel expressions that reference questions within the same panel.
  • Survey Creator
    • A question value appears as [Object object] in a logic rule for a specialized question type based on matrixdropdown.
    • Dynamic Panel: "Entry title/description pattern" property values are not updated in the Property Grid when changed from the design surface.
    • Collapsed sidebar unexpectedly expands after browser resize or viewport change.
SurveyJS PDF Generator v2.5.34Jul 14, 2026
Features
  • API for Registering Question Type Aliases
    • You can now register aliases for predefined question types. Aliases allow you to use custom type names in survey JSON while preserving the original SurveyJS question implementation.
    • When deserializing JSON, the Serializer treats an alias as its original type and creates the corresponding question model. When serializing the model back to JSON, it writes the registered alias instead of the original type name. Both the original type name and its alias are accepted when deserializing survey JSON.
    • Use the following Serializer methods to work with question type aliases:
      • setAlias(type, alias)
        • Registers an alias for an existing element type. Each element type can have only one alias.
      • getTypeByAlias(alias)
        • Returns the original element type associated with a registered alias, or undefined if the specified value is not an alias.
      • getAliasByType(type)
        • Returns the alias registered for the specified original element type, or undefined if no alias is registered.
      • removeAlias(alias)
        • Removes an alias previously registered with the setAlias method.
    • Registering an alias has the following effects:
      • Survey Creator uses "longtext" as the question's type when users add a "comment" question.
      • You can use "longtext" instead of "comment" when authoring survey JSON manually.
      • All SurveyJS components, including Dashboard and PDF Generator, recognize "longtext" as a "comment" question automatically.
Fixes
  • Form Library
    • [Performance] SurveyModel creation is considerably slower than in previous releases for JSON schemas containing a Multi-Select Matrix with a visibleIf condition.
    • survey-core throws an exception during import in React Native: window.addEventListener is not a function.
  • Survey Creator
    • Dynamic Panel: Nested panel's in-place description editor remains visible after the description text is removed.
    • Condition popup displays a redundant editor title and lacks a placeholder for the calculated value.
    • File Upload: Default values for file placeholder text properties do not appear in the Property Grid when the survey locale differs from the default locale.
SurveyJS PDF Generator v2.5.33Jul 8, 2026
Features
  • [Survey Creator] Inline Description Editors on the Design Surface
    • A survey, page, panel, or question description provides additional information about the element's purpose, instructions, or context. By default, Survey Creator doesn't show inline description editors for questions and panels when their descriptions are empty.
    • Introduced the onBeforeShowInplaceDescriptionEditor event, which allows you to control the visibility of inline description editors based on custom conditions.
Fixes
  • Form Library
    • Dropdown: Item highlighted in the drop-down menu is not the actually selected item.
    • Validation errors are not announced to screen readers until focus moves to the invalid field (WCAG 2.1 Success Criterion 4.1.3).
    • onGetChoiceDisplayValue is not raised if a question's defaultValueExpression is invalid and the question value is set in survey.data.
  • Survey Creator
    • Translations tab: Remember the last selected source language in the Auto-Translate All dialog.
    • A page copy cannot be selected on the design surface after duplication.
    • surveyLocalization.defaultLocale leaks into the Survey Creator UI when its locale property is undefined.
    • Logic tab: Question name placeholder in the condition editor uses the survey locale instead of the Survey Creator locale ().
SurveyJS PDF Generator v2.5.31Jun 30, 2026
Fixes
  • Form Library
    • Dynamic Panel with recursive numbering shows incorrect element numbers when a response object is set using survey.data.
    • Validation error is not cleared when a question value is corrected by assigning survey.data.
  • Survey Creator
    • Translations tab: Default locale doesn't support machine translation.
SurveyJS PDF Generator v2.5.30Jun 24, 2026
Features
  • Survey Creator
    • Image Picker: New choices include a redundant text property set to an empty string.
Fixes
  • Form Library
    • Progress bar didn't highlight previous pages after restoring the UI state.
    • survey-angular-ui throws an exception when used with Angular 22.
    • validateExpressions() incorrectly reports an unknown variable error for the {item} placeholder used in the choicesEnableIf expression.
    • [TypeScript] NumericValidator: minValue and maxValue should be nullable.
    • Input mask: Masked field incorrectly formats a value when beforeinput supplies HTML.
    • Exception is thrown when async function is used in a matrix cell expression.
    • [Survey Creator] Design surface: Exception is thrown when trying to delete a newly added question programmatically.
    • [Survey Creator] panelCount allows values outside minPanelCount and maxPanelCount boundaries.
    • [Survey Creator] correctAnswer property doesn't update after a referenced choice option is deleted.
  • Survey Creator
    • Converting a Checkboxes question with nested choices to a Radio Button Group throws an exception.
SurveyJS PDF Generator v2.5.23May 5, 2026
Features
  • Hybrid Paper and Digital Form Collection:
    • Introduced AI Form Response Extractor, a new open-source MIT-licensed library that enables conversion of scanned documents into structured survey data using AI.
    • This feature provides a unified approach to form response collection across both digital and paper-based workflows. You design a survey once, collect responses online through web forms, and process paper submissions by converting scanned documents into the same structured data format. Printed forms can thus be treated as an extension of your digital system rather than a separate data entry channel.
    • All responses—whether submitted online or extracted from paper—are normalized into a single SurveyJS JSON data object.
Fixes
  • Form Library:
    • Custom expression properties are re-evaluated even when they do not reference the changed value.
  • Survey Creator:
    • Page navigator is not scrollable when the survey contains many pages and pageEditMode is "bypage".
    • Deleting a question doesn't clear references to it in triggers' setToName property.
    • Dropdown preview in Android phone simulator landscape mode does not show Cancel and OK buttons.
SurveyJS PDF Generator v2.5.22Apr 28, 2026
Features
  • Hiding Question Descriptions:
    • Previously, question descriptions could only be hidden together with question titles by setting the question's titleLocation or the survey's questionTitleLocation property to "hidden".
    • This release introduces a new "hidden" value for the question-level descriptionLocation and the survey-level questionDescriptionLocation property. You can use this value to hide descriptions globally for all questions in a survey or selectively for individual questions. Question-level settings override the survey-level configuration.
    • When configuring a survey in Survey Creator, you can now select Hidden in the Question description alignment dropdown.
Fixes
  • Form Library:
    • Expressions: Cannot access panel and page properties using {$pageName.propName} and {$panelName.propName}.
    • [React Strict Mode] Conditional panel visibility fails to render nested elements when lazy rendering is enabled.
    • Masked date and time input does not display default value when saveMaskedValue is enabled.
    • [Survey Creator] Multi-Select Matrix: UI freezes when moving a row in the Property Grid due to full table re-rendering.
  • Survey Creator:
    • Error occurs when attempting to remove a newly added question in the onQuestionAdded event handler.
SurveyJS PDF Generator v2.5.21Apr 22, 2026
Fixes
  • Form Library:
    • Dropdown: Search doesn't support languages with special characters (e.g., Turkish).
    • Errors added in the onValidatePage event handler do not prevent navigation to the next page.
    • Matrix with Checkboxes: getPlainData() returns column IDs instead of display values.
    • Composite Question: onAfterPropertyChanged and onModified are not raised when a custom Tag Box property editor value changes.
    • Questions in hidden pages persist in survey results after exiting preview mode.
    • New empty matrix rows in a Dynamic Matrix inside a Dynamic Panel are removed when another question value changes.
  • Survey Creator:
    • onCollectionItemDeleting is not raised when a row or column is deleted from the design surface.
    • onQuestionAdded is raised when moving a question to another page.
SurveyJS PDF Generator v2.5.20Apr 14, 2026
Features
  • Expressions: minInArray and maxInArray support returning values from related fields:
    • The minInArray and maxInArray functions compute the minimum or maximum numeric value from a specified field within an array (for example, Multi-Select Matrix, Dynamic Matrix, or Dynamic Panel responses).
    • Previously, these functions always returned only the computed numeric value from the target field. With this update, they can optionally return a value from another field in the same array item that produced the min/max result.
    • To accommodate this enhancement, the argument order has been updated:
      • The third argument can specify either a return field or a filter condition.
      • When a return field is provided as the third argument, the filter condition must now be passed as the fourth argument.
Fixes
  • Form Library
    • age() is not calculated when the DateTime value doesn't match the specified mask and saveMaskedValue is enabled.
    • Single-Line Input: Display value ignores the mask when using "defaultValueExpression": "today()".
    • [Survey Creator] Multi-Select Matrix: allowClear is preserved when changing cellType from "default" to "radiogroup", although radio columns do not support it.
    • Matrix cell values in expressions: Reference placeholder is displayed until the actual cell value is defined.
    • isContainerReady() expression function returns true even when not all required questions are specified.
    • Dropdown: Custom item template is not rendered in read-only mode.
    • Visibility expression evaluates incorrectly when it relies on RegExp validation and references a calculated value and the containsErrors property.
    • Dynamic Matrix column: Unique value validation is bypassed when expression validator is used.
  • Survey Creator
    • [Vanilla JS] TypeScript build breaks after migrating from Webpack to Rollup.
    • Property Grid: Survey element selector persists in a custom sidebar component.
    • Design surface: "Choices are loaded from a web service" message overflows its container in certain cases.
SurveyJS PDF Generator v2.5.19Apr 7, 2026
Features
  • Survey Creator: Display Language Names in English
    • Added a new useEnglishLanguageNames property to ICreatorOptions. Enable this property to display language names in English across the Translations tab, the survey language dropdown, and other Survey Creator UI elements, instead of their native names.
Fixes
  • Form Library:
    • validateExpressions() incorrectly reports UnknownVariable for ...InArray functions.
    • Required validation errors appear for read-only panels.
    • Panel visibility doesn't evaluate correctly when expressions reference element properties.
    • Matrix column visibility doesn't evaluate correctly when expressions reference element properties.
    • Multiple Textboxes: Item title padding appears on right instead of left in RTL.
    • Single-Line Input: Date input placeholder color is black instead of gray.
  • Survey Creator:
    • Designer tab: Page navigator scrolls to the wrong page in long surveys.
    • Matrix column titles do not auto-increment numbers when a new column is added.
SurveyJS PDF Generator v2.5.18Mar 31, 2026
Fixes
  • PDFFormFiller: Calling raw("dataurlstring") triggers maximum call stack size exceeded error on large PDFs.
SurveyJS PDF Generator v2.5.17Mar 24, 2026
Features
  • Input Masking: Out-of-the-box Validation for Incomplete Pattern Values:
    • Previously, pattern-masked fields could be left partially completed without providing immediate feedback. This update triggers out-of-the-box validation when a respondent tries to complete the survey or exit a field that does not fully satisfy the pattern format.
Fixes
  • Form Library:
    • [Accessibility] Specialized question type built on top of a numeric Single-Line Input lacks an accessible name.
    • [Mobile] File Upload: Confirmation dialog is truncated.
    • Pattern input mask rejects valid input when it matches digits in the static prefix.
    • Advanced Header: Navigation bar too close to first survey element on mobile and too far from header on desktop.
    • question.focus() behaves inconsistently with lazy rendering enabled.
    • Multi-Select Matrix: getPlainData() omits empty column values.
    • [Vue 3] Slider scale rendering is broken in Shadow DOM.
  • Survey Creator:
    • Keyboard navigation: Tab works within design surface, but Shift + Tab moves focus to Property Grid.
    • Property Grid: Default Value Expression property is unavailable for Multiple Textboxes items.
SurveyJS PDF Generator v2.5.16Mar 18, 2026
Fixes
  • Form Library:
    • Expressions: dateDiff function miscalculates day differences in certain cases.
    • Dynamic Panel: Nested Slider Scale triggers a validation error when a new entry is added.
    • Survey scrolls on startup if it contains a Dynamic Panel with panelsState: "firstExpanded".
    • onDynamicPanelValueChanging and onDynamicPanelValueChanged are not raised when a question's comment field is edited.
    • Expression validation is not triggered immediately when a dependent question value changes.
    • SurveyModel's getLocalizationJSON() method does not accept "en" as a locale.
  • Survey Creator:
    • Property Grid: Deleting the "Maximum question width" property value saves an empty value instead of resetting it.
    • [Mobile Preview] File Upload: Confirmation dialog appears outside the viewport.
    • Logic tab: useElementTitles setting has no effect on the question filter dropdown.
    • Condition Editor interpolates the wrong question when another question has a matching valueName.
    • Calling survey.getLocalizationJSON(["default"]) produces a survey with an invalid locale: "default".
SurveyJS PDF Generator v2.5.15Mar 11, 2026
Features
  • API to Customize Expression Syntax:
    • Introduced two global settings that allow you to customize parts of the expression syntax:
      • expressionVariableDelimiters
        • expressionVariableDelimiters specifies delimiters used to reference variables in expressions and dynamic texts. It accepts an object with start and end string properties.
        • By default, SurveyJS uses curly braces ({ and }). You can replace them with other symbols or symbol sequences.
      • expressionElementPropertyPrefix
        • The recently introduced capability to access element property values within expressions and dynamic texts uses the dollar sign ($) as the default prefix. The expressionElementPropertyPrefix setting allows you to change this prefix or disable the feature entirely.
  • [Survey Creator] Property Editors Preserve Invalid Values for Later Correction:
    • Previously, property editors cleared property values if they were invalid. This behavior could disrupt the workflow when users intended to fix the value later.
    • Invalid values are now preserved instead of being removed. Users can continue working in the Property Grid and return to correct the value later. Invalid values are stored in temporary storage and are not included in the survey JSON schema until they are corrected.
Fixes
  • Form Library:
    • Source code contains circular dependencies.
    • Numeric Input: Step error text cannot be customized in the survey JSON schema.
    • Radio Button Group/Checkboxes: "Other" input field doesn't support immediate required validation.
  • Survey Creator:
    • Logic Tab: useElementTitles setting is ignored for choice options in conditions.
    • Toolbox search doesn't work in Shadow DOM.
SurveyJS PDF Generator v2.5.14Mar 3, 2026
Features
  • Randomize Rows in Multi-Select Matrix:
    • You can now display rows in a Multi-Select Matrix in random order each time a survey is loaded.
    • To enable the same behavior in Survey Creator, select the Multi-Select Matrix question, open the Rows category in the Property Grid, and set the Row order property to Random.
Fixes
  • Form Library
    • [Angular] Dropdown: "Other" doesn't appear as a selected value.
    • [Mobile] Previous and Next buttons stack at certain device widths.
  • Survey Creator
    • Duplicating a panel with nested questions doesn't update the question names if the panel is inside a Dynamic Panel.
    • Property Grid: Changing a property's category does not move it to another category.
    • Preview: Table of Contents remains in desktop layout in mobile mode.
SurveyJS PDF Generator v2.5.13Feb 27, 2026
Features
  • Expressions:
    • Caching for custom asynchronous functions is now enabled by default.
    • Enhances performance and should not have any negative impact on existing applications.
    • If you want your custom function to perform a server request on every call instead of using the cache, set the useCache option to false when registering the function.
Fixes
  • Form Library
    • Progress bar flickers at certain viewport widths.
  • Survey Creator
    • Survey Creator doesn't auto-generate matrix column names like it does for question titles.
    • Dynamic Panel: Nested question's valueName isn't updated when duplicating the Dynamic Panel.
    • Dynamic Panel: Nested question's validation rules aren't updated when duplicating the Dynamic Panel.
SurveyJS PDF Generator v2.5.12Feb 24, 2026
Fixes
  • Form Library
    • Ranking: Screen readers do not announce question title on focus or when selecting a ranking item.
    • choicesByUrl: Choice value is displayed instead of text after switching survey locale at runtime.
    • Numeric Single-Line Input: Validation error occurs for certain floating-point values when step is non-integer.
    • Dropdown with choicesByUrl: defaultValue resolves to "Other" when showOtherItem is enabled.
SurveyJS PDF Generator v2.5.11Feb 18, 2026
Features
  • [Survey Creator] JSON Editor: Smarter error fix suggestions for property values
    • In Survey Creator, the JSON Editor allows users to edit the survey JSON schema manually. If the JSON contains a syntax error or an invalid configuration, the JSON Editor tab displays an error message and, when possible, offers a button to automatically correct the issue.
    • Automatic error handling for invalid property values is now enhanced with suggestions based on Levenshtein distance. When a property value does not match any of the allowed options (for example, an enum value), the editor compares the entered value against valid alternatives and suggests the closest match.
    • This enhancement reduces friction when editing JSON manually, shortens debugging time, and helps prevent configuration errors caused by mistyped property values.
Fixes
  • Form Library
    • Checkboxes: "Select All" affects disabled choice options.
  • Survey Creator
    • UI Condition Editor doesn't allow creating rules based on other choices within the same question.
SurveyJS PDF Generator v2.5.10Feb 12, 2026
Features
  • Introduced Online Survey JSON Schema Validator
    • The online survey JSON schema validator is a backend service that validates SurveyJS JSON schemas and user responses. It helps detect configuration errors in survey definitions and ensures that collected responses conform to the corresponding survey schema. You can deploy this service as part of your backend infrastructure and expose it via a simple HTTP API.
  • Expressions: Caching for Custom Functions
    • Expressions support custom functions, which are often used to perform data- or time-consuming operations, such as server requests. To improve performance and reduce unnecessary network traffic, SurveyJS now supports caching for custom functions.
    • When caching is enabled, each function call with a unique set of arguments is stored in memory. If the function is called again with the same arguments, the cached result is returned and the request is not repeated. In addition, SurveyJS tracks survey variables, question values, and element properties accessed inside the function and re-evaluates the function only when those dependencies change.
    • To enable caching, set the useCache option to true when registering a custom function. Note that the function registration API has been updated: instead of registering functions via FunctionFactory, use the static registerFunction method.
  • Single- and Multi-Select Dropdowns: Enhanced Choice Selection on Desktop
    • Single- and Multi-Select Dropdown questions now support improved keyboard and mouse interactions in desktop environments.
    • Previously, users could select a choice by clicking it or pressing Enter. These actions continue to work. In addition, pressing Tab now saves the current selection and moves focus to the next survey element (enabled by default). You can also configure the dropdown to save the selection when the user clicks outside the editor. To enable this behavior, set the global dropdownSaveOnOutsideClick setting to true.
    • For Dropdown questions that allow custom choices, pressing Tab now saves the custom value as well (enabled by default). When the dropdownSaveOnOutsideClick setting is enabled, clicking outside the editor also saves the custom choice.
    • To close the dropdown without saving a selection or creating a custom item, users can press Esc.
    • These enhancements streamline both choice selection and custom value entry. The updated behavior applies to desktop devices only; the mobile user experience remains unchanged.
Fixes
  • Form Library
    • Dynamic Panel: validateExpressions() creates an extra panel instance when defaultValue is set on a question inside templateElements.
    • validateExpressions() incorrectly reports UnknownVariable when indices are used within expressions.
    • "Other" text field: Space characters are not inserted when using Apple Pencil and Scribble.
  • Survey Creator
    • Multi-Select and Dynamic Matrices: Choices are still added even though the default JSON is overridden and doesn't contain them.
    • The "Toolbox" caption is not translated when the Toolbox in located in the Property Grid sidebar.
    • Themes tab: Selected category persists even if a different category is activated during search.
    • No API for displaying the "Start configuring your form" screen when a survey editor removes all survey elements.
SurveyJS PDF Generator v2.5.9Feb 3, 2026
Fixes
  • Form Library
    • Expressions: {checkbox} notcontains 0 returns false even if the value is empty.
    • Progress Bar: Connecting line does not connect conditionally shown pages.
    • Checkboxes: isExclusive does not apply when choices are loaded using choicesByUrl.
    • choicesFromQuestion are copied with a delay when the source question is within a matrix.
  • Survey Creator
    • JSON Editor: "Duplicate name" error is reported for columns in different Dynamic Matrix questions.
SurveyJS PDF Generator v2.5.8Jan 27, 2026
Features
  • Input Mask Enhancements
    • Pattern Input Mask – Custom Placeholder
      • Input fields with the "pattern" mask type now support a text question’s placeholder. The placeholder text is rendered until the field receives focus or the user begins typing. Once the field is focused or a value is entered, the placeholder text is replaced by the pattern’s underscore placeholders, guiding the user to complete the masked input.
    • Validation for Incomplete Masked Values
      • With this update, any value entered by the user is retained even if they move focus away from a partially completed pattern-masked field. To prevent users from leaving such fields incomplete, set SurveyModel.checkErrorsMode to "onValueChanged" and enable the SurveyModel.validateVisitedEmptyFields option.
    • API for Traversing the Survey Element Tree
      • This release adds the getOwner() method to all survey elements, including pages, panels, questions, choices, matrix rows, columns, and validators. The method enables upward traversal of the survey structure, allowing you to identify higher-level elements that own a given lower-level element.
      • This API provides a consistent and reliable way to navigate from any survey element to its owning container, simplifying diagnostics and tooling for complex survey configurations.
Fixes
  • Form Library
    • Dynamic Panel: validateExpressions() reports an unknown variable when an expression inside the template references outer questions.
    • Single-Line Input: The dataList property value is not saved in the survey JSON schema.
    • [Mobile] Navigation buttons are too close to the first survey element when they are on top.
    • fromJSON() with validatePropertyValues: true produces an error when choices are defined using a callback that references the object instance.
    • Ranking in RTL mode: The drag handle is misaligned, and the drag image is removed from the mouse pointer.
    • Ranking with selectToRankEnabled in RTL mode does not allow dropping multiple items into the rank area.
SurveyJS PDF Generator v2.5.7Jan 22, 2026
Features
  • Semantics Validation
    • Expression validation, introduced in SurveyJS v2.5.6, is extended to detect semantic errors. These errors indicate that an expression is syntactically valid but has no meaningful effect because it always evaluates to the same value.
  • Expression Validation API
    • Expressions can also be validated programmatically using the validateExpressions(options) method.
    • This method detects the following types of errors:
      • Unknown variable
        • The expression references an undefined variable or an unknown question, panel, or page name.
      • Unknown function
        • The expression references an unregistered function.
      • Semantic error
        • The expression is syntactically valid but has no meaningful effect because it always evaluates to the same value.
      • Syntax error
        • The expression contains invalid syntax, such as unmatched parentheses, missing operands, or invalid operators.
    • When called without arguments, the method validates all four error types. It returns an array of IExpressionValidationResult objects. Each object contains the survey element and property name that hold the invalid expression, along with detailed error information.
  • Add Hours, Minutes, or Seconds to Date-Time Values
    • The dateAdd expression function now supports adding or subtracting full hours, minutes, or seconds to and from date-time values.
Fixes
  • Form Library
    • JSON schema with properties metadata contains a typo: allOff instead allOf.
    • Custom required property is not validated.
    • Required color input does not prevent survey submission when no color is selected.
    • [Accessibility] Radio Button Group: "Clear" button doesn't have the aria-label attribute.
    • Serializer.generateSchema() does not output derived types for polymorphic single-object properties.
    • Date and time input mask: ss placeholder doesn't insert actual seconds value.
    • fromJSON() with validatePropertyValues: true produces an error when the choices property is defined as a function that references the object instance.
    • Survey Creator: JSON Editor incorrectly flags a valid property value as invalid.
  • Survey Creator
    • Property Grid: logicAllowTextEditExpressions: false still shows caret in expression editors.
    • Choices table: "Remove" button is enabled regardless of minChoices.
    • Choices table: Exception occurs when removing all choices and then adding a new one with minChoices defined.
    • Expression validator displays only one error at a time.
    • "Logical rules are incomplete" popup uses the default browser font style.
SurveyJS PDF Generator v2.5.6Jan 15, 2026
Features
  • [Survey Creator] Expression Validation
    • This Survey Creator release adds built-in expression validation that helps authors identify issues early. Survey Creator detects three types of errors:
      • Unknown variable
        • The expression references an undefined variable or an unknown question, panel, or page name. This check is disabled by default. To enable it, set the expressionsValidateVariables property to true.
      • Unknown function
        • The expression references an unregistered function. You can disable this check by setting the expressionsValidateFunctions property to false.
      • Syntax error
        • The expression contains invalid syntax, such as unmatched parentheses, missing operands, or invalid operators. You can disable this check by setting the expressionsValidateSyntax property to false.
  • Customize RegExp Validation Dynamically
    • In SurveyJS, regular expressions are used to validate user input against custom rules. Previously, you could only define a pattern and specify whether matching should be case-sensitive. This release introduces the onCreateRegexValidator event, which allows you to customize the regular expression and control additional matching behavior via flags.
Fixes
  • Form Library
    • Expressions: The 'contains' operator ignores the case sensitivity setting.
    • Expressions are not re-evaluated when they depend on a survey object property and that property changes.
    • Question number styling is incorrect after the question's visibility changes.
    • toJSON() with validatePropertyValues: true treats choices whose value is an object as invalid.
    • Localization JSON schemas are generated incorrectly when the survey includes composite or specialized questions.
    • Ranking: Dragging a choice option causes ghosting artifacts.
  • Survey Creator
    • [Angular] Preview tab: Required mark disappears when the question receives focus.
SurveyJS PDF Generator v2.5.5Jan 7, 2026
Fixes

Form Library

  • Survey JSON schema didn't treat Boolean values as valid for the showQuestionNumbers property.
  • mergeLocalizationJSON() doesn't apply translations to item collections.