SurveyJS v1.9.94
Released: June 28, 2023
SurveyJS v1.9.94 introduces support for right-to-left languages in PDF Generator, renaming in global survey settings API and matrix-related events API, and several bug fixes.
PDF Generator: Right-To-Left Language Support
SurveyJS PDF Generator v1.9.94 introduces full support for right-to-left (RTL) languages in generated PDF forms. If your survey or form contains RTL content, enable the isRTL
property in document options:
import { SurveyPDF } from "survey-pdf";
const surveyPdf = new SurveyPDF(surveyJson, { isRTL: true });
Grouping in Global Survey Settings API
Global survey settings are now arranged in groups. This change helps us structure the diverse API and make it more clear. The following table lists previous property names and their substitutions:
Old property name | New property name |
---|---|
allowShowEmptyDescriptionInDesignMode |
designMode.showEmptyDescriptions |
allowShowEmptyTitleInDesignMode |
designMode.showEmptyTitles |
changeNavigationButtonsOnCompleteTrigger |
triggers.changeNavigationButtonsOnComplete |
defaultLocaleName |
localization.defaultLocaleName |
disableOnGettingChoicesFromWeb |
web.disableQuestionWhileLoadingChoices |
executeCompleteTriggerOnValueChanged |
triggers.executeCompleteOnValueChanged |
executeSkipTriggerOnValueChanged |
triggers.executeSkipOnValueChanged |
itemValueAlwaysSerializeAsObject |
serialization.itemValueSerializeAsObject |
itemValueAlwaysSerializeText |
serialization.itemValueSerializeDisplayText |
lazyRowsRendering |
lazyRender.enabled |
matrixDefaultCellType |
matrix.defaultCellType |
matrixDefaultRowName |
matrix.defaultRowName |
matrixMaximumRowCount |
matrix.maxRowCount |
matrixMaxRowCountInCondition |
matrix.maxRowCountInCondition |
matrixRenderRemoveAsIcon |
matrix.renderRemoveAsIcon |
matrixTotalValuePostFix |
matrix.totalsSuffix |
maximumConditionRunCountOnValueChanged |
maxConditionRunCountOnValueChanged |
panelDynamicMaxPanelCountInCondition |
panel.maxPanelCountInCondition |
panelMaximumPanelCount |
panel.maxPanelCount |
readOnlyCommentRenderMode |
readOnlyMode.commentRenderMode |
readOnlyTextRenderMode |
readOnlyMode.textRenderMode |
serializeLocalizableStringAsObject |
serialization.localizableStringSerializeAsObject |
setQuestionVisibleIndexForHiddenNumber |
questionNumbering.includeQuestionsWithHiddenNumber |
setQuestionVisibleIndexForHiddenTitle |
questionNumbering.includeQuestionsWithHiddenTitle |
storeDuplicatedTranslations |
localization.storeDuplicatedTranslations |
surveyServiceUrl |
web.surveyServiceUrl |
useCachingForChoicesRestful |
web.cacheLoadedChoices |
useLocalTimeZone |
localization.useLocalTimeZone |
webserviceEncodeParameters |
web.encodeUrlParams |
Previous property names will continue to work until further notice. However, we urge you to migrate your code to the new names to make sure that future updates won't break it.
Matrix-Related Events API Update
The following matrix-related events are renamed to better reflect their function and maintain consistency across the entire events API:
Old event name | New event name |
---|---|
onMatrixBeforeRowAdded |
onMatrixRowAdding |
onMatrixAllowRemoveRow |
onMatrixRenderRemoveButton |
onMatrixAfterCellRender |
onAfterRenderMatrixCell |
Similar to obsolete global survey settings, previous events will continue to work, but it is better to replace them with new events in your code.
Updated Demos
Visualize Survey Data from SurveyJS Service
New Blog Post
Bug Fixes
Form Library
- Signature Pad: Placeholder doesn't disappear, and an eraser icon do not appear (#6403)
- The Add Panel button does not show for a Dynamic Panel that is read-only when the survey loads but becomes enabled later (#6292)
- Dropdown:
displayValue
is incorrect when lazy loading is enabled andvalue
is an object (#6418)
Survey Creator