Buy Licenses Contact Support Login/Register
v 1.7.25

Version: v1.7.26, estimated release date is Tuesday, August 11, 2020, Total Issue Count: 9

Product Type Description
survey-library Enhancement Correct defaultValue and correctAnswer on JSON loading

On changing question type for radiogroup/dropdown/checkbox, we can have incorrect defaultValue and correctAnswer properties. They are a single value for radiogroup/dropdown and array for checkbox. We have to correct them accordingly on setting these values.

survey-library Bug Pressing markdown link focuses the answer input

Are you requesting a feature, reporting a bug or asking a question?

Bug

What is the current behavior?

Pressing on a link inside a question description focuses the answer input.

What is the expected behavior?

Pressing on a link should open the link.

How would you reproduce the current behavior (if this is a bug)?

  1. Use markdown example
  2. Add question description with link
  3. Press link

Provide the test code and the tested page URL (if applicable)

Tested page URL: https://plnkr.co/edit/SzheBTFLcoIqDweV

Specify your

  • browser: Google Chrome
  • browser version: 84
  • surveyjs platform (angular or react or jquery or knockout or vue): angular
  • surveyjs version: 1.7.24
survey-library Enhancement Can we add textUpdateMode to other value in for dropdown questions

Are you requesting a feature, reporting a bug or asking a question?

Asking a question/Requesting a feature.

What is the current behavior?

Add textUpdateMode to "other" value in dropdown questions.

What is the expected behavior?

Can we please add textUpdateMode to other value in for dropdown questions

How would you reproduce the current behavior (if this is a bug)?

I tried this, https://plnkr.co/edit/0F73cRc8zGMYa2Aw, but it is not working.

Provide the test code and the tested page URL (if applicable)

Tested page URL:

Test code

your_code_here

Specify your

  • browser:
  • browser version:
  • surveyjs platform (angular or react or jquery or knockout or vue):
  • surveyjs version:
survey-library Enhancement Do not allow to set question/page/panel name with traling space

Remove trailing spaces on setting question/page/panel name and do not allow to use in question name.

survey-library Enhancement Unacceptable performance for a large survey with many expression questions

The performance, on running conditions for a large survey over 10k lines with a lot of expressions in it, is unacceptable. We should change our algorithm that re-run conditions on changing the expression value. UPDATE: The performance for the particular survey was imporoved in 20-30 times.

survey-library Bug react: onValueChanging callbacks are called twice after selecting an option in dropdown

Are you requesting a feature, reporting a bug or asking a question?

question/bug

What is the current behavior?

In my adoption of surveyJS engine I heavily use onValueChanging event but I don't understand why attached callbacks are called twice after selecting an option

What is the expected behavior?

callbacks should be called once

How would you reproduce the current behavior (if this is a bug)?

see console https://plnkr.co/edit/81ZISxzNBgls32Ro

  • surveyjs platform: react
survey-creator Bug IE Reordering questions/choices

Are you requesting a feature, reporting a bug or ask a question?

Reporting a bug

What is the current behavior?

Dragging and dropping is not working in IE 11

What is the expected behavior?

Dragging and dropping is available

How would you reproduce the current behavior (if this is a bug)?

Create a new test survey with multiple questions, try to reorder in IE11

Provide the test code and the tested page URL (if applicable)

Specify your

  • browser: IE 11
  • editor version: 1.7.23
survey-creator Bug Clicking the "down" arrow on a dropdown question does not open the dropdown

Are you requesting a feature, reporting a bug or ask a question?

Reporting a bug

What is the current behavior?

When clicking the "down" arrow at the end of a dropdown question, nothing happens

What is the expected behavior?

The dropdown opens

How would you reproduce the current behavior (if this is a bug)?

Create a fresh survey on the creator and add a dropdown question, then press the arrow on the far right of the dropdown input

Provide the test code and the tested page URL (if applicable)

Specify your

  • browser: Chrome, Firefox, Edge
  • editor version: 1.7.23
survey-creator Bug Select the first question on the page on deleting a question in a panel

If there are several questions in the panel and you delete one question, then the next question in the panel should be selected or the panel, if there is no any question there. The original issue was created in SurveyJS support desk.

Version: v1.7.26, estimated release date is Tuesday, August 11, 2020, Total Issue Count: 9

Product
survey-library
Type
Enhancement
Description
Correct defaultValue and correctAnswer on JSON loading

On changing question type for radiogroup/dropdown/checkbox, we can have incorrect defaultValue and correctAnswer properties. They are a single value for radiogroup/dropdown and array for checkbox. We have to correct them accordingly on setting these values.

Product
survey-library
Type
Bug
Description
Pressing markdown link focuses the answer input

Are you requesting a feature, reporting a bug or asking a question?

Bug

What is the current behavior?

Pressing on a link inside a question description focuses the answer input.

What is the expected behavior?

Pressing on a link should open the link.

How would you reproduce the current behavior (if this is a bug)?

  1. Use markdown example
  2. Add question description with link
  3. Press link

Provide the test code and the tested page URL (if applicable)

Tested page URL: https://plnkr.co/edit/SzheBTFLcoIqDweV

Specify your

  • browser: Google Chrome
  • browser version: 84
  • surveyjs platform (angular or react or jquery or knockout or vue): angular
  • surveyjs version: 1.7.24
Product
survey-library
Type
Enhancement
Description
Can we add textUpdateMode to other value in for dropdown questions

Are you requesting a feature, reporting a bug or asking a question?

Asking a question/Requesting a feature.

What is the current behavior?

Add textUpdateMode to "other" value in dropdown questions.

What is the expected behavior?

Can we please add textUpdateMode to other value in for dropdown questions

How would you reproduce the current behavior (if this is a bug)?

I tried this, https://plnkr.co/edit/0F73cRc8zGMYa2Aw, but it is not working.

Provide the test code and the tested page URL (if applicable)

Tested page URL:

Test code

your_code_here

Specify your

  • browser:
  • browser version:
  • surveyjs platform (angular or react or jquery or knockout or vue):
  • surveyjs version:
Product
survey-library
Type
Enhancement
Description
Do not allow to set question/page/panel name with traling space

Remove trailing spaces on setting question/page/panel name and do not allow to use in question name.

Product
survey-library
Type
Enhancement
Description
Unacceptable performance for a large survey with many expression questions

The performance, on running conditions for a large survey over 10k lines with a lot of expressions in it, is unacceptable. We should change our algorithm that re-run conditions on changing the expression value. UPDATE: The performance for the particular survey was imporoved in 20-30 times.

Are you requesting a feature, reporting a bug or asking a question?

question/bug

What is the current behavior?

In my adoption of surveyJS engine I heavily use onValueChanging event but I don't understand why attached callbacks are called twice after selecting an option

What is the expected behavior?

callbacks should be called once

How would you reproduce the current behavior (if this is a bug)?

see console https://plnkr.co/edit/81ZISxzNBgls32Ro

  • surveyjs platform: react
Product
survey-creator
Type
Bug
Description
IE Reordering questions/choices

Are you requesting a feature, reporting a bug or ask a question?

Reporting a bug

What is the current behavior?

Dragging and dropping is not working in IE 11

What is the expected behavior?

Dragging and dropping is available

How would you reproduce the current behavior (if this is a bug)?

Create a new test survey with multiple questions, try to reorder in IE11

Provide the test code and the tested page URL (if applicable)

Specify your

  • browser: IE 11
  • editor version: 1.7.23

Are you requesting a feature, reporting a bug or ask a question?

Reporting a bug

What is the current behavior?

When clicking the "down" arrow at the end of a dropdown question, nothing happens

What is the expected behavior?

The dropdown opens

How would you reproduce the current behavior (if this is a bug)?

Create a fresh survey on the creator and add a dropdown question, then press the arrow on the far right of the dropdown input

Provide the test code and the tested page URL (if applicable)

Specify your

  • browser: Chrome, Firefox, Edge
  • editor version: 1.7.23

If there are several questions in the panel and you delete one question, then the next question in the panel should be selected or the panel, if there is no any question there. The original issue was created in SurveyJS support desk.

Version: v1.7.25, released at Tuesday, August 4, 2020, Total Issue Count: 30

Product Type Description
survey-library Enhancement Css class for the panel's required text span

based on the https://surveyjs.answerdesk.io/ticket/details/T4782

for the modern theme:

.sv-panel__required-text {}
survey-library Bug Remove code duplication for getItemClass functions

We have a code duplication for different platforms (knockout, react and vue) for getItemClass() for radigroup, checkbox and image picker. We have to make the same API for all platforms and move these functions into model to remove the code duplication.

survey-library Enhancement Allow to set different styles for checkbox items: "Select All" and "None"

Two new item styles were added into checkbox. For standard theme:

    itemSelectAll: "sv_q_checkbox_selectall",
    itemNone: "sv_q_checkbox_none",

For modern theme:

    itemSelectAll: "sv-checkbox--selectall",
    itemNone: "sv-checkbox--none",

Here is the example for rendering "Select All" in bold text for standard theme.

     .sv_q_checkbox_selectall {
        font-weight: bold;
      }
survey-library Bug Add imageLinkName into choicesByUrl type

We have "choicesFromWeb" property for image picker. However, it doesn't currently make sense since we do not have the ability to set the image link name and set imageLink property into image picker choices from the web service. Solution is to add imageLinkName property that will work for image picker question only.

survey-library Bug Matrix Header, Cell Allignment problem (default theme)

image

survey-creator Bug Survey-Creator: Property Type "multiplevalues"
survey-creator Enhancement The onCollectionItemDeleting event should be called from adorners (inplace choices editors)
survey-creator Enhancement Make property.displayName a higher priority than localization

For example, you want to change the display name for the "visible" property for question. Make it different from others objects (page, panel). You can do it by changing the JSON property displayName attribute.

Survey.Serializer.findProperty("question", "visible").displayName = "Custom Display Value For Visible Question Property";
survey-creator Bug single input question has focus in design time

1cc3b0b305

survey-creator Bug Condition Editor should use "text" question when setting value for "expression" question

Expression question is read-only. It doesn't make sense to use it for editing value. We have to use "text" question instead.

survey-analytics Enhancement Table results - implement option of deleting multiple records at a time
survey-analytics Enhancement Support the change language functionality
survey-analytics Enhancement Refactor visualizer code responsible for DOM elements manipulation (introduce helpers objects)
survey-analytics Enhancement Introduce an option to show values instead of titles in chart labels

See the https://surveyjs.answerdesk.io/ticket/details/t4720/save-state thread for more details

It may be possible to select the question value instead of the title in the labels? Sometimes the titles of the options are huge and that causes the charts to be quite difficult to read.

survey-analytics Bug Comment-type questions do not update its values as responses get filtered interactively.

Problem: I noticed that one of the features of survey-analytics "Interactive filtering for the select type questions" was not filtering the comment-type questions as well. Ther data was correctly updated as the filter applied but changes were not rendered on the screen.

How to reproduce:

Use a Survey with select type questions and comment type questions. Render the responses using the VisualizationPanel. Select one bar to interactively filter responses. Expected: Only comments belonging to the filtered responses are shown. Actual: Comments from all responses are shown.

survey-analytics Bug Show column not working after updating columns.

Steps to reproduce:

  1. Set column's visibility to 1(Invisible).
  2. Update columns through setter.
  3. Choose column in "Show column" dropdown.
  4. Column won't appear.
survey-analytics Bug Row's details button disappears after columns reorder.

Steps to reproduce:

  1. Move column.
  2. "Details" button disappears.
survey-analytics BreakingChange Should rename "update" method to "updateData"

for better api

this.surveyAnalyticsDataTables.updateData(data);
this.surveyAnalyticsVisPanel.updateData(data);
survey-analytics Enhancement Eliminate visualizers re-creation in panel on every render
survey-analytics Bug Save page size and current page number after updating.

Page size and current page number are restored to defaults after updating tables.

survey-analytics Enhancement Add title attribute for tabulator's cells to show full answer.

Add title attribute to show full answers and titles on the cell's hover.

survey-analytics Enhancement [Refactoring] Segregate layout manager from visualizationPanel
survey-analytics Enhancement [Refactoring] Extract "filterInfo" structure into a separate helper class
survey-analytics Bug Filter on click doesn't work for false value of boolean visualizer

image

survey-analytics Bug Number visualizer (gauge/bullet) doesn't react on change chart type
survey-analytics Bug SelectBase - items order change doesn't trigger re-rendering
survey-analytics Bug Matrix question destroys inner panel on data selection and breaks visualizer
survey-analytics Enhancement Add destroy method for table's extensions

Remove callbacks from the table's events when destroying extension.

survey-analytics Bug VizPanel: moveVisibleElement

if hidden elements exists moveElement starts to operate hidden elemenets. It should be another method moveVisibleElement which will pass correct indexes to moveElement (only visible elements).

survey-analytics Bug Drag bug: when manipulating with data dragging of question is fired

Version: v1.7.25, released at Tuesday, August 4, 2020, Total Issue Count: 30

Product
survey-library
Type
Enhancement
Description
Css class for the panel's required text span

based on the https://surveyjs.answerdesk.io/ticket/details/T4782

for the modern theme:

.sv-panel__required-text {}
Product
survey-library
Type
Bug
Description
Remove code duplication for getItemClass functions

We have a code duplication for different platforms (knockout, react and vue) for getItemClass() for radigroup, checkbox and image picker. We have to make the same API for all platforms and move these functions into model to remove the code duplication.

Product
survey-library
Type
Enhancement
Description
Allow to set different styles for checkbox items: "Select All" and "None"

Two new item styles were added into checkbox. For standard theme:

    itemSelectAll: "sv_q_checkbox_selectall",
    itemNone: "sv_q_checkbox_none",

For modern theme:

    itemSelectAll: "sv-checkbox--selectall",
    itemNone: "sv-checkbox--none",

Here is the example for rendering "Select All" in bold text for standard theme.

     .sv_q_checkbox_selectall {
        font-weight: bold;
      }
Product
survey-library
Type
Bug
Description
Add imageLinkName into choicesByUrl type

We have "choicesFromWeb" property for image picker. However, it doesn't currently make sense since we do not have the ability to set the image link name and set imageLink property into image picker choices from the web service. Solution is to add imageLinkName property that will work for image picker question only.

Product
survey-library
Type
Bug
Description
Matrix Header, Cell Allignment problem (default theme)

image

Product
survey-creator
Type
Bug
Description
Survey-Creator: Property Type "multiplevalues"
Product
survey-creator
Type
Enhancement
Description
Make property.displayName a higher priority than localization

For example, you want to change the display name for the "visible" property for question. Make it different from others objects (page, panel). You can do it by changing the JSON property displayName attribute.

Survey.Serializer.findProperty("question", "visible").displayName = "Custom Display Value For Visible Question Property";
Product
survey-creator
Type
Bug
Description
single input question has focus in design time

1cc3b0b305

Expression question is read-only. It doesn't make sense to use it for editing value. We have to use "text" question instead.

Product
survey-analytics
Type
Enhancement
Description
Table results - implement option of deleting multiple records at a time
Product
survey-analytics
Type
Enhancement
Description
Support the change language functionality
Product
survey-analytics
Type
Enhancement
Description
Introduce an option to show values instead of titles in chart labels

See the https://surveyjs.answerdesk.io/ticket/details/t4720/save-state thread for more details

It may be possible to select the question value instead of the title in the labels? Sometimes the titles of the options are huge and that causes the charts to be quite difficult to read.

Problem: I noticed that one of the features of survey-analytics "Interactive filtering for the select type questions" was not filtering the comment-type questions as well. Ther data was correctly updated as the filter applied but changes were not rendered on the screen.

How to reproduce:

Use a Survey with select type questions and comment type questions. Render the responses using the VisualizationPanel. Select one bar to interactively filter responses. Expected: Only comments belonging to the filtered responses are shown. Actual: Comments from all responses are shown.

Product
survey-analytics
Type
Bug
Description
Show column not working after updating columns.

Steps to reproduce:

  1. Set column's visibility to 1(Invisible).
  2. Update columns through setter.
  3. Choose column in "Show column" dropdown.
  4. Column won't appear.
Product
survey-analytics
Type
Bug
Description
Row's details button disappears after columns reorder.

Steps to reproduce:

  1. Move column.
  2. "Details" button disappears.
Product
survey-analytics
Type
BreakingChange
Description
Should rename "update" method to "updateData"

for better api

this.surveyAnalyticsDataTables.updateData(data);
this.surveyAnalyticsVisPanel.updateData(data);
Product
survey-analytics
Type
Enhancement
Description
Eliminate visualizers re-creation in panel on every render
Product
survey-analytics
Type
Bug
Description
Save page size and current page number after updating.

Page size and current page number are restored to defaults after updating tables.

Product
survey-analytics
Type
Enhancement
Description
Add title attribute for tabulator's cells to show full answer.

Add title attribute to show full answers and titles on the cell's hover.

Product
survey-analytics
Type
Enhancement
Description
[Refactoring] Segregate layout manager from visualizationPanel
Product
survey-analytics
Type
Enhancement
Description
[Refactoring] Extract "filterInfo" structure into a separate helper class
Product
survey-analytics
Type
Bug
Description
Filter on click doesn't work for false value of boolean visualizer

image

Product
survey-analytics
Type
Bug
Description
Number visualizer (gauge/bullet) doesn't react on change chart type
Product
survey-analytics
Type
Bug
Description
SelectBase - items order change doesn't trigger re-rendering
Product
survey-analytics
Type
Enhancement
Description
Add destroy method for table's extensions

Remove callbacks from the table's events when destroying extension.

Product
survey-analytics
Type
Bug
Description
VizPanel: moveVisibleElement

if hidden elements exists moveElement starts to operate hidden elemenets. It should be another method moveVisibleElement which will pass correct indexes to moveElement (only visible elements).

Product
survey-analytics
Type
Bug
Description
Drag bug: when manipulating with data dragging of question is fired

Version: v1.7.24, released at Tuesday, July 28, 2020, Total Issue Count: 10

Product Type Description
survey-library Bug Panel count reverts to 1 from 0 when loading a survey in designer and there is a nested dynamic panel

The original bug was posted on SurveyJS Support Desk.

survey-library Bug rate question doesn't allow to re-select the same value (jQuery, knockout, angular)

If you select a value in rate question, then from the code clear it and try to select the same value visually, you can't do it. We are changing the value on knockout onChanged event and knockout doens't fire this event on re-selecting the value.

survey-library Enhancement textUpdateMode is applicable for entire survey, and not per question

UPD (by Andrew):


The new property textUpdateMode is added into text and comment questions. For text question it is visible when inputType equals to text. There are three possible values, "default", "onBlur" and "onTyping". If the value is default then survey.textUpdateMode property is used.


Are you requesting a feature, reporting a bug or asking a question?

Requesting a Feature/ Asking a Question

What is the current behavior?

textUpdateMode is applicable for entire survey, and not per question

What is the expected behavior?

Is there a way to set textUpdateMode per question? I have a usecase where I need the textUpdateMode mode to be different for different questions. For eg. I am trying to use inputmasking, but it does not work properly when textUpdateMode is set to "onTyping" but for other questions, the business logic demands it to be set to onTyping. Any work around this would be highly appreciated.

How would you reproduce the current behavior (if this is a bug)?

https://plnkr.co/edit/fSLcFlLyiN3rdLzo

Provide the test code and the tested page URL (if applicable)

Tested page URL:

Test code

your_code_here

survey-library Enhancement Render requiredText for required Panel

Render required text for requried Panel and respect survey.questionTitlePattern for Panel as well.

survey-library Enhancement Add error style for a panel
survey-creator BreakingChange Change csvDelimiter in tranlation model from '|' to ','

MS Excel doesn't understand '|' delimiter and on saving put additiona quotes. As result translation parser could not parse the file correctly. By changing the delimiter to ',' solves the issue.

survey-creator Enhancement Introduce options to modify separator top icon
survey-analytics Enhancement Implement save/restore state functionality for panel/chart/... visualizers (summary block)

See the https://surveyjs.answerdesk.io/ticket/details/t4720/save-state thread for more details

Is it possible to also now save state regarding other properties, such as the selected chart type, the ordering (default, ascending, descending)?

survey-analytics Enhancement Implement visualization for matrixdropdown question type

Here is a sample for matrixdropdown with rows text.

survey-analytics Enhancement Review data normalization (normalizedData) in the examples

Do we need this operation now? If yes we should move it inside the analytics-library itself.

var normalizedData = data.map(function (item) {
  survey.getAllQuestions().forEach(function (q) {
    if (item[q.name] === undefined) {
      item[q.name] = "";
    }
  });
  return item;
});

Version: v1.7.24, released at Tuesday, July 28, 2020, Total Issue Count: 10

The original bug was posted on SurveyJS Support Desk.

If you select a value in rate question, then from the code clear it and try to select the same value visually, you can't do it. We are changing the value on knockout onChanged event and knockout doens't fire this event on re-selecting the value.

Product
survey-library
Type
Enhancement
Description
textUpdateMode is applicable for entire survey, and not per question

UPD (by Andrew):


The new property textUpdateMode is added into text and comment questions. For text question it is visible when inputType equals to text. There are three possible values, "default", "onBlur" and "onTyping". If the value is default then survey.textUpdateMode property is used.


Are you requesting a feature, reporting a bug or asking a question?

Requesting a Feature/ Asking a Question

What is the current behavior?

textUpdateMode is applicable for entire survey, and not per question

What is the expected behavior?

Is there a way to set textUpdateMode per question? I have a usecase where I need the textUpdateMode mode to be different for different questions. For eg. I am trying to use inputmasking, but it does not work properly when textUpdateMode is set to "onTyping" but for other questions, the business logic demands it to be set to onTyping. Any work around this would be highly appreciated.

How would you reproduce the current behavior (if this is a bug)?

https://plnkr.co/edit/fSLcFlLyiN3rdLzo

Provide the test code and the tested page URL (if applicable)

Tested page URL:

Test code

your_code_here

Product
survey-library
Type
Enhancement
Description
Render requiredText for required Panel

Render required text for requried Panel and respect survey.questionTitlePattern for Panel as well.

Product
survey-library
Type
Enhancement
Description
Add error style for a panel
Product
survey-creator
Type
BreakingChange
Description
Change csvDelimiter in tranlation model from '|' to ','

MS Excel doesn't understand '|' delimiter and on saving put additiona quotes. As result translation parser could not parse the file correctly. By changing the delimiter to ',' solves the issue.

Product
survey-creator
Type
Enhancement
Description
Introduce options to modify separator top icon

See the https://surveyjs.answerdesk.io/ticket/details/t4720/save-state thread for more details

Is it possible to also now save state regarding other properties, such as the selected chart type, the ordering (default, ascending, descending)?

Product
survey-analytics
Type
Enhancement
Description
Implement visualization for matrixdropdown question type

Here is a sample for matrixdropdown with rows text.

Product
survey-analytics
Type
Enhancement
Description
Review data normalization (normalizedData) in the examples

Do we need this operation now? If yes we should move it inside the analytics-library itself.

var normalizedData = data.map(function (item) {
  survey.getAllQuestions().forEach(function (q) {
    if (item[q.name] === undefined) {
      item[q.name] = "";
    }
  });
  return item;
});

Version: v1.7.21, released at Thursday, July 23, 2020, Total Issue Count: 9

Product Type Description
survey-library BreakingChange Pass the question instance in options of the onClearFiles event
survey-library Bug Warning in react version: "Can't perform a React state update on an unmounted component."

On setting a value to a question that was shown (mounted) and now invisible/on another page or hidden (unmounted), react raise the warning"Can't perform a React state update on an unmounted component.". The original issue came from SurveyJS Support Desk.

survey-creator Enhancement ItemValue Property Editor, Fast Entry works slow for several hunderds items

There is a huge performance issue on editing several hunderds items in Fast Entry (multiline text) section.

survey-creator Enhancement Implement property.nextToProperty attribute.

Currently, a developer requires to write a lot of code to place the property exactly next to another property to make sure it is in the right place. category and visibleIndex attributes may do not work correctly, since the property list and their order in the tab/category can be changed due many reasons. To make sure that a new property is placed exactly next to the particular property you can use nextToProperty attribute. Here is the example:

Survey.Serializer.addProperty("question", {name: "tag", nextToProperty: "title"});
Survey.Serializer.addProperty("question", {name: "tag2", nextToProperty: "tag"});
survey-analytics Enhancement Support visual representation for the comments of selectbase questions

There are requests for comments visualization. See e.g. this thread for more details - https://surveyjs.answerdesk.io/ticket/details/t4453/survey-analytics

survey-analytics Enhancement Implement tabulator support as table-view visualizer
survey-analytics BreakingChange Split survey-analytics package on several bundles

Split survey-analytics package on several bundles:

  • survey.analytics.summary - charts, diagrams, wordclouds and so on - visualization per question
  • survey.analytics.datatables - tabular reprevsenation via datatables (https://datatables.net/)
  • survey.analytics.tabulator- tabular reprevsenation via tabulator (http://tabulator.info/)

I hope we could release only one tabular visualizer

survey-analytics BreakingChange Remove the "targetElement" from the visualizer constructor parameters

It is nesessary for the render function only. This will allow doesn't re-create visualizers in panels,

survey-analytics BreakingChange Make CSS class names unified

At this moment (Jul 2020) we have here two prefixes in CSS styles: "sva-" ("sva-toolbar") and "sa-" ("sa-visualizer__toolbar") We need leave only one

Version: v1.7.21, released at Thursday, July 23, 2020, Total Issue Count: 9

Product
survey-library
Type
BreakingChange
Description
Pass the question instance in options of the onClearFiles event

On setting a value to a question that was shown (mounted) and now invisible/on another page or hidden (unmounted), react raise the warning"Can't perform a React state update on an unmounted component.". The original issue came from SurveyJS Support Desk.

Product
survey-creator
Type
Enhancement
Description
ItemValue Property Editor, Fast Entry works slow for several hunderds items

There is a huge performance issue on editing several hunderds items in Fast Entry (multiline text) section.

Product
survey-creator
Type
Enhancement
Description
Implement property.nextToProperty attribute.

Currently, a developer requires to write a lot of code to place the property exactly next to another property to make sure it is in the right place. category and visibleIndex attributes may do not work correctly, since the property list and their order in the tab/category can be changed due many reasons. To make sure that a new property is placed exactly next to the particular property you can use nextToProperty attribute. Here is the example:

Survey.Serializer.addProperty("question", {name: "tag", nextToProperty: "title"});
Survey.Serializer.addProperty("question", {name: "tag2", nextToProperty: "tag"});
Product
survey-analytics
Type
Enhancement
Description
Support visual representation for the comments of selectbase questions

There are requests for comments visualization. See e.g. this thread for more details - https://surveyjs.answerdesk.io/ticket/details/t4453/survey-analytics

Product
survey-analytics
Type
Enhancement
Description
Implement tabulator support as table-view visualizer
Product
survey-analytics
Type
BreakingChange
Description
Split survey-analytics package on several bundles

Split survey-analytics package on several bundles:

  • survey.analytics.summary - charts, diagrams, wordclouds and so on - visualization per question
  • survey.analytics.datatables - tabular reprevsenation via datatables (https://datatables.net/)
  • survey.analytics.tabulator- tabular reprevsenation via tabulator (http://tabulator.info/)

I hope we could release only one tabular visualizer

Product
survey-analytics
Type
BreakingChange
Description
Remove the "targetElement" from the visualizer constructor parameters

It is nesessary for the render function only. This will allow doesn't re-create visualizers in panels,

Product
survey-analytics
Type
BreakingChange
Description
Make CSS class names unified

At this moment (Jul 2020) we have here two prefixes in CSS styles: "sva-" ("sva-toolbar") and "sa-" ("sa-visualizer__toolbar") We need leave only one

Version: v1.7.20, released at Wednesday, July 15, 2020, Total Issue Count: 13

Product Type Description
survey-library Bug after executing "skip to question" trigger could not change the focus from the focused question

SurveyJS keeps focus the question that is in "skip to question" trigger.

survey-library Bug Convert component name to lower case automatically

If a developer use capital letter in component name, new question name, then adding new property will not work correctly. We need to convert component name into lowercase automatically.

survey-library Bug Can't complete survey with required HTML question
survey-library Enhancement Extend Survey.Serializer API

Survey.Serializer.getAllClasses(); returns the string array of all classes registered in the SurveyJS Library Serializer.getAllPropertiesByName(propertyName) returns the list of JsonObjectProperty objects that has name equals to propertyName parameter. JsonObjectProperty.classInfo - read-only property that returns the JSON class to which the property belongs.

survey-creator Bug Scrollbar appearing when I add image picker question (default theme)
survey-creator Bug Turkish locale instead of danish

Are you requesting a feature, reporting a bug or ask a question?

Bug

What is the current behavior?

When setting currentLocale to "da" Survey Creator elements translate to Turkish

What is the expected behavior?

When setting currentLocale to "da" Survey Creator should translate to Danish

How would you reproduce the current behavior (if this is a bug)?

SurveyCreator.localization.currentLocale = "da";

Provide the test code and the tested page URL (if applicable)

https://plnkr.co/edit/lYX67iAOC1MSP2Yj?preview

survey-creator Enhancement Display expression operator in current locale

The following expression: {question1} notempty and ({question2} = 1) displays as: (notempty {question1} and ({question2} == 1)) It should be display in English as: {question1} is not empty and ({question2} == 1) and in Deutsch as {question1} ist nicht leer und ({question2} == 1)

survey-creator Bug Image question shows inplace actions for "hide/show title" and "make the question requried"

Image question doesn't have title and value. As result related adorners have to be hidden.

survey-creator Bug Title and description adorners throw exception if property is removed

If you remove the property:

Survey.Serializer.removeProperty("question", "description");

You get the error: image

See the https://surveyjs.answerdesk.io/ticket/details/t4683/removing-property thread for more details

survey-creator Enhancement Select survey in property grid on survey title/description editing via adorner
survey-analytics Enhancement Support different calculation types for numeric answers - sum, avg, min, max and so on

See this thread for more details - https://surveyjs.answerdesk.io/ticket/details/t4431/graph-chart-visuals-for-numeric-datatypes

Suppose we want to get the number of covid patients in each hospital, then this data can be presented in several ways like total number of patients, average number of patients in each hospital, maximum and minimum number of patients across all hospitals. This can help to take decisions. (Furthermore scattering around these points will provide more useful information - not a required feature).

survey-analytics Enhancement Add french localization
survey-analytics Bug Unable to render Data Table in Analytics in Vue

I am unbale to render the data table in my Vue component. I am guessing it is the way that jquery is loaded in the vue app.

I am just loading jquery and the plugins using the script tags in the index.html file

    <script src="https://unpkg.com/jquery"></script>
    <script src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>
    <script src="https://cdn.datatables.net/1.10.21/js/jquery.dataTables.js"></script>
    <script src="https://cdn.datatables.net/buttons/1.6.2/js/dataTables.buttons.js"></script>
    <script src="https://cdn.datatables.net/buttons/1.6.2/js/buttons.print.js"></script>
    <script src="https://cdn.datatables.net/buttons/1.6.2/js/buttons.html5.js"></script>
    <script src="https://cdn.datatables.net/colreorder/1.5.2/js/dataTables.colReorder.js"></script>
    <script src="https://cdn.datatables.net/responsive/2.2.4/js/dataTables.responsive.js"></script>
    <script src="https://cdn.datatables.net/rowgroup/1.1.2/js/dataTables.rowGroup.js"></script>
    <script src="https://cdn.datatables.net/select/1.3.1/js/dataTables.select.js"></script>

while survey-analytics is loaded in the vue component

import * as SurveyAnalytics from 'survey-analytics';

And the table is created as such:

const surveyTableNode = document.getElementById('surveyTable');
surveyTableNode.innerHTML = '';

const surveyAnalyticsDataTables = new SurveyAnalytics.DataTables(surveyTableNode, this.survey, normalizedData);

surveyAnalyticsDataTables.render();

However I am getting this error in the .render() function.

Screen Shot 2020-07-07 at 2 59 58 PM

and the error occurs at this line in survey.analytics.js

var datatableApiRef = (this.datatableApi = jquery__WEBPACK_IMPORTED_MODULE_1__(tableNode).DataTable(options));

Any idea what could be the problem? And is there a better way to load jquery and the plugins in vue apps?

Any help would be great thanks

Version: v1.7.20, released at Wednesday, July 15, 2020, Total Issue Count: 13

SurveyJS keeps focus the question that is in "skip to question" trigger.

Product
survey-library
Type
Bug
Description
Convert component name to lower case automatically

If a developer use capital letter in component name, new question name, then adding new property will not work correctly. We need to convert component name into lowercase automatically.

Product
survey-library
Type
Bug
Description
Can't complete survey with required HTML question
Product
survey-library
Type
Enhancement
Description
Extend Survey.Serializer API

Survey.Serializer.getAllClasses(); returns the string array of all classes registered in the SurveyJS Library Serializer.getAllPropertiesByName(propertyName) returns the list of JsonObjectProperty objects that has name equals to propertyName parameter. JsonObjectProperty.classInfo - read-only property that returns the JSON class to which the property belongs.

Product
survey-creator
Type
Bug
Description
Scrollbar appearing when I add image picker question (default theme)
Product
survey-creator
Type
Bug
Description
Turkish locale instead of danish

Are you requesting a feature, reporting a bug or ask a question?

Bug

What is the current behavior?

When setting currentLocale to "da" Survey Creator elements translate to Turkish

What is the expected behavior?

When setting currentLocale to "da" Survey Creator should translate to Danish

How would you reproduce the current behavior (if this is a bug)?

SurveyCreator.localization.currentLocale = "da";

Provide the test code and the tested page URL (if applicable)

https://plnkr.co/edit/lYX67iAOC1MSP2Yj?preview

Product
survey-creator
Type
Enhancement
Description
Display expression operator in current locale

The following expression: {question1} notempty and ({question2} = 1) displays as: (notempty {question1} and ({question2} == 1)) It should be display in English as: {question1} is not empty and ({question2} == 1) and in Deutsch as {question1} ist nicht leer und ({question2} == 1)

Image question doesn't have title and value. As result related adorners have to be hidden.

Product
survey-creator
Type
Bug
Description
Title and description adorners throw exception if property is removed

If you remove the property:

Survey.Serializer.removeProperty("question", "description");

You get the error: image

See the https://surveyjs.answerdesk.io/ticket/details/t4683/removing-property thread for more details

Product
survey-creator
Type
Enhancement
Description
Select survey in property grid on survey title/description editing via adorner

See this thread for more details - https://surveyjs.answerdesk.io/ticket/details/t4431/graph-chart-visuals-for-numeric-datatypes

Suppose we want to get the number of covid patients in each hospital, then this data can be presented in several ways like total number of patients, average number of patients in each hospital, maximum and minimum number of patients across all hospitals. This can help to take decisions. (Furthermore scattering around these points will provide more useful information - not a required feature).

Product
survey-analytics
Type
Enhancement
Description
Add french localization
Product
survey-analytics
Type
Bug
Description
Unable to render Data Table in Analytics in Vue

I am unbale to render the data table in my Vue component. I am guessing it is the way that jquery is loaded in the vue app.

I am just loading jquery and the plugins using the script tags in the index.html file

    <script src="https://unpkg.com/jquery"></script>
    <script src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>
    <script src="https://cdn.datatables.net/1.10.21/js/jquery.dataTables.js"></script>
    <script src="https://cdn.datatables.net/buttons/1.6.2/js/dataTables.buttons.js"></script>
    <script src="https://cdn.datatables.net/buttons/1.6.2/js/buttons.print.js"></script>
    <script src="https://cdn.datatables.net/buttons/1.6.2/js/buttons.html5.js"></script>
    <script src="https://cdn.datatables.net/colreorder/1.5.2/js/dataTables.colReorder.js"></script>
    <script src="https://cdn.datatables.net/responsive/2.2.4/js/dataTables.responsive.js"></script>
    <script src="https://cdn.datatables.net/rowgroup/1.1.2/js/dataTables.rowGroup.js"></script>
    <script src="https://cdn.datatables.net/select/1.3.1/js/dataTables.select.js"></script>

while survey-analytics is loaded in the vue component

import * as SurveyAnalytics from 'survey-analytics';

And the table is created as such:

const surveyTableNode = document.getElementById('surveyTable');
surveyTableNode.innerHTML = '';

const surveyAnalyticsDataTables = new SurveyAnalytics.DataTables(surveyTableNode, this.survey, normalizedData);

surveyAnalyticsDataTables.render();

However I am getting this error in the .render() function.

Screen Shot 2020-07-07 at 2 59 58 PM

and the error occurs at this line in survey.analytics.js

var datatableApiRef = (this.datatableApi = jquery__WEBPACK_IMPORTED_MODULE_1__(tableNode).DataTable(options));

Any idea what could be the problem? And is there a better way to load jquery and the plugins in vue apps?

Any help would be great thanks

Version: v1.7.19, released at Friday, July 10, 2020, Total Issue Count: 15

Product Type Description
survey-library Bug Error box doesn't disappear when other value is entered

var json = { checkErrorsMode: "onValueChanged", questions: [ { type: "dropdown", name: "car", title: "What car are you driving?", isRequired: true, hasOther: true, choices: [ "Citroen" ] } ] };

  1. Select other
  2. Enter other value -> error box will be still visible
survey-library Bug Bug with errors looking in default theme (SurveyJS Vue).
survey-library Bug Missing minRateDescription in narrow window size in modern theme

https://plnkr.co/edit/tHUvGynrnvHofui8

How it should look image

But if decrease window size minRateDescription and maxRateDescription are missing image

survey-library BreakingChange Update question errors on value change if question has error already regardless survey.checkErrorsMode property.

If survey.checkErrosMode is "onNextPage" or "onComplete", but question already shows error, then it makes sense to update error for this question on changing value as "onValueChanged" is set. Here is the example, lets say a survey has several required questions and checkErrorsMode equals to "onNextPage", default value. End-user started to fill out a page and forgot to answer couple of question on the current page, press the Next Page. He will see two errors in questions and survey will focus the first question with the error. On entering by end-user value into required question, he will still see the error and it may confuse him/her. It makes sense to remove the error as "onValueChanged" is set.

survey-library Bug Button "Next" and "Complete" doesn't work if end-user has fixed an error in the the focused question

The minimum reproducable JSON:

{
 "pages": [
  {
   "name": "page1",
   "elements": [
    {
     "type": "text",
     "name": "q1",
     "isRequired": true
    }
   ]
  }
 ],
 "checkErrorsMode": "onValueChanged"
}

Press "Complete" with empty q1, then add a symbol into q1 question, without losing the focus from q1 press "Complete" button again. As result the error will be disappeared, but survey will not be completed. The focus will be on the "Complete" button. End-user will have to press one more time on "Complete" button.

survey-library Enhancement Introduce minWidth/maxWidth properties for question base type

Users should be able set question size constraints declaratively as well as reset default constraint values.

survey-library Bug Vue js "Comment" question UI bug with error box

link to reproduce:

https://plnkr.co/edit/Beeghtmh8WOt73ZI

  • click complete btn
survey-creator Enhancement Introduce an adorner for image picker items editing

ImagePicker improvement: upload image into service, including external service, and add addorner with ability to add/delete the image. We are working on this functionality right now. Our service will allow to post images from the local computer and return the link on them that you will be able to use. You will be able to re-use your own service with our UI.

https://surveyjs.answerdesk.io/ticket/details/T969

survey-creator Enhancement onElementAllowOptions 'undefined' error

Are you requesting a feature, reporting a bug or ask a question?

Bug

What is the current behavior?

image

How would you reproduce the current behavior (if this is a bug)?

I opened one of the samples in Plunker, and added code as below: image

I can see the same error as above in console. (Above error is from my code where creator = surveryCreator) I just copied the code as is from docs. I am not sure if this is the right way to do it, but I could not find any other documentation for the same.

Test code

surveyCreator.onElementAllowOptions.add(function (sender, options) {
        options.allowAddToToolbox = false;
    });

Specify your

  • browser: Chomre
  • editor version: 1.7.18
survey-creator Enhancement Add ability to show confirm dialog on deleting matrix columns and other items in collection properties

Added the new event.

  /**
   * The event is called on deleting a collection item from the Property Editor. For example: column in columns editor or item in choices and so on.
   * <br/> sender the survey creator object that fires the event
   * <br/> options.obj the survey object: Question, Panel, Page or Survey
   * <br/> options.property the collection property (Survey.JsonObjectProperty object). It has name, className, type, visible, readOnly and other properties
   * <br/> options.propertyName the collection property name
   * <br/> options.collection the editing collection where deleting item is located. It is can be columns in the matrices or choices in dropdown question and so on.
   * <br/> options.item the collection item that we are going to delete
   * <br/> options.allowDelete a boolean value. It is true by default. Set it false to abondome the element removing from the collection
   */
  public onCollectionItemDeleting: Survey.Event<(sender: SurveyCreator, options: any) => any, any>;

Example of using, showing confirm dialog for deleting item in pages collection.

creator.onCollectionItemDeleting.add(function (sender, options) {
  if (options.propertyName == "pages") {
     options.allowDelete = confirm("Do you want to delete the page?");
 }
});
survey-creator Enhancement Collapse/Expand Accordions for Property Editors
  /**
   * Collapse all property editor tabs (accordions) in properties panel
   */
  public collapseAllPropertyTabs(): void {
    this.getAccordionTabs().forEach((tab: SurveyElementEditorTabModel) => {
      tab.collapse();
    });
  }

  /**
   * Expand all property editor tabs (accordions) in properties panel
   */
  public expandAllPropertyTabs(): void {
    this.getAccordionTabs().forEach((tab: SurveyElementEditorTabModel) => {
      tab.expand();
    });
  }

  /**
   * Expand certain property editor tab (accordion) in properties panel
   * name - tab category name
   */
  public expandPropertyTab(name: string): void {
    this.getAccordionTabs().forEach((tab: SurveyElementEditorTabModel) => {
      if (tab.name !== name) return;
      tab.expand();
    });
  }

  /**
   * Collapse certain property editor tab (accordion) in properties panel
   * name - tab category name
   */
  public collapsePropertyTab(name: string): void {
    this.getAccordionTabs().forEach((tab: SurveyElementEditorTabModel) => {
      if (tab.name === name) tab.collapse();
    });
  }
}
survey-creator Enhancement Allow to have different text for "Add New" button in Collection Property Editor

Currently we have the same localization string for "Choices", "Columns", "Pages" properties on adding a new item: "Add New". It requires, optionally, to have different localization string for these properties. Here is the example:

SurveyCreator.defaultStrings.pe["addNew@pages"] = "Add New Page";
SurveyCreator.defaultStrings.pe["addNew@columns"] = "Add New Column";
survey-creator Enhancement Add new localization string for logic add "New Item"

ed.lg.addNewItem will be used for "New Item" in logic tab, if it is not empty. Otherwise "pe.addNew" localization string will be used (as in previous versions < 1.7.19).

survey-creator Enhancement Focus first property editor on accordion tab expanded

Instead of focusing the accordion header we need to focus the first property editor in this tab.

survey-creator Enhancement Allow optionally to delete all pages from Pages Property Editor, including the current.

By default, we do not allow to delete the current page. We can optionally allow it by using the following code:

creator.onCanDeleteItem.add(function (sender, options) {
  if (options.item.getType() == "page") {
    options.canDelete = true;
  }
});

Version: v1.7.19, released at Friday, July 10, 2020, Total Issue Count: 15

Product
survey-library
Type
Bug
Description
Error box doesn't disappear when other value is entered

var json = { checkErrorsMode: "onValueChanged", questions: [ { type: "dropdown", name: "car", title: "What car are you driving?", isRequired: true, hasOther: true, choices: [ "Citroen" ] } ] };

  1. Select other
  2. Enter other value -> error box will be still visible
Product
survey-library
Type
Bug
Description
Bug with errors looking in default theme (SurveyJS Vue).
Product
survey-library
Type
Bug
Description
Missing minRateDescription in narrow window size in modern theme

https://plnkr.co/edit/tHUvGynrnvHofui8

How it should look image

But if decrease window size minRateDescription and maxRateDescription are missing image

If survey.checkErrosMode is "onNextPage" or "onComplete", but question already shows error, then it makes sense to update error for this question on changing value as "onValueChanged" is set. Here is the example, lets say a survey has several required questions and checkErrorsMode equals to "onNextPage", default value. End-user started to fill out a page and forgot to answer couple of question on the current page, press the Next Page. He will see two errors in questions and survey will focus the first question with the error. On entering by end-user value into required question, he will still see the error and it may confuse him/her. It makes sense to remove the error as "onValueChanged" is set.

The minimum reproducable JSON:

{
 "pages": [
  {
   "name": "page1",
   "elements": [
    {
     "type": "text",
     "name": "q1",
     "isRequired": true
    }
   ]
  }
 ],
 "checkErrorsMode": "onValueChanged"
}

Press "Complete" with empty q1, then add a symbol into q1 question, without losing the focus from q1 press "Complete" button again. As result the error will be disappeared, but survey will not be completed. The focus will be on the "Complete" button. End-user will have to press one more time on "Complete" button.

Product
survey-library
Type
Enhancement
Description
Introduce minWidth/maxWidth properties for question base type

Users should be able set question size constraints declaratively as well as reset default constraint values.

Product
survey-library
Type
Bug
Description
Vue js "Comment" question UI bug with error box

link to reproduce:

https://plnkr.co/edit/Beeghtmh8WOt73ZI

  • click complete btn
Product
survey-creator
Type
Enhancement
Description
Introduce an adorner for image picker items editing

ImagePicker improvement: upload image into service, including external service, and add addorner with ability to add/delete the image. We are working on this functionality right now. Our service will allow to post images from the local computer and return the link on them that you will be able to use. You will be able to re-use your own service with our UI.

https://surveyjs.answerdesk.io/ticket/details/T969

Product
survey-creator
Type
Enhancement
Description
onElementAllowOptions 'undefined' error

Are you requesting a feature, reporting a bug or ask a question?

Bug

What is the current behavior?

image

How would you reproduce the current behavior (if this is a bug)?

I opened one of the samples in Plunker, and added code as below: image

I can see the same error as above in console. (Above error is from my code where creator = surveryCreator) I just copied the code as is from docs. I am not sure if this is the right way to do it, but I could not find any other documentation for the same.

Test code

surveyCreator.onElementAllowOptions.add(function (sender, options) {
        options.allowAddToToolbox = false;
    });

Specify your

  • browser: Chomre
  • editor version: 1.7.18

Added the new event.

  /**
   * The event is called on deleting a collection item from the Property Editor. For example: column in columns editor or item in choices and so on.
   * <br/> sender the survey creator object that fires the event
   * <br/> options.obj the survey object: Question, Panel, Page or Survey
   * <br/> options.property the collection property (Survey.JsonObjectProperty object). It has name, className, type, visible, readOnly and other properties
   * <br/> options.propertyName the collection property name
   * <br/> options.collection the editing collection where deleting item is located. It is can be columns in the matrices or choices in dropdown question and so on.
   * <br/> options.item the collection item that we are going to delete
   * <br/> options.allowDelete a boolean value. It is true by default. Set it false to abondome the element removing from the collection
   */
  public onCollectionItemDeleting: Survey.Event<(sender: SurveyCreator, options: any) => any, any>;

Example of using, showing confirm dialog for deleting item in pages collection.

creator.onCollectionItemDeleting.add(function (sender, options) {
  if (options.propertyName == "pages") {
     options.allowDelete = confirm("Do you want to delete the page?");
 }
});
Product
survey-creator
Type
Enhancement
Description
Collapse/Expand Accordions for Property Editors
  /**
   * Collapse all property editor tabs (accordions) in properties panel
   */
  public collapseAllPropertyTabs(): void {
    this.getAccordionTabs().forEach((tab: SurveyElementEditorTabModel) => {
      tab.collapse();
    });
  }

  /**
   * Expand all property editor tabs (accordions) in properties panel
   */
  public expandAllPropertyTabs(): void {
    this.getAccordionTabs().forEach((tab: SurveyElementEditorTabModel) => {
      tab.expand();
    });
  }

  /**
   * Expand certain property editor tab (accordion) in properties panel
   * name - tab category name
   */
  public expandPropertyTab(name: string): void {
    this.getAccordionTabs().forEach((tab: SurveyElementEditorTabModel) => {
      if (tab.name !== name) return;
      tab.expand();
    });
  }

  /**
   * Collapse certain property editor tab (accordion) in properties panel
   * name - tab category name
   */
  public collapsePropertyTab(name: string): void {
    this.getAccordionTabs().forEach((tab: SurveyElementEditorTabModel) => {
      if (tab.name === name) tab.collapse();
    });
  }
}
Product
survey-creator
Type
Enhancement
Description
Allow to have different text for "Add New" button in Collection Property Editor

Currently we have the same localization string for "Choices", "Columns", "Pages" properties on adding a new item: "Add New". It requires, optionally, to have different localization string for these properties. Here is the example:

SurveyCreator.defaultStrings.pe["addNew@pages"] = "Add New Page";
SurveyCreator.defaultStrings.pe["addNew@columns"] = "Add New Column";
Product
survey-creator
Type
Enhancement
Description
Add new localization string for logic add "New Item"

ed.lg.addNewItem will be used for "New Item" in logic tab, if it is not empty. Otherwise "pe.addNew" localization string will be used (as in previous versions < 1.7.19).

Product
survey-creator
Type
Enhancement
Description
Focus first property editor on accordion tab expanded

Instead of focusing the accordion header we need to focus the first property editor in this tab.

By default, we do not allow to delete the current page. We can optionally allow it by using the following code:

creator.onCanDeleteItem.add(function (sender, options) {
  if (options.item.getType() == "page") {
    options.canDelete = true;
  }
});

Version: v1.7.18, released at Sunday, July 5, 2020, Total Issue Count: 8

Product Type Description
survey-library Enhancement Create a read-only calculated custom property

The following code should introduce a pages property into page class.

      Survey.Serializer.addProperty("page", {
        name: "pages:surveypages",
        category: "general",
        onGetValue: function (obj) {
          return !!obj && !!obj.survey ? obj.survey.pages : [];
        },
        onSetValue: function (obj) {
          //Do nothing
        },
        isSerializable: false
      });
survey-library BreakingChange Compare two undefined values with "less or equal"/"greater or equal" operators

We have the following expression " <= ", " <= ". If two values ( and ) are undefined then we return false, since JavaScript returns false for undefined <= undefined. However, our expression {v1} = {v2} will return true for undefined values, as well as JavaScript will return true. We decided to return true for undefined values for "less or equal"/"greater or equal" operators. Returning false, confused end-user, non-developers.

survey-library Enhancement Add isCompleteOnTrigger option into onCompleting and onCompleted events

If complete trigger was successfully performed and survey was completed based on this trigger then options.isCompleteOnTrigger is true in onCompleting and onCompleted events.

survey-creator Bug SurveyPropertyEditorFactory.registerCustomEditor doesn't work
survey-creator Bug Cannot switch between validators (and triggers in Survey Logic)
survey-creator Bug Survey Pages Property Editor: survey.currentPage changed on dragging the current page

The survey.currentPage is changing on dragging/changing order of the currentPage. It happens because we are removing the page from the list and then insert it back with another index. As result on removing, the survey founds that the current page was removed and change the current page on the next one. We should block the chaning survey current page on page re-ordering in the Survey Pages Property Editor.

survey-creator Enhancement Hide "Remove all" items button from Survey Pages Property Editor

We should not have "Remove all" button in the Survey Pages Property Editor.

survey-creator Enhancement Allow to show Pages Property Editor on Page Pane

And allow to customize the column list. Here is the required code:

      Survey.Serializer.addProperty("page", {
        name: "pages:surveypages",
        className: "page",
        category: "general",
        displayName: "Page order",
        onGetValue: function (obj) {
          return !!obj && !!obj.survey ? obj.survey.pages : [];
        },
        onSetValue: function (obj) {
          //Do nothing
        },
        isSerializable: false,
      });
      SurveyCreator.SurveyQuestionEditorDefinition.definition["page@page"] = {
        properties: ["name"],
      };

Version: v1.7.18, released at Sunday, July 5, 2020, Total Issue Count: 8

Product
survey-library
Type
Enhancement
Description
Create a read-only calculated custom property

The following code should introduce a pages property into page class.

      Survey.Serializer.addProperty("page", {
        name: "pages:surveypages",
        category: "general",
        onGetValue: function (obj) {
          return !!obj && !!obj.survey ? obj.survey.pages : [];
        },
        onSetValue: function (obj) {
          //Do nothing
        },
        isSerializable: false
      });
Product
survey-library
Type
BreakingChange
Description
Compare two undefined values with "less or equal"/"greater or equal" operators

We have the following expression " <= ", " <= ". If two values ( and ) are undefined then we return false, since JavaScript returns false for undefined <= undefined. However, our expression {v1} = {v2} will return true for undefined values, as well as JavaScript will return true. We decided to return true for undefined values for "less or equal"/"greater or equal" operators. Returning false, confused end-user, non-developers.

Product
survey-library
Type
Enhancement
Description
Add isCompleteOnTrigger option into onCompleting and onCompleted events

If complete trigger was successfully performed and survey was completed based on this trigger then options.isCompleteOnTrigger is true in onCompleting and onCompleted events.

Product
survey-creator
Type
Bug
Description
SurveyPropertyEditorFactory.registerCustomEditor doesn't work
Product
survey-creator
Type
Bug
Description
Cannot switch between validators (and triggers in Survey Logic)

The survey.currentPage is changing on dragging/changing order of the currentPage. It happens because we are removing the page from the list and then insert it back with another index. As result on removing, the survey founds that the current page was removed and change the current page on the next one. We should block the chaning survey current page on page re-ordering in the Survey Pages Property Editor.

Product
survey-creator
Type
Enhancement
Description
Hide "Remove all" items button from Survey Pages Property Editor

We should not have "Remove all" button in the Survey Pages Property Editor.

Product
survey-creator
Type
Enhancement
Description
Allow to show Pages Property Editor on Page Pane

And allow to customize the column list. Here is the required code:

      Survey.Serializer.addProperty("page", {
        name: "pages:surveypages",
        className: "page",
        category: "general",
        displayName: "Page order",
        onGetValue: function (obj) {
          return !!obj && !!obj.survey ? obj.survey.pages : [];
        },
        onSetValue: function (obj) {
          //Do nothing
        },
        isSerializable: false,
      });
      SurveyCreator.SurveyQuestionEditorDefinition.definition["page@page"] = {
        properties: ["name"],
      };

Version: v1.7.17, released at Thursday, July 2, 2020, Total Issue Count: 7

Product Type Description
survey-library Bug Matrix Question answered class is not coming while loading the saved data.

sv-question__title--answer is not loading while loading the survey with the saved data.

survey-library Bug skip trigger doesn't focus correctly question on the next page in react and vue

react and vue requires to call focusing question input with delay (another thread) after changing the current page, since the rendering happens not immediately and coherently for these libraries.

This bug requries functional (E2E) test.

survey-library Enhancement Allow to override the default confirm browser dialog

We are using the standard browser dialog for deleting operation in matrix dynamic or panel dynamic. Some developers need to override it. Here is the code that can do it from v1.7.17

Survey.settings.confirmActionFunc = function (message) {
   //Call your own function and return true to confirm the action or false otherwise
   return confirm("Test: " + message);
};
survey-creator Bug Undo via ctrl+z works when focus inside text input
  1. Go to https://surveyjs.io/create-survey
  2. Add any two questions
  3. Go to properties of first question
  4. Type some title without blur focus
  5. Press ctrl+z
  6. ???
  7. Missing not only last title symbol but second question too

Possible solution: disable possibility to undo survey when focus inside text input

survey-creator Bug Survey and page title inplace editors can't be used via keyboard if title is entered

See the https://surveyjs.answerdesk.io/ticket/details/t4564/not-able-to-edit-title-and-description-of-survey thread for more details:

After editing title or description of survey for first time, one is not able to move focus to title and description by pressing tab key so that one is not able to edit title/description again by keyboard tab flow.

survey-creator Bug qestion validators property editor doesn't load previous created values

The following JSON will bring error on editing validators in question "q1".

{
 "pages": [
  {
   "name": "page1",
   "elements": [
    {
     "type": "text",
     "name": "q1",
     "validators": [
      {
       "type": "email"
      }
     ]
    }
   ]
  }
 ]
}
survey-creator Bug otherText property doesn't show in matrix colum when hasOther is set

The issue was created in SurveyJS support desk.

Version: v1.7.17, released at Thursday, July 2, 2020, Total Issue Count: 7

sv-question__title--answer is not loading while loading the survey with the saved data.

react and vue requires to call focusing question input with delay (another thread) after changing the current page, since the rendering happens not immediately and coherently for these libraries.

This bug requries functional (E2E) test.

Product
survey-library
Type
Enhancement
Description
Allow to override the default confirm browser dialog

We are using the standard browser dialog for deleting operation in matrix dynamic or panel dynamic. Some developers need to override it. Here is the code that can do it from v1.7.17

Survey.settings.confirmActionFunc = function (message) {
   //Call your own function and return true to confirm the action or false otherwise
   return confirm("Test: " + message);
};
Product
survey-creator
Type
Bug
Description
Undo via ctrl+z works when focus inside text input
  1. Go to https://surveyjs.io/create-survey
  2. Add any two questions
  3. Go to properties of first question
  4. Type some title without blur focus
  5. Press ctrl+z
  6. ???
  7. Missing not only last title symbol but second question too

Possible solution: disable possibility to undo survey when focus inside text input

See the https://surveyjs.answerdesk.io/ticket/details/t4564/not-able-to-edit-title-and-description-of-survey thread for more details:

After editing title or description of survey for first time, one is not able to move focus to title and description by pressing tab key so that one is not able to edit title/description again by keyboard tab flow.

The following JSON will bring error on editing validators in question "q1".

{
 "pages": [
  {
   "name": "page1",
   "elements": [
    {
     "type": "text",
     "name": "q1",
     "validators": [
      {
       "type": "email"
      }
     ]
    }
   ]
  }
 ]
}
Product
survey-creator
Type
Bug
Description
otherText property doesn't show in matrix colum when hasOther is set

The issue was created in SurveyJS support desk.

Version: v1.7.16, released at Tuesday, June 30, 2020, Total Issue Count: 14

Product Type Description
survey-library Bug Survey-knockout: the "survey" component isn't rendered
survey-library Bug Multiple Text question with several requried items doesn't work correctly when checkErrorsMode is "onValueChanged"

The following JSON doesn't work as expected. It shows error after entering the first item.

{
    checkErrorsMode: "onValueChanged",
    questions: [
        {
            type: "multipletext",
            name: "q1",
            items: [
                {
                    name: "item1",
                    isRequired: true
                }, {
                    name: "item2",
                    isRequired: true
                }, {
                    name: "item3",
                    isRequired: true
                }
            ]
        }
    ]
}
survey-library Bug Matrix dynamic/dropdown with several requried columns doesn't work correctly when checkErrorsMode is "onValueChanged"

The following JSON will show several errors on changing one cell in the matrix.

{
 "checkErrorsMode": "onValueChanged",
 "pages": [
  {
   "name": "page1",
   "elements": [
    {
     "type": "matrixdynamic",
     "name": "question1",
     "columns": [
      {
       "name": "Column 1",
       "isRequired": true
      },
      {
       "name": "Column 2",
       "isRequired": true
      }
     ],
     "choices": [
      1,
      2,
      3,
      4,
      5
     ]
    }
   ]
  }
 ]
}
survey-library Enhancement Persian localization update version 1.7.15
import { surveyLocalization } from "../surveyStrings";

export var persianSurveyStrings = {
  pagePrevText: "قبلی",
  pageNextText: "بعدی",
  completeText: "تکمیل",
  previewText: "پیش نمایش",
  editText: "ویرایش",
  startSurveyText: "شروع",
  otherItemText: "دیگر(توضیح)",
  noneItemText: "هیچ",
  selectAllItemText: "انتخاب همه",
  progressText: "صفحه {0} از {1}",
  panelDynamicProgressText: "مورد {0} از {1}",
  questionsProgressText: "تعداد پاسخ {0}/{1} سوال",
  emptySurvey: "صفحه ای یا گزینه ای برای این پرسشنامه موجود نیست.",
  completingSurvey: "از شما بابت تکمیل این پرسشنامه متشکریم",
  completingSurveyBefore:
    "به نظر می رسد هم هم اکنون پرسشنامه را تکمیل کرده اید.",
  loadingSurvey: "درحال ایجاد پرسشنامه",
  optionsCaption: "انتخاب کنید...",
  value: "مقدار",
  requiredError: "لطفا به سوال پاسخ دهید",
  requiredInAllRowsError: "لطفا به تمام سطر های سوالات پاسخ دهید",
  requiredInAllRowsError: "لطفا سوالات تمام سطرها را پاسخ دهید.",
  numericError: "مقدار باید عددی باشد",
  textMinLength: "لطفا حداقل  {0} حرف وارد کنید",
  textMaxLength: "لطفا کمتر از  {0} حرف وارد کنید.",
  textMinMaxLength: "لطفا بیشتر از  {0} حرف و کمتر از {1} حرف وارد کنید.",
  minRowCountError: "لطفا حداقل {0} سطر وارد کنید.",
  minSelectError: "حداقل {0} انتخاب کنید.",
  maxSelectError: "لطفا بیشتر از  {0} انتخاب کنید.",
  numericMinMax:
   "'{0}' باید بین {1} و {2} باشد",
  numericMin: "'{0}' بزرگتر مساوی {1} باشد",
  numericMax: "'{0}' باید کوچکتر یا مساوی {1} باشد",
  invalidEmail: "لطفا ایمیل صحیح درج کنید",
  invalidExpression: "عبارت: {0} پاسخ باید 'true' باشد.",
  urlRequestError: "درخواست با خطا روبرو شد: '{0}'. {1}",
  urlGetChoicesError:
   "درخواست مسیری خالی بازگشت داده یا مسیر درست تنظیم نشده",
  exceedMaxSize: "بیشترین حجم مجاز فایل: {0}",
  otherRequiredError: "مقدار 'دیگر' را وارد کنید",
  uploadingFile:
   "فایل در حال آیلود است. لطفا صبر کنید.",
  loadingFile: "بارگیری...",
  chooseFile: "انتخاب فایل(ها)...",
  noFileChosen: "هیچ فایلی انتخاب نشده",
  confirmDelete: "آیا مایل به حذف این ردیف هستید؟",
  keyDuplicationError: "این مقدار باید غیر تکراری باشد",
  addColumn: "ستون جدید",
  addRow: "سطر جدید",
  removeRow: "حذف",
  addPanel: "جدید",
  removePanel: "حذف",
  choices_Item: "آیتم",
  matrix_column: "ستون",
  matrix_row: "سطر",
  savingData: "نتایج در حال ذخیره سازی در سرور است",
  savingDataError: "خطایی در ذخیره سازی نتایج رخ داده است",
  savingDataSuccess: "نتایج با موفقیت ذخیره شد",
  saveAgainButton: "مجدد تلاش کنید"
  timerMin: "دقیقه",
  timerSec: "ثانیه",
  timerSpentAll: "شما مدت {0} در این صفحه و مدت {1} را در مجموع سپری کرده اید.",
  timerSpentPage: "شما مدت {0} را در این صفحه سپری کرده اید.",
  timerSpentSurvey: "شما مدت {0} را در مجموع سپری کرده اید.",
  timerLimitAll:
    "شما مدت {0} از {1} در این صفحه و مدت {2} از {3} را در مجموع سپری کرده اید.",
  timerLimitPage: "شما مدت {0} از {1} را در این صفحه سپری کرده اید.",
  timerLimitSurvey: "شما مدت {0} از {1} را در مجموع سپری کرده اید.",
  cleanCaption: "پاکسازی",
  clearCaption: "خالی کردن",
  chooseFileCaption: "انتخاب فایل",
  removeFileCaption: "حذف این فایل",
  booleanCheckedLabel: "بله",
  booleanUncheckedLabel: "خیر",
  confirmRemoveFile: "آیا میخواهید این فایل را پاک کنید: {0}?",
  confirmRemoveAllFiles: "آیا میخواهید تمام فایل ها را پاک کنید?",
  questionTitlePatternText: "عنوان سوال",
};
surveyLocalization.locales["fa"] = persianSurveyStrings;
surveyLocalization.localeNames["fa"] = "فارْسِى";

survey-library Bug page.visibleIndex is not updated if visiblity is changed based on elements inside the page

If the page becomes visible/invisible based on a question/questions inside it, then page.visibleIndex becomes incorrect. Page is invisible, regardless page.visibile and page.visibleIf properties, if all elements inside this page are invisible. It leads to an issue when isNext/isPrev property in survey.onCurrentPageChanging/survey.onCurrentPageChanged events are incorrect. Here is the related ticket on SurveyJS support desk.

survey-library Bug Wrong layout in matrix dropdown/dynamic if dropdown column hasOther turn on in knockout

Please try the following JSON:

{
"elements": [
    {
     "type": "matrixdynamic",
     "name": "question5",
     "columns": [
      {
       "name": "Column 1",
       "cellType": "dropdown",
       "hasOther": true
      },
      {
       "name": "Column 2"
      },
      {
       "name": "Column 3"
      }
     ],
     "choices": [
      1,
      2,
      3,
      4,
      5
     ]
    }
   ]
}

You will see that cell questions in the first column are rendering not in the line with other questions in the row.

survey-creator Bug Bug in Custom Property Editor sample online

The ckeditor seems to be rendering twice for each property that is being replaced in the online sample code. (Title, Description Html) https://surveyjs.io/Examples/Survey-Creator/?id=ckeditorpropertyeditor&theme=bootstrap

I didn't initially notice it, because I thought it was supposed to be the same field twice, but saw it in my code (based on the sample) and they are indeed duplicates.

Seems like it could be a knockout binding issue, but I don't have enough expertise in knockout to trace it down

Great job on Survey.js BTW. I am planning on buying a license next week. Marc

survey-creator Enhancement Hide the "questionStartIndex" property of a survey if "showQuestionNumbers" is set to "off"
survey-creator Enhancement Add Survey Pages property Editor

Some developers remove pages tabs from the Creator and use Page Selector dropdown only. In this case, end users could not change the pages order. We need Pages Property Editor to allow them to do it.

survey-creator Bug onPropertyAfterRender event doesn't work

using this event throw a error in the console

creator.onPropertyAfterRender.add( ()=>{} )
survey-creator Enhancement [Accessibility Issue] [Survey Designer][Property Pane]: remove option from choices in property pane doesn't read it as remove button
survey-creator Enhancement Missing label for the object selector dropdown in properties panel
survey-analytics Enhancement How to hide 'hide button' and tool bar line all?

Thanks. 1.7.7. works perfectly. And one more question.

How to hide 'hide button' and tool bar line all?

Screen Shot 2020-05-20 at 4 11 36 PM

Originally posted by @kryptojet in https://github.com/surveyjs/survey-analytics/issues/28#issuecomment-631285583

survey-analytics Enhancement Upgrade Webpack to version 4.X

Version: v1.7.16, released at Tuesday, June 30, 2020, Total Issue Count: 14

Product
survey-library
Type
Bug
Description
Survey-knockout: the "survey" component isn't rendered

The following JSON doesn't work as expected. It shows error after entering the first item.

{
    checkErrorsMode: "onValueChanged",
    questions: [
        {
            type: "multipletext",
            name: "q1",
            items: [
                {
                    name: "item1",
                    isRequired: true
                }, {
                    name: "item2",
                    isRequired: true
                }, {
                    name: "item3",
                    isRequired: true
                }
            ]
        }
    ]
}

The following JSON will show several errors on changing one cell in the matrix.

{
 "checkErrorsMode": "onValueChanged",
 "pages": [
  {
   "name": "page1",
   "elements": [
    {
     "type": "matrixdynamic",
     "name": "question1",
     "columns": [
      {
       "name": "Column 1",
       "isRequired": true
      },
      {
       "name": "Column 2",
       "isRequired": true
      }
     ],
     "choices": [
      1,
      2,
      3,
      4,
      5
     ]
    }
   ]
  }
 ]
}
Product
survey-library
Type
Enhancement
Description
Persian localization update version 1.7.15
import { surveyLocalization } from "../surveyStrings";

export var persianSurveyStrings = {
  pagePrevText: "قبلی",
  pageNextText: "بعدی",
  completeText: "تکمیل",
  previewText: "پیش نمایش",
  editText: "ویرایش",
  startSurveyText: "شروع",
  otherItemText: "دیگر(توضیح)",
  noneItemText: "هیچ",
  selectAllItemText: "انتخاب همه",
  progressText: "صفحه {0} از {1}",
  panelDynamicProgressText: "مورد {0} از {1}",
  questionsProgressText: "تعداد پاسخ {0}/{1} سوال",
  emptySurvey: "صفحه ای یا گزینه ای برای این پرسشنامه موجود نیست.",
  completingSurvey: "از شما بابت تکمیل این پرسشنامه متشکریم",
  completingSurveyBefore:
    "به نظر می رسد هم هم اکنون پرسشنامه را تکمیل کرده اید.",
  loadingSurvey: "درحال ایجاد پرسشنامه",
  optionsCaption: "انتخاب کنید...",
  value: "مقدار",
  requiredError: "لطفا به سوال پاسخ دهید",
  requiredInAllRowsError: "لطفا به تمام سطر های سوالات پاسخ دهید",
  requiredInAllRowsError: "لطفا سوالات تمام سطرها را پاسخ دهید.",
  numericError: "مقدار باید عددی باشد",
  textMinLength: "لطفا حداقل  {0} حرف وارد کنید",
  textMaxLength: "لطفا کمتر از  {0} حرف وارد کنید.",
  textMinMaxLength: "لطفا بیشتر از  {0} حرف و کمتر از {1} حرف وارد کنید.",
  minRowCountError: "لطفا حداقل {0} سطر وارد کنید.",
  minSelectError: "حداقل {0} انتخاب کنید.",
  maxSelectError: "لطفا بیشتر از  {0} انتخاب کنید.",
  numericMinMax:
   "'{0}' باید بین {1} و {2} باشد",
  numericMin: "'{0}' بزرگتر مساوی {1} باشد",
  numericMax: "'{0}' باید کوچکتر یا مساوی {1} باشد",
  invalidEmail: "لطفا ایمیل صحیح درج کنید",
  invalidExpression: "عبارت: {0} پاسخ باید 'true' باشد.",
  urlRequestError: "درخواست با خطا روبرو شد: '{0}'. {1}",
  urlGetChoicesError:
   "درخواست مسیری خالی بازگشت داده یا مسیر درست تنظیم نشده",
  exceedMaxSize: "بیشترین حجم مجاز فایل: {0}",
  otherRequiredError: "مقدار 'دیگر' را وارد کنید",
  uploadingFile:
   "فایل در حال آیلود است. لطفا صبر کنید.",
  loadingFile: "بارگیری...",
  chooseFile: "انتخاب فایل(ها)...",
  noFileChosen: "هیچ فایلی انتخاب نشده",
  confirmDelete: "آیا مایل به حذف این ردیف هستید؟",
  keyDuplicationError: "این مقدار باید غیر تکراری باشد",
  addColumn: "ستون جدید",
  addRow: "سطر جدید",
  removeRow: "حذف",
  addPanel: "جدید",
  removePanel: "حذف",
  choices_Item: "آیتم",
  matrix_column: "ستون",
  matrix_row: "سطر",
  savingData: "نتایج در حال ذخیره سازی در سرور است",
  savingDataError: "خطایی در ذخیره سازی نتایج رخ داده است",
  savingDataSuccess: "نتایج با موفقیت ذخیره شد",
  saveAgainButton: "مجدد تلاش کنید"
  timerMin: "دقیقه",
  timerSec: "ثانیه",
  timerSpentAll: "شما مدت {0} در این صفحه و مدت {1} را در مجموع سپری کرده اید.",
  timerSpentPage: "شما مدت {0} را در این صفحه سپری کرده اید.",
  timerSpentSurvey: "شما مدت {0} را در مجموع سپری کرده اید.",
  timerLimitAll:
    "شما مدت {0} از {1} در این صفحه و مدت {2} از {3} را در مجموع سپری کرده اید.",
  timerLimitPage: "شما مدت {0} از {1} را در این صفحه سپری کرده اید.",
  timerLimitSurvey: "شما مدت {0} از {1} را در مجموع سپری کرده اید.",
  cleanCaption: "پاکسازی",
  clearCaption: "خالی کردن",
  chooseFileCaption: "انتخاب فایل",
  removeFileCaption: "حذف این فایل",
  booleanCheckedLabel: "بله",
  booleanUncheckedLabel: "خیر",
  confirmRemoveFile: "آیا میخواهید این فایل را پاک کنید: {0}?",
  confirmRemoveAllFiles: "آیا میخواهید تمام فایل ها را پاک کنید?",
  questionTitlePatternText: "عنوان سوال",
};
surveyLocalization.locales["fa"] = persianSurveyStrings;
surveyLocalization.localeNames["fa"] = "فارْسِى";

If the page becomes visible/invisible based on a question/questions inside it, then page.visibleIndex becomes incorrect. Page is invisible, regardless page.visibile and page.visibleIf properties, if all elements inside this page are invisible. It leads to an issue when isNext/isPrev property in survey.onCurrentPageChanging/survey.onCurrentPageChanged events are incorrect. Here is the related ticket on SurveyJS support desk.

Please try the following JSON:

{
"elements": [
    {
     "type": "matrixdynamic",
     "name": "question5",
     "columns": [
      {
       "name": "Column 1",
       "cellType": "dropdown",
       "hasOther": true
      },
      {
       "name": "Column 2"
      },
      {
       "name": "Column 3"
      }
     ],
     "choices": [
      1,
      2,
      3,
      4,
      5
     ]
    }
   ]
}

You will see that cell questions in the first column are rendering not in the line with other questions in the row.

Product
survey-creator
Type
Bug
Description
Bug in Custom Property Editor sample online

The ckeditor seems to be rendering twice for each property that is being replaced in the online sample code. (Title, Description Html) https://surveyjs.io/Examples/Survey-Creator/?id=ckeditorpropertyeditor&theme=bootstrap

I didn't initially notice it, because I thought it was supposed to be the same field twice, but saw it in my code (based on the sample) and they are indeed duplicates.

Seems like it could be a knockout binding issue, but I don't have enough expertise in knockout to trace it down

Great job on Survey.js BTW. I am planning on buying a license next week. Marc

Product
survey-creator
Type
Enhancement
Description
Add Survey Pages property Editor

Some developers remove pages tabs from the Creator and use Page Selector dropdown only. In this case, end users could not change the pages order. We need Pages Property Editor to allow them to do it.

Product
survey-creator
Type
Bug
Description
onPropertyAfterRender event doesn't work

using this event throw a error in the console

creator.onPropertyAfterRender.add( ()=>{} )
Product
survey-creator
Type
Enhancement
Description
Missing label for the object selector dropdown in properties panel
Product
survey-analytics
Type
Enhancement
Description
How to hide 'hide button' and tool bar line all?

Thanks. 1.7.7. works perfectly. And one more question.

How to hide 'hide button' and tool bar line all?

Screen Shot 2020-05-20 at 4 11 36 PM

Originally posted by @kryptojet in https://github.com/surveyjs/survey-analytics/issues/28#issuecomment-631285583

Product
survey-analytics
Type
Enhancement
Description
Upgrade Webpack to version 4.X

Version: v1.7.15, released at Friday, June 26, 2020, Total Issue Count: 2

Product Type Description
survey-creator Enhancement Hide the hideNumber property if showQuestionNumbers is set to false on parent or survey level
survey-creator Enhancement Allow to change the category for existing properties

The following code should change the property "name" category from "general" to "data" and make this property first in the "Data" tab.

var nameProperty = Survey.Serializer.findProperty("question", "name");
nameProperty.category = "data";
newProperty.visibleIndex = 0;

The code should be executed before SurveyJS Creator constructor.

Version: v1.7.15, released at Friday, June 26, 2020, Total Issue Count: 2

Product
survey-creator
Type
Enhancement
Description
Allow to change the category for existing properties

The following code should change the property "name" category from "general" to "data" and make this property first in the "Data" tab.

var nameProperty = Survey.Serializer.findProperty("question", "name");
nameProperty.category = "data";
newProperty.visibleIndex = 0;

The code should be executed before SurveyJS Creator constructor.

Version: v1.7.14, released at Thursday, June 25, 2020, Total Issue Count: 4

Version: v1.7.14, released at Thursday, June 25, 2020, Total Issue Count: 4

Product
survey-creator
Type
Enhancement
Description
Missing label for the page selection dropdown
Product
survey-creator
Type
Bug
Description
Title font size becomes small during editing via inplace editor

See the picture below:

image

Product
survey-creator
Type
Bug
Description
matrix dynamic Columns edit button not displaying

See the attached image:

image

Version: v1.7.13, released at Wednesday, June 24, 2020, Total Issue Count: 16

Product Type Description
survey-library Bug Min/ Max Function not working properly when there is zero value

Are you requesting a feature, reporting a bug or asking a question?

Possible bug

What is the current behaviour?

  1. Min/ Max function, when used to compare an 'expression' type question, doesn't yield expected results. Details:
  1. The min/max function returns the param to be compared with when the 'expression' question is yet to get an initial value (owing to lack of inputs) instead of returning correct result(screenshot1)
  2. When compared with a zero, min/ max function returns the param to be compared with instead of the correct result (screenshot 2)

What is the expected behaviour?

In 1a, would expect a 'zero' or 'null' or 'undefined' to be returned In 1b, the correct result.

How would you reproduce the current behavior (if this is a bug)?

Pl, see the att code.

Provide the test code and the tested page URL (if applicable)

Tested page URL:

Test code

{
 "pages": [
  {
   "name": "page1",
   "elements": [
    {
     "type": "text",
     "name": "question1",
     "title": "Enter Number 1",
     "inputType": "number"
    },
    {
     "type": "text",
     "name": "question2",
     "title": "Enter Number 2",
     "inputType": "number"
    },
    {
     "type": "text",
     "name": "question3",
     "title": "Enter Number 3",
     "inputType": "number"
    },
    {
     "type": "expression",
     "name": "question4",
     "title": "Sum of numbers",
     "expression": "{question1}+ {question2} + {question3}",
     "commentText": "Other (describe)"
    },
    {
     "type": "expression",
     "name": "question5",
     "title": "Max function test",
     "expression": "max({question4}, 200)",
     "displayStyle": "decimal",
     "maximumFractionDigits": 0,
     "minimumFractionDigits": 0,
     "commentText": "Other (describe)"
    },
    {
     "type": "expression",
     "name": "question6",
     "title": "Min function test",
     "expression": "min({question4}, 200)",
     "displayStyle": "decimal",
     "maximumFractionDigits": 0,
     "minimumFractionDigits": 0,
     "commentText": "Other (describe)"
    }
   ]
  }
 ]
}

Specify your

  • browser:
  • browser version:
  • surveyjs platform (angular or react or jquery or knockout or vue):
  • surveyjs version:

image

image

survey-library Bug Do not serialize default values for labelFalse/labelTrue properties in boolean question

We are serializing default values for these properties.

survey-library Enhancement Accessibility: add aria-describedby to make error messages linked to fields

See the https://surveyjs.answerdesk.io/ticket/details/t4437/accessibility-add-aria-describedby-to-make-error-messages-linked-to-fields thread for more details:

Once we submit a form that has errors on them it's not possible for NVDA to read the error messages individually. Steps:

Create form with required fields on it (or any constraint) Submit without filling them (or violating the constraint) Result: screen reader reads all error messages at the same time AND only once. This is a problem because:

not all error messages are read: user don't know what went wrong error messages can not be read again: tabbing through the fields after submitting doesn't tell the user which fields have the errors By adding aria-describedby to all fields, it's possible to link the error message to the field where it comes from. This solves problem #2, error messages would be read when tabbing through the form.

survey-library Bug Accessibility: missing the aria-required attribute in the comment field
survey-library Bug choicesEnableIf property doesn't work in matrix column

The following JSON doesn’t work:

{
    elements: [
      {
        type: "matrixdynamic",
        name: "matrix",
        rowCount: 1,
        columns: [
          {
            name: "col1",
            cellType: "checkbox",
            choices: [1, 2, 3, 4],
          },
          {
            name: "col2",
            cellType: "dropdown",
            choices: [1, 2, 3, 4],
            choicesEnableIf: "{row.col1} contains {item}",
          },
        ],
      },
    ],
  }

The second column show have disabled options in dropdown if there is nothing is selected in the first column. When an end-user check a choice in the first column, the option in the dropdown in the second column should become enabled.

survey-creator Bug Modal properties window with tabs doesn't work properly

how to reproduce:

var creator = new SurveyCreator.SurveyCreator("editorElement", {
  showElementEditorAsPropertyGrid: false,
  useTabsInElementEditor: true
});

then add radiogroup element and open modal properties window

survey-creator Bug creator.survey.addNewPage() function doesn't work

The following code:

creator.survey.addNewPage("newPage");

should work similar to:

creator.addPage();
survey-creator Enhancement Use Webpack 4.X in build scripts
survey-creator Bug Some elements hasn't been rendered after applyBIndings
survey-creator Bug Survey isn't updated in logic tab if the only logic tab is visible
survey-creator Bug Page editor adds two pages if new page added via page selector dropdown

Functional test failed:

✖ surveyjseditor: drag and drop - checking page selector

AssertionError [ERR_ASSERTION]: 3 == 2

Browser: Chrome 83.0.4103.97 / Linux 0.0

  133 |  const select = Selector("svd-pages-editor .svd-page-selector");
  134 |  const option = select.find("option");
  135 |
  136 |  await t.click(select).click(option.withText("Add New Page"));
  137 |
> 138 |  assert.equal(await getPagesCount(), 2);
  139 |
  140 |  await t.click(select).click(option.withText("page1"));
  141 |
  142 |  //check 1 page is active
  143 |  const gearactivePage1 = Selector(".svd-pages ")
survey-creator Enhancement Show otherText and otherTextError properties when hasOther property is checked.

Do not show otherText and otherTextError properties if hasOther property is unchecked.

survey-creator Bug JSON editor area too small if no Ace editor loaded
survey-creator Bug Triggers in Survey logic tab UI bug
survey-creator Enhancement Hide page property editor if there is one page in the survey

There is no sense to show a page property in question/panel if there is only one page in the survey.

survey-creator Enhancement Introduce color chooser property editor

Many users ask for the color chooser property editor. We decided to implement it out-of-the-box.

A color property can be declared the following way:

Survey.Serializer.addProperty("question", "myColor:color");

Version: v1.7.13, released at Wednesday, June 24, 2020, Total Issue Count: 16

Product
survey-library
Type
Bug
Description
Min/ Max Function not working properly when there is zero value

Are you requesting a feature, reporting a bug or asking a question?

Possible bug

What is the current behaviour?

  1. Min/ Max function, when used to compare an 'expression' type question, doesn't yield expected results. Details:
  1. The min/max function returns the param to be compared with when the 'expression' question is yet to get an initial value (owing to lack of inputs) instead of returning correct result(screenshot1)
  2. When compared with a zero, min/ max function returns the param to be compared with instead of the correct result (screenshot 2)

What is the expected behaviour?

In 1a, would expect a 'zero' or 'null' or 'undefined' to be returned In 1b, the correct result.

How would you reproduce the current behavior (if this is a bug)?

Pl, see the att code.

Provide the test code and the tested page URL (if applicable)

Tested page URL:

Test code

{
 "pages": [
  {
   "name": "page1",
   "elements": [
    {
     "type": "text",
     "name": "question1",
     "title": "Enter Number 1",
     "inputType": "number"
    },
    {
     "type": "text",
     "name": "question2",
     "title": "Enter Number 2",
     "inputType": "number"
    },
    {
     "type": "text",
     "name": "question3",
     "title": "Enter Number 3",
     "inputType": "number"
    },
    {
     "type": "expression",
     "name": "question4",
     "title": "Sum of numbers",
     "expression": "{question1}+ {question2} + {question3}",
     "commentText": "Other (describe)"
    },
    {
     "type": "expression",
     "name": "question5",
     "title": "Max function test",
     "expression": "max({question4}, 200)",
     "displayStyle": "decimal",
     "maximumFractionDigits": 0,
     "minimumFractionDigits": 0,
     "commentText": "Other (describe)"
    },
    {
     "type": "expression",
     "name": "question6",
     "title": "Min function test",
     "expression": "min({question4}, 200)",
     "displayStyle": "decimal",
     "maximumFractionDigits": 0,
     "minimumFractionDigits": 0,
     "commentText": "Other (describe)"
    }
   ]
  }
 ]
}

Specify your

  • browser:
  • browser version:
  • surveyjs platform (angular or react or jquery or knockout or vue):
  • surveyjs version:

image

image

We are serializing default values for these properties.

Product
survey-library
Type
Enhancement
Description
Accessibility: add aria-describedby to make error messages linked to fields

See the https://surveyjs.answerdesk.io/ticket/details/t4437/accessibility-add-aria-describedby-to-make-error-messages-linked-to-fields thread for more details:

Once we submit a form that has errors on them it's not possible for NVDA to read the error messages individually. Steps:

Create form with required fields on it (or any constraint) Submit without filling them (or violating the constraint) Result: screen reader reads all error messages at the same time AND only once. This is a problem because:

not all error messages are read: user don't know what went wrong error messages can not be read again: tabbing through the fields after submitting doesn't tell the user which fields have the errors By adding aria-describedby to all fields, it's possible to link the error message to the field where it comes from. This solves problem #2, error messages would be read when tabbing through the form.

Product
survey-library
Type
Bug
Description
choicesEnableIf property doesn't work in matrix column

The following JSON doesn’t work:

{
    elements: [
      {
        type: "matrixdynamic",
        name: "matrix",
        rowCount: 1,
        columns: [
          {
            name: "col1",
            cellType: "checkbox",
            choices: [1, 2, 3, 4],
          },
          {
            name: "col2",
            cellType: "dropdown",
            choices: [1, 2, 3, 4],
            choicesEnableIf: "{row.col1} contains {item}",
          },
        ],
      },
    ],
  }

The second column show have disabled options in dropdown if there is nothing is selected in the first column. When an end-user check a choice in the first column, the option in the dropdown in the second column should become enabled.

Product
survey-creator
Type
Bug
Description
Modal properties window with tabs doesn't work properly

how to reproduce:

var creator = new SurveyCreator.SurveyCreator("editorElement", {
  showElementEditorAsPropertyGrid: false,
  useTabsInElementEditor: true
});

then add radiogroup element and open modal properties window

Product
survey-creator
Type
Bug
Description
creator.survey.addNewPage() function doesn't work

The following code:

creator.survey.addNewPage("newPage");

should work similar to:

creator.addPage();
Product
survey-creator
Type
Enhancement
Description
Use Webpack 4.X in build scripts
Product
survey-creator
Type
Bug
Description
Some elements hasn't been rendered after applyBIndings
Product
survey-creator
Type
Bug
Description
Survey isn't updated in logic tab if the only logic tab is visible

Functional test failed:

✖ surveyjseditor: drag and drop - checking page selector

AssertionError [ERR_ASSERTION]: 3 == 2

Browser: Chrome 83.0.4103.97 / Linux 0.0

  133 |  const select = Selector("svd-pages-editor .svd-page-selector");
  134 |  const option = select.find("option");
  135 |
  136 |  await t.click(select).click(option.withText("Add New Page"));
  137 |
> 138 |  assert.equal(await getPagesCount(), 2);
  139 |
  140 |  await t.click(select).click(option.withText("page1"));
  141 |
  142 |  //check 1 page is active
  143 |  const gearactivePage1 = Selector(".svd-pages ")
Product
survey-creator
Type
Enhancement
Description
Show otherText and otherTextError properties when hasOther property is checked.

Do not show otherText and otherTextError properties if hasOther property is unchecked.

Product
survey-creator
Type
Bug
Description
JSON editor area too small if no Ace editor loaded
Product
survey-creator
Type
Bug
Description
Triggers in Survey logic tab UI bug
Product
survey-creator
Type
Enhancement
Description
Hide page property editor if there is one page in the survey

There is no sense to show a page property in question/panel if there is only one page in the survey.

Product
survey-creator
Type
Enhancement
Description
Introduce color chooser property editor

Many users ask for the color chooser property editor. We decided to implement it out-of-the-box.

A color property can be declared the following way:

Survey.Serializer.addProperty("question", "myColor:color");

Version: v1.7.12, released at Tuesday, June 16, 2020, Total Issue Count: 5

Product Type Description
survey-library Bug onAfterRenderQuestionInput event: urvey-react and survey-knockout giving different htmlElements
survey-library Enhancement Imporove/simplify dynamic properties support in Serializer

Right now it requires to define getDynamicProperties(): Array<string> for an object that supports dynamic properties, for example a matrix column. Matrix column has a property cellType and based on that it adds properties from "dropdown" or "checkbox" or "text" questions into a column. Time to time, we are adding a new properties into questions, but forget to add them into Survey.matrixDropdownColumnTypes variable. Most SurveyJS developers do not know about this variable and report a bug that a new property or a custom property doesn't work/serialize in a matrix column. However, we can remove getDynamicProperties() at all and do not use Survey.matrixDropdownColumnTypes variable. We can take properties directly from cellType className, already cached in Serializer instance.

survey-creator Enhancement Add missed french localization strings for Logic tab

Add missing french localization strings and fix the structure.

survey-creator Enhancement creator.addPage() should return new created page

The function should return the new created page. Right now we should to write the following code:

creator.addPage();
let page = creator.survey.pages[creator.survey.pages.length - 1];

However, it should be:

let page = creator.addPage();
survey-creator Bug Property grid => Choices (itemvalues) editor D&D fails

Here: ba4e9469c5

  • add radiogroup
  • go to choices
  • try to change choices order via D&D

Cannot read property 'focus' of undefined

Version: v1.7.12, released at Tuesday, June 16, 2020, Total Issue Count: 5

Product
survey-library
Type
Enhancement
Description
Imporove/simplify dynamic properties support in Serializer

Right now it requires to define getDynamicProperties(): Array<string> for an object that supports dynamic properties, for example a matrix column. Matrix column has a property cellType and based on that it adds properties from "dropdown" or "checkbox" or "text" questions into a column. Time to time, we are adding a new properties into questions, but forget to add them into Survey.matrixDropdownColumnTypes variable. Most SurveyJS developers do not know about this variable and report a bug that a new property or a custom property doesn't work/serialize in a matrix column. However, we can remove getDynamicProperties() at all and do not use Survey.matrixDropdownColumnTypes variable. We can take properties directly from cellType className, already cached in Serializer instance.

Product
survey-creator
Type
Enhancement
Description
Add missed french localization strings for Logic tab

Add missing french localization strings and fix the structure.

Product
survey-creator
Type
Enhancement
Description
creator.addPage() should return new created page

The function should return the new created page. Right now we should to write the following code:

creator.addPage();
let page = creator.survey.pages[creator.survey.pages.length - 1];

However, it should be:

let page = creator.addPage();
Product
survey-creator
Type
Bug
Description
Property grid => Choices (itemvalues) editor D&D fails

Here: ba4e9469c5

  • add radiogroup
  • go to choices
  • try to change choices order via D&D

Cannot read property 'focus' of undefined

Version: v1.7.11, released at Wednesday, June 10, 2020, Total Issue Count: 15

Product Type Description
survey-library Bug The Model is not declared in survey.react.d.ts

Model in a react app should be created as

var model = new Survey.Model(json);

But now this is impossible because of the "Model" name is not mentioned in typings.

As a workaround this can be used:

var model = new Survey["Model"](json);

See this thread for more details - https://github.com/surveyjs/surveyjs_react_quickstart/issues/19

survey-library Bug layout issue

setting width in pixels via json for questions and panels doesn't work properly link to reproduce https://plnkr.co/edit/5g975SVYJ7ABItiK

survey-creator Bug The creator.logic property contains undefined after creator constructed
survey-creator Enhancement Make title/description adorners respect the readOnly metadata option

We need the common way to disable this inplace editors.

survey-creator Bug New itemvalue should be numeric if default choices values are numeric

I change the default choices for itemvalues as below : var defaultChoices = [{value: 1,text: "Item 1"},{value: 2,text: "Item 2"},{value: 3,text: "Item 3"}]; creator.toolbox.getItemByName("radiogroup").json.choices = defaultChoices; creator.toolbox.getItemByName("checkbox").json.choices = defaultChoices; creator.toolbox.getItemByName("dropdown").json.choices = defaultChoices; If I create a new itemvalue it has the value 'item1'. I expect to have 4 as value.

survey-creator Enhancement Property Editors for min and max properties in question text should have different inputType

min and max properties should have a different inputType in text property editor based on question.inputType. If question.inputType is date, then it should accept date values, if it is number then it should accept number values.

survey-creator Enhancement Introduce option to control simulator visibility on the test survey tab

The option showSimulatorInTestSurveyTab:

  var options = {
    showSimulatorInTestSurveyTab: false
  };
  var creator = new SurveyCreator.SurveyCreator("creatorElement", options);
survey-creator Bug UI bug: Do not scroll buttons "Add"/"Remove All" on adding new choices

We have scrollable area in choices property editor with buttons "Add" and "Remove All". We should scroll the table only.

survey-creator Enhancement svd-accordion doesn't have role "tablist" attribute
survey-creator Enhancement The aria-label attribute of the property grid should be configurable
survey-creator Enhancement Missing the aria-label attribute of the element selector in the logic tab
survey-creator Enhancement The focus is shifted back to the designer tab after performing delete action on choice items in property-grid tab
survey-creator Enhancement [Accessibility Issue][Survey Creator]Focus is lost when try to delete a question from the survey designer
survey-creator Bug SelectBase has wrong ItemValue instances in markup after question converted to other type

See https://surveyjs.answerdesk.io/ticket/details/t4331/item-content-is-lost-after-changing-the-question-type-and-inserting-an-additional-item for more details.

Steps to reproduce: Add a new radougroup question Convert it to checkbox Edit item text via adorner

Result: Check modified choice item in property grid - it still the same Choices and visibleChoices are not the same

survey-creator Enhancement Set focus on the added item or on the next item (in case of removal) for choice items adorner

It's important to keep focus on the neibour or set focus on new items then working with choice items via keyboard. See the https://surveyjs.answerdesk.io/ticket/details/t4341/accessibility-issue-survey-designer-focus-is-lost-in-when-trying-to-add-or-delete thread for more details

Version: v1.7.11, released at Wednesday, June 10, 2020, Total Issue Count: 15

Product
survey-library
Type
Bug
Description
The Model is not declared in survey.react.d.ts

Model in a react app should be created as

var model = new Survey.Model(json);

But now this is impossible because of the "Model" name is not mentioned in typings.

As a workaround this can be used:

var model = new Survey["Model"](json);

See this thread for more details - https://github.com/surveyjs/surveyjs_react_quickstart/issues/19

Product
survey-library
Type
Bug
Description
layout issue

setting width in pixels via json for questions and panels doesn't work properly link to reproduce https://plnkr.co/edit/5g975SVYJ7ABItiK

Product
survey-creator
Type
Enhancement
Description
Make title/description adorners respect the readOnly metadata option

We need the common way to disable this inplace editors.

Product
survey-creator
Type
Bug
Description
New itemvalue should be numeric if default choices values are numeric

I change the default choices for itemvalues as below : var defaultChoices = [{value: 1,text: "Item 1"},{value: 2,text: "Item 2"},{value: 3,text: "Item 3"}]; creator.toolbox.getItemByName("radiogroup").json.choices = defaultChoices; creator.toolbox.getItemByName("checkbox").json.choices = defaultChoices; creator.toolbox.getItemByName("dropdown").json.choices = defaultChoices; If I create a new itemvalue it has the value 'item1'. I expect to have 4 as value.

min and max properties should have a different inputType in text property editor based on question.inputType. If question.inputType is date, then it should accept date values, if it is number then it should accept number values.

Product
survey-creator
Type
Enhancement
Description
Introduce option to control simulator visibility on the test survey tab

The option showSimulatorInTestSurveyTab:

  var options = {
    showSimulatorInTestSurveyTab: false
  };
  var creator = new SurveyCreator.SurveyCreator("creatorElement", options);

We have scrollable area in choices property editor with buttons "Add" and "Remove All". We should scroll the table only.

Product
survey-creator
Type
Enhancement
Description
svd-accordion doesn't have role "tablist" attribute
Product
survey-creator
Type
Enhancement
Description
The aria-label attribute of the property grid should be configurable
Product
survey-creator
Type
Enhancement
Description
Missing the aria-label attribute of the element selector in the logic tab

See https://surveyjs.answerdesk.io/ticket/details/t4331/item-content-is-lost-after-changing-the-question-type-and-inserting-an-additional-item for more details.

Steps to reproduce: Add a new radougroup question Convert it to checkbox Edit item text via adorner

Result: Check modified choice item in property grid - it still the same Choices and visibleChoices are not the same

It's important to keep focus on the neibour or set focus on new items then working with choice items via keyboard. See the https://surveyjs.answerdesk.io/ticket/details/t4341/accessibility-issue-survey-designer-focus-is-lost-in-when-trying-to-add-or-delete thread for more details

Version: v1.7.10, released at Wednesday, June 3, 2020, Total Issue Count: 15

Product Type Description
survey-library Bug Bug on visible if contains operator

Im migrating from survey version 1.0.83 to last one 1.7.7 the thing is there is something different with contains operator because on my survey { "pages": [ { "name": "page1", "elements": [ { "type": "text", "name": "qid1", "visibleIf": "[] contains 'C1'", "isRequired": true } ] } ] } This question was invisible on (1.0.83) and now on version 1.7.7, is visible when the array is empty

Are you requesting a feature, reporting a bug or asking a question?

Bug

What is the current behavior?

The question is visible if the visibleif condition is false "visibleIf": "[] contains 'C1'", -> visible

What is the expected behavior?

The question is invisible if the visibleif condition is false "visibleIf": "[] contains 'C1'", -> invisible

How would you reproduce the current behavior (if this is a bug)?

https://plnkr.co/edit/bg2dUXOxPT64GBpu

Specify your

  • surveyjs version: 1.7.7
survey-library Bug Fix stackoverflow on getting matrix dynamic rowIndex in event on creating new cell

On creating new cell, when new row is not generated, requesting rowIndex from row can lead to stackoverflow.

survey-library Bug Bugs on loading choices from the web with the slow services and changing parameters

If the service for loading data into dropdown/checkbox/radiogroup choices is slow, and it depends on a parameter(s) of other questions, then on changing a parameter during requesting the data, the end-user can see the data from old parameter. For example country/state. The user can change the country value several times and state can be loaded with different and sometimes incorrect items, if a user can change a country several time during the request into a server.

survey-library Bug Custom CSS styles set in the onUpdateQuestionCssClasses event handled are not applied
survey-library Bug Can't checked again column other after enter text to the box. (matrixdropdown)

Are you requesting a feature, reporting a bug or asking a question?

Bug

What is the current behavior?

I have a type matrixdropdown, when i add the column has properties hasOther = true, i check at column Other (describe) and enter value to the box then click focus out this. => Can't checked again column other after enter text to the box.

I have a example as below: https://plnkr.co/edit/BGRiyn9mn64hcziU

What is the expected behavior?

Is there the bug?

How would you reproduce the current behavior (if this is a bug)?

Provide the test code and the tested page URL (if applicable)

Tested page URL:

Test code

your_code_here

Specify your

  • browser:
  • browser version:
  • surveyjs platform (angular or react or jquery or knockout or vue):
  • surveyjs version:
survey-library Bug PanelDynamic: Do not use panelsState if templateTitle is empty.

If the panelsState is "collapsed" or "firstExpanded" and templateTitle is empty, then we do not render any panel at all or render only one panel. We should not take this property into account if templateTitle is empty.

survey-library Bug Avoid stackoverflow for triggers

The following JSON cause the stackoverflow on setting value to q1 and q2.

{
    elements: [
      { type: "text", name: "q1" },
      { type: "text", name: "q2" },
      { type: "text", name: "q3" },
    ],
    triggers: [
      {
        type: "setvalue",
        expression: "{q1} > 0 or {q3} > 1",
        setToName: "q3",
        setValue: 5,
      },
      {
        type: "setvalue",
        expression: "{q2} > 0 or {q3} > 1",
        setToName: "q3",
        setValue: 6,
      },
    ],
  }

We have to block for running the triggers recursive.

survey-library Bug Do not show an error in several rows for matrixdropdown (showInMultipleColumns + columnLayout: 'vertical')

i add properties columnLayout: 'vertical', check at column Other (describe), not enter value to the box then click button complete. => Error message as shown below:

image

You can view ex: https://plnkr.co/edit/BGRiyn9mn64hcziU I think the error message only show up in in the last radio?

At the input with type radio duplicate id.

image

image

Is this the cause of the error?

Originally posted by @Huuvinh94 in https://github.com/surveyjs/survey-library/issues/2200#issuecomment-637932012

survey-creator Bug Add new page button overlaps properties grid
  1. Run SurveyCreator locally
  2. Open a browser window to full width
  3. Expand properties grid width from right to the left a lot
  4. Decrease window size by half
  5. ???
  6. Add new page button overlaps properties grid

image

survey-creator Bug Missing items editor in dropdown when disable readonly
  1. Go to https://surveyjs.io/create-survey
  2. Add dropdown question
  3. Enable readonly property
  4. Disable readonly property
  5. ???
  6. Items editor is missing

image

survey-creator Bug Expression with question type "file" doesn't work correctly in Condition Property Editor

The operator "equal" is disabled for question "file", but set as default. We have to hide the value for this question type. The original issue came from SurveyJS Support Desk.

survey-creator Enhancement Page Editor in the toolbar

based on https://surveyjs.answerdesk.io/ticket/details/T4200

  var creator = new SurveyCreator.SurveyCreator("editorElement", {
    showPageSelectorInToolbar: true,
  });
survey-creator Bug "Error:" string in property Editors is not localized

The original issue came from SurveyJS Support Desk.

survey-creator Bug Confusingly similar names of two File field options

There are two options present on each file field, which have very similar names, and unclear semantic difference: "Allow Images Preview" and "Is image preview shown?".

See the https://surveyjs.answerdesk.io/ticket/details/t4247/confusingly-similar-names-of-two-file-field-options thread for more details.

We need to fix it.

survey-creator Bug VisibleIf expression doesn't appear
  1. Go to https://surveyjs.io/create-survey
  2. Add two questions
  3. Select second question
  4. Go to Logic section in property grid
  5. Expand VisibleIf tab
  6. Choose first question in dropdown
  7. Choose is not empty in second dropdown
  8. Click on Edit button
  9. Click back on Build button
  10. Choose is empty in second dropdown
  11. Wait a two seconds (important!)
  12. Click on Edit button
  13. ???
  14. Expression displays old value until click a textarea

image

Version: v1.7.10, released at Wednesday, June 3, 2020, Total Issue Count: 15

Product
survey-library
Type
Bug
Description
Bug on visible if contains operator

Im migrating from survey version 1.0.83 to last one 1.7.7 the thing is there is something different with contains operator because on my survey { "pages": [ { "name": "page1", "elements": [ { "type": "text", "name": "qid1", "visibleIf": "[] contains 'C1'", "isRequired": true } ] } ] } This question was invisible on (1.0.83) and now on version 1.7.7, is visible when the array is empty

Are you requesting a feature, reporting a bug or asking a question?

Bug

What is the current behavior?

The question is visible if the visibleif condition is false "visibleIf": "[] contains 'C1'", -> visible

What is the expected behavior?

The question is invisible if the visibleif condition is false "visibleIf": "[] contains 'C1'", -> invisible

How would you reproduce the current behavior (if this is a bug)?

https://plnkr.co/edit/bg2dUXOxPT64GBpu

Specify your

  • surveyjs version: 1.7.7

On creating new cell, when new row is not generated, requesting rowIndex from row can lead to stackoverflow.

If the service for loading data into dropdown/checkbox/radiogroup choices is slow, and it depends on a parameter(s) of other questions, then on changing a parameter during requesting the data, the end-user can see the data from old parameter. For example country/state. The user can change the country value several times and state can be loaded with different and sometimes incorrect items, if a user can change a country several time during the request into a server.

Are you requesting a feature, reporting a bug or asking a question?

Bug

What is the current behavior?

I have a type matrixdropdown, when i add the column has properties hasOther = true, i check at column Other (describe) and enter value to the box then click focus out this. => Can't checked again column other after enter text to the box.

I have a example as below: https://plnkr.co/edit/BGRiyn9mn64hcziU

What is the expected behavior?

Is there the bug?

How would you reproduce the current behavior (if this is a bug)?

Provide the test code and the tested page URL (if applicable)

Tested page URL:

Test code

your_code_here

Specify your

  • browser:
  • browser version:
  • surveyjs platform (angular or react or jquery or knockout or vue):
  • surveyjs version:
Product
survey-library
Type
Bug
Description
PanelDynamic: Do not use panelsState if templateTitle is empty.

If the panelsState is "collapsed" or "firstExpanded" and templateTitle is empty, then we do not render any panel at all or render only one panel. We should not take this property into account if templateTitle is empty.

Product
survey-library
Type
Bug
Description
Avoid stackoverflow for triggers

The following JSON cause the stackoverflow on setting value to q1 and q2.

{
    elements: [
      { type: "text", name: "q1" },
      { type: "text", name: "q2" },
      { type: "text", name: "q3" },
    ],
    triggers: [
      {
        type: "setvalue",
        expression: "{q1} > 0 or {q3} > 1",
        setToName: "q3",
        setValue: 5,
      },
      {
        type: "setvalue",
        expression: "{q2} > 0 or {q3} > 1",
        setToName: "q3",
        setValue: 6,
      },
    ],
  }

We have to block for running the triggers recursive.

i add properties columnLayout: 'vertical', check at column Other (describe), not enter value to the box then click button complete. => Error message as shown below:

image

You can view ex: https://plnkr.co/edit/BGRiyn9mn64hcziU I think the error message only show up in in the last radio?

At the input with type radio duplicate id.

image

image

Is this the cause of the error?

Originally posted by @Huuvinh94 in https://github.com/surveyjs/survey-library/issues/2200#issuecomment-637932012

Product
survey-creator
Type
Bug
Description
Add new page button overlaps properties grid
  1. Run SurveyCreator locally
  2. Open a browser window to full width
  3. Expand properties grid width from right to the left a lot
  4. Decrease window size by half
  5. ???
  6. Add new page button overlaps properties grid

image

Product
survey-creator
Type
Bug
Description
Missing items editor in dropdown when disable readonly
  1. Go to https://surveyjs.io/create-survey
  2. Add dropdown question
  3. Enable readonly property
  4. Disable readonly property
  5. ???
  6. Items editor is missing

image

The operator "equal" is disabled for question "file", but set as default. We have to hide the value for this question type. The original issue came from SurveyJS Support Desk.

Product
survey-creator
Type
Enhancement
Description
Page Editor in the toolbar

based on https://surveyjs.answerdesk.io/ticket/details/T4200

  var creator = new SurveyCreator.SurveyCreator("editorElement", {
    showPageSelectorInToolbar: true,
  });
Product
survey-creator
Type
Bug
Description
"Error:" string in property Editors is not localized

The original issue came from SurveyJS Support Desk.

Product
survey-creator
Type
Bug
Description
Confusingly similar names of two File field options

There are two options present on each file field, which have very similar names, and unclear semantic difference: "Allow Images Preview" and "Is image preview shown?".

See the https://surveyjs.answerdesk.io/ticket/details/t4247/confusingly-similar-names-of-two-file-field-options thread for more details.

We need to fix it.

Product
survey-creator
Type
Bug
Description
VisibleIf expression doesn't appear
  1. Go to https://surveyjs.io/create-survey
  2. Add two questions
  3. Select second question
  4. Go to Logic section in property grid
  5. Expand VisibleIf tab
  6. Choose first question in dropdown
  7. Choose is not empty in second dropdown
  8. Click on Edit button
  9. Click back on Build button
  10. Choose is empty in second dropdown
  11. Wait a two seconds (important!)
  12. Click on Edit button
  13. ???
  14. Expression displays old value until click a textarea

image

Version: v1.7.9, released at Thursday, May 28, 2020, Total Issue Count: 3

Product Type Description
survey-library Enhancement Render TextArea in display as div

Are you requesting a feature, reporting a bug or asking a question?

Enhancement

What is the current behavior?

in the display version of the survey a textarea is just set to readonly. This keeps the scrollbar on the side if there is lots of text.

What is the expected behavior?

in display version change it to a div and have all the text inside the div

How would you reproduce the current behavior (if this is a bug)?

Not a bug, but enhancement ! Easier for "printing" a survey

Specify your

  • browser: Chrome
  • surveyjs platform: jquery:
  • surveyjs version: 1.7.6
survey-creator Bug Import button doesn't work in Translation tab

There is an error in console on clicking the "Import" button in Translation tab.

survey-creator Bug Examples not working on Firefox

Are you requesting a feature, reporting a bug or ask a question?

Reporting a bug

What is the current behavior?

Empty page

What is the expected behavior?

loading designer with all controls

How would you reproduce the current behavior (if this is a bug)?

go to the examples page https://surveyjs.io/create-survey with firefox browser

Specify your

  • browser: firefox 76.0.1 (64bit)
  • editor version: 1.7.8

Version: v1.7.9, released at Thursday, May 28, 2020, Total Issue Count: 3

Product
survey-library
Type
Enhancement
Description
Render TextArea in display as div

Are you requesting a feature, reporting a bug or asking a question?

Enhancement

What is the current behavior?

in the display version of the survey a textarea is just set to readonly. This keeps the scrollbar on the side if there is lots of text.

What is the expected behavior?

in display version change it to a div and have all the text inside the div

How would you reproduce the current behavior (if this is a bug)?

Not a bug, but enhancement ! Easier for "printing" a survey

Specify your

  • browser: Chrome
  • surveyjs platform: jquery:
  • surveyjs version: 1.7.6
Product
survey-creator
Type
Bug
Description
Import button doesn't work in Translation tab

There is an error in console on clicking the "Import" button in Translation tab.

Product
survey-creator
Type
Bug
Description
Examples not working on Firefox

Are you requesting a feature, reporting a bug or ask a question?

Reporting a bug

What is the current behavior?

Empty page

What is the expected behavior?

loading designer with all controls

How would you reproduce the current behavior (if this is a bug)?

go to the examples page https://surveyjs.io/create-survey with firefox browser

Specify your

  • browser: firefox 76.0.1 (64bit)
  • editor version: 1.7.8

Version: v1.7.8, released at Tuesday, May 26, 2020, Total Issue Count: 13

Product Type Description
survey-library Bug goNextPageAutomatic not triggering validation errors

Are you requesting a feature, reporting a bug or asking a question?

Its a bug :beetle: :mosquito: :bug:

What is the current behavior?

a survey with goNextPageAutomatic =true will not show validation errors on value change/enter. The progress, bar updates, next page is not displayed, also no error displayed although validation fails.

Using enter here: notice question going green on enter

"validators":[{"type":"numeric","minValue":1905,"maxValue":2005}]}]}

bad

What is the expected behavior?

Validation error should be displayed. Progress not updated.

survey-library Bug Filter choices doesn't work for a question inside a matrix cell and the value in another column is changed

The following JSON doesn't work correctly:

{
      elements: [
        {
          type: "matrixdynamic",
          name: "matrix",
          columns: [
            {
              name: "column1",
              cellType: "text",
            },
            {
              name: "column2",
              choices: [
                { value: "A", visibleIf: "{row.column1} = 1" },
                { value: "B", visibleIf: "{row.column2} = 2" },
                { value: "C", visibleIf: "{row.column2} = 2" },
              ],
            },
          ],
          rowCount: 1,
        },
      ],
    }

column2 choices are all invisible, even if column1 equals 1 or 2.

survey-library Enhancement Add survey.mergeData() function

There are scenarios, when there is a need to merge/overrides the data and do not replace it completely. If the question value exists in the current survey, but doesn't exists in the new coming data object, then keep it.

  /**
   * Merge the values into survey.data. It works as survey.data, except it doesn't clean the existing data, but overrides them.
   * @param data data to merge. It should be an object {keyValue: Value, ...}
   * @see data
   * @see setValue
   */
  public mergeData(data: any);
survey-library Bug showPreviewBeforeComplete, could not go to edit mode to the first page

The original issue was reported on SurveyJS support desk.

survey-creator Enhancement Turn on the "json" mode for Ace Editor

Ace Editor needs to have set the basePath:

ace["config"].set('basePath', SurveyJSONEditor.aceBasePath);

You can set the base path via the following code:

SurveyCreator.SurveyJSONEditor.aceBasePath = "https://cdnjs.cloudflare.com/ajax/libs/ace/1.4.10/";
survey-creator Enhancement Hide title logo adorner if "logo" property is not visible
survey-creator BreakingChange Fit SurveyJS Creator into given area (div or another container element)

Right now SurveyJS Creator tabs can overflow given container. We need to fix it. Bacause of the fix complexity it is planned as an enhancement.

survey-creator Bug Export button doesn't work in Translation tab

Export button just doesn't work in Translation tab.

survey-creator Bug Doesn't correctly disable operators on editing expressions

The original bug came from SurveyJS Support Center

survey-creator Bug Properties tab width not decrease when comment data editor width decreasing
  1. Run SurveyCreator locally
  2. Add comment question
  3. Go to properties tab, data section
  4. Decrease textarea width
  5. ???
  6. Properties width didn't decreased (horizontal scrollbar stays)

image

survey-creator Enhancement Add tooltips/hints for survey logic save/close buttons
survey-pdf Enhancement Implement custom and composite question types
survey-analytics Enhancement Implement getElements method for VisualizationPanel

It should return an array of

export interface IVisualizerPanelElement {
  name: string;
  displayName: string;
  visibility: ElementVisibility;
  type?: string;
}

where visibility is

export enum ElementVisibility {
  Visible,
  Invisible,
  PublicInvisible,
}

An array of the IVisualizerPanelElement items can be passed to VisualizationPanel constructor as 5th parameter. It represents the state of a panel (a set of elements, titles. visibility). The getElements method will allow to get the surrvey state of VisualizationPanel.

See the https://surveyjs.answerdesk.io/ticket/details/t3856/onvisibleelementschanged-event thread for more details

Version: v1.7.8, released at Tuesday, May 26, 2020, Total Issue Count: 13

Product
survey-library
Type
Bug
Description
goNextPageAutomatic not triggering validation errors

Are you requesting a feature, reporting a bug or asking a question?

Its a bug :beetle: :mosquito: :bug:

What is the current behavior?

a survey with goNextPageAutomatic =true will not show validation errors on value change/enter. The progress, bar updates, next page is not displayed, also no error displayed although validation fails.

Using enter here: notice question going green on enter

"validators":[{"type":"numeric","minValue":1905,"maxValue":2005}]}]}

bad

What is the expected behavior?

Validation error should be displayed. Progress not updated.

The following JSON doesn't work correctly:

{
      elements: [
        {
          type: "matrixdynamic",
          name: "matrix",
          columns: [
            {
              name: "column1",
              cellType: "text",
            },
            {
              name: "column2",
              choices: [
                { value: "A", visibleIf: "{row.column1} = 1" },
                { value: "B", visibleIf: "{row.column2} = 2" },
                { value: "C", visibleIf: "{row.column2} = 2" },
              ],
            },
          ],
          rowCount: 1,
        },
      ],
    }

column2 choices are all invisible, even if column1 equals 1 or 2.

Product
survey-library
Type
Enhancement
Description
Add survey.mergeData() function

There are scenarios, when there is a need to merge/overrides the data and do not replace it completely. If the question value exists in the current survey, but doesn't exists in the new coming data object, then keep it.

  /**
   * Merge the values into survey.data. It works as survey.data, except it doesn't clean the existing data, but overrides them.
   * @param data data to merge. It should be an object {keyValue: Value, ...}
   * @see data
   * @see setValue
   */
  public mergeData(data: any);

The original issue was reported on SurveyJS support desk.

Product
survey-creator
Type
Enhancement
Description
Turn on the "json" mode for Ace Editor

Ace Editor needs to have set the basePath:

ace["config"].set('basePath', SurveyJSONEditor.aceBasePath);

You can set the base path via the following code:

SurveyCreator.SurveyJSONEditor.aceBasePath = "https://cdnjs.cloudflare.com/ajax/libs/ace/1.4.10/";
Product
survey-creator
Type
Enhancement
Description
Hide title logo adorner if "logo" property is not visible
Product
survey-creator
Type
BreakingChange
Description
Fit SurveyJS Creator into given area (div or another container element)

Right now SurveyJS Creator tabs can overflow given container. We need to fix it. Bacause of the fix complexity it is planned as an enhancement.

Product
survey-creator
Type
Bug
Description
Export button doesn't work in Translation tab

Export button just doesn't work in Translation tab.

Product
survey-creator
Type
Bug
Description
Doesn't correctly disable operators on editing expressions

The original bug came from SurveyJS Support Center

  1. Run SurveyCreator locally
  2. Add comment question
  3. Go to properties tab, data section
  4. Decrease textarea width
  5. ???
  6. Properties width didn't decreased (horizontal scrollbar stays)

image

Product
survey-creator
Type
Enhancement
Description
Add tooltips/hints for survey logic save/close buttons
Product
survey-pdf
Type
Enhancement
Description
Implement custom and composite question types
Product
survey-analytics
Type
Enhancement
Description
Implement getElements method for VisualizationPanel

It should return an array of

export interface IVisualizerPanelElement {
  name: string;
  displayName: string;
  visibility: ElementVisibility;
  type?: string;
}

where visibility is

export enum ElementVisibility {
  Visible,
  Invisible,
  PublicInvisible,
}

An array of the IVisualizerPanelElement items can be passed to VisualizationPanel constructor as 5th parameter. It represents the state of a panel (a set of elements, titles. visibility). The getElements method will allow to get the surrvey state of VisualizationPanel.

See the https://surveyjs.answerdesk.io/ticket/details/t3856/onvisibleelementschanged-event thread for more details

Version: v1.7.7, released at Wednesday, May 20, 2020, Total Issue Count: 12

Product Type Description
survey-library Enhancement Allow to preview answers before posting the results

Many surveys/forms allow end-users to preview their answers before completing the survey/form. Right now, some of developers use display mode and second survey to create this functionality. We should have it out of the box: Instead of "Complete" button we show "Preview" button. When end-user press "Preview button", we will show all questions, or optionally only answered, in read-only mode on one page (every page converts into a panel with an "Edit" button"). End-user can go to edit mode again, by pressing "Edit" button on a panel to start editing survey again with a particular page or press "Edit" button on Navigation tab to start from the beginning. If an end-user satisfies with results, he/she will press "Complete" button.

New property: survey.showPreviewBeforeComplete: string, ["noPreview", "showAllQuestions", "showAnsweredQuestions"], "noPreview" is the default value. New methods: survey.showPreview(): boolean - go to preview mode, returns false if there is an error on the page. survey.cancelPreview() - go back to edit mode.

The example is here.

survey-library Bug Unable to colorize horizontal scrollbar
  1. Go to https://surveyjs.io/Examples/Pdf-Export?id=survey-pdf-customstylization
  2. Set narrow enough browser window size
  3. ???
  4. Horizontal scrollbar is green (not blue)
survey-library Enhancement Pass question object in options for onUploadFiles event
survey-creator Bug Choice items adorners - addNew/hasOther/hasAll/hasNone controls are not accessible via keyboard
survey-creator Bug Nested item property editor - delete button is not accessible via keyboard
survey-creator Enhancement Add swedish translation

Add localized strings. Translation was done by Thomas Borgström.

survey-creator Bug Updating Navigation button text will not call `onModified` and `saveSurveyFunc`

Are you requesting a feature, reporting a bug or ask a question?

Bug.

What is the current behavior?

Updating survey Navigation properties ("Page previous button text", "Page next button text"...) not firing onModified and/or saveSurveyFunc.

What is the expected behavior?

onModified and/or saveSurveyFunc called on updating Navigation properties.

How would you reproduce the current behavior (if this is a bug)?

  • Set Navigation button text properties ("Page previous button text", etc.).
  • onModified and saveSurveyFunc will not be called.

Specify your

  • browser: Google Chrome 81.0.4044.138
  • editor version: 1.7.6
survey-creator Enhancement Add tooltip for condition and action in logic tab
survey-creator Enhancement Implement toolbar for JSON editor

If AceEditor is available, the toolbar will contain undo/redo/copy/cut/paste commands

See the https://surveyjs.answerdesk.io/ticket/details/t4035/add-buttons-to-json-editor thread for more details

survey-creator Bug Display question title/name for question.valueName in expression

We do not display question title/name if we are using question.valueName in expression (valueName is not empty). We should fix it. If there is several questions with the same valueName, then use the title/name from the first question in the list.

survey-pdf Enhancement Support signaturepad question type out-of-the-box

Since we included the signaturepad question into the core library we need to support it in PDF.

survey-analytics Enhancement How to stop dragging and hide chart selector UI
menu

Thanks

Version: v1.7.7, released at Wednesday, May 20, 2020, Total Issue Count: 12

Product
survey-library
Type
Enhancement
Description
Allow to preview answers before posting the results

Many surveys/forms allow end-users to preview their answers before completing the survey/form. Right now, some of developers use display mode and second survey to create this functionality. We should have it out of the box: Instead of "Complete" button we show "Preview" button. When end-user press "Preview button", we will show all questions, or optionally only answered, in read-only mode on one page (every page converts into a panel with an "Edit" button"). End-user can go to edit mode again, by pressing "Edit" button on a panel to start editing survey again with a particular page or press "Edit" button on Navigation tab to start from the beginning. If an end-user satisfies with results, he/she will press "Complete" button.

New property: survey.showPreviewBeforeComplete: string, ["noPreview", "showAllQuestions", "showAnsweredQuestions"], "noPreview" is the default value. New methods: survey.showPreview(): boolean - go to preview mode, returns false if there is an error on the page. survey.cancelPreview() - go back to edit mode.

The example is here.

Product
survey-library
Type
Bug
Description
Unable to colorize horizontal scrollbar
  1. Go to https://surveyjs.io/Examples/Pdf-Export?id=survey-pdf-customstylization
  2. Set narrow enough browser window size
  3. ???
  4. Horizontal scrollbar is green (not blue)
Product
survey-library
Type
Enhancement
Description
Pass question object in options for onUploadFiles event
Product
survey-creator
Type
Enhancement
Description
Add swedish translation

Add localized strings. Translation was done by Thomas Borgström.

Are you requesting a feature, reporting a bug or ask a question?

Bug.

What is the current behavior?

Updating survey Navigation properties ("Page previous button text", "Page next button text"...) not firing onModified and/or saveSurveyFunc.

What is the expected behavior?

onModified and/or saveSurveyFunc called on updating Navigation properties.

How would you reproduce the current behavior (if this is a bug)?

  • Set Navigation button text properties ("Page previous button text", etc.).
  • onModified and saveSurveyFunc will not be called.

Specify your

  • browser: Google Chrome 81.0.4044.138
  • editor version: 1.7.6
Product
survey-creator
Type
Enhancement
Description
Add tooltip for condition and action in logic tab
Product
survey-creator
Type
Enhancement
Description
Implement toolbar for JSON editor

If AceEditor is available, the toolbar will contain undo/redo/copy/cut/paste commands

See the https://surveyjs.answerdesk.io/ticket/details/t4035/add-buttons-to-json-editor thread for more details

Product
survey-creator
Type
Bug
Description
Display question title/name for question.valueName in expression

We do not display question title/name if we are using question.valueName in expression (valueName is not empty). We should fix it. If there is several questions with the same valueName, then use the title/name from the first question in the list.

Product
survey-pdf
Type
Enhancement
Description
Support signaturepad question type out-of-the-box

Since we included the signaturepad question into the core library we need to support it in PDF.

Product
survey-analytics
Type
Enhancement
Description
How to stop dragging and hide chart selector UI
menu

Thanks

Version: v1.7.6, released at Wednesday, May 13, 2020, Total Issue Count: 8

Product Type Description
survey-library Bug Get rid of KnockoutJS references in jquery and angular survey .d.ts files
survey-library Bug Boolean is editable in display mode

Reporting a bug

Boolean is editable in display mode

What is the current behavior?

The value of the boolean slider is editable in display mode.

What is the expected behavior?

The value of the boolean slider should not be editable in display mode.

How would you reproduce the current behavior (if this is a bug)?

https://plnkr.co/edit/gJOlIpaIcNYwkFlz Click on the slider and see it move in display mode.

Specify your

  • browser: Firefox
  • browser version: latest
  • surveyjs platform (angular or react or jquery or knockout or vue): jQuery
  • surveyjs version: 1.7.5
survey-library Enhancement Add rowTitleWidth property for Matrix Dropdown

Are you requesting a feature, reporting a bug or asking a question?

Im not 100% its a feature request or a question. Did not find this option in the docs, anyway.

What is the current behavior?

Currently one can set the widths for defined columns in the matrix. But does not seem to be possible to set the desired width for the first column containing the sub-question text. I understand it can be done via css, but it should be able to define this per question. Some matrixes have longer texts in rows, and some free space can be allocated there from columns.

so as an example. Lets say I have this: Screenshot from 2020-05-07 18-49-39

What is the expected behavior?

But I want is to look like this: Screenshot from 2020-05-07 18-50-52

survey-library Bug Checkbox question doesn't keep its comment value on changing survey.isSinglePage

The following code doesn't work.

  var survey = new SurveyModel({
    storeOthersAsComment: false,
    elements: [
      {
        type: "checkbox",
        name: "q1",
        hasOther: true,
        choices: [1, 2],
      },
    ],
  });
  var question = <QuestionCheckboxModel>survey.getQuestionByName("q1");
  question.value = "other";
  question.comment = "other2";
  survey.isSinglePage = true;
//question.comment  becomes empty
survey-library Enhancement Add onAfterRender and onAfterRenderContentElement into component JSON

We can handle survey.onAfterRenderQuestion event to change the rendering of Component Question. However, it is not a component approach. This code should be in the component definition.

survey-creator Bug [Logic Tab] Skip option got removed if select from action dropdown

The original issue came from SurveyJS support desk

survey-creator Bug Expression (logic) editor has wrong layout

Editors are splitted in several lines even on wide screen.

See the screenshot below

image

survey-creator Enhancement Add min, max, step properties into property grid for matrix text column

When a SurveyJS Creator user set matrix dropdown/dynamic column to text and then set inputType property to "number", then min, max and step properties should be shown.

Version: v1.7.6, released at Wednesday, May 13, 2020, Total Issue Count: 8

Product
survey-library
Type
Bug
Description
Boolean is editable in display mode

Reporting a bug

Boolean is editable in display mode

What is the current behavior?

The value of the boolean slider is editable in display mode.

What is the expected behavior?

The value of the boolean slider should not be editable in display mode.

How would you reproduce the current behavior (if this is a bug)?

https://plnkr.co/edit/gJOlIpaIcNYwkFlz Click on the slider and see it move in display mode.

Specify your

  • browser: Firefox
  • browser version: latest
  • surveyjs platform (angular or react or jquery or knockout or vue): jQuery
  • surveyjs version: 1.7.5
Product
survey-library
Type
Enhancement
Description
Add rowTitleWidth property for Matrix Dropdown

Are you requesting a feature, reporting a bug or asking a question?

Im not 100% its a feature request or a question. Did not find this option in the docs, anyway.

What is the current behavior?

Currently one can set the widths for defined columns in the matrix. But does not seem to be possible to set the desired width for the first column containing the sub-question text. I understand it can be done via css, but it should be able to define this per question. Some matrixes have longer texts in rows, and some free space can be allocated there from columns.

so as an example. Lets say I have this: Screenshot from 2020-05-07 18-49-39

What is the expected behavior?

But I want is to look like this: Screenshot from 2020-05-07 18-50-52

The following code doesn't work.

  var survey = new SurveyModel({
    storeOthersAsComment: false,
    elements: [
      {
        type: "checkbox",
        name: "q1",
        hasOther: true,
        choices: [1, 2],
      },
    ],
  });
  var question = <QuestionCheckboxModel>survey.getQuestionByName("q1");
  question.value = "other";
  question.comment = "other2";
  survey.isSinglePage = true;
//question.comment  becomes empty
Product
survey-library
Type
Enhancement
Description
Add onAfterRender and onAfterRenderContentElement into component JSON

We can handle survey.onAfterRenderQuestion event to change the rendering of Component Question. However, it is not a component approach. This code should be in the component definition.

Product
survey-creator
Type
Bug
Description
[Logic Tab] Skip option got removed if select from action dropdown

The original issue came from SurveyJS support desk

Product
survey-creator
Type
Bug
Description
Expression (logic) editor has wrong layout

Editors are splitted in several lines even on wide screen.

See the screenshot below

image

Product
survey-creator
Type
Enhancement
Description
Add min, max, step properties into property grid for matrix text column

When a SurveyJS Creator user set matrix dropdown/dynamic column to text and then set inputType property to "number", then min, max and step properties should be shown.

Version: v1.7.5, released at Thursday, May 7, 2020, Total Issue Count: 13

Product Type Description
survey-library Bug Some custom CSS not working since v1.7.1

Reporting a bug?

Some custom CSS is not working since v1.7.1.

What is the current behavior?

Some custom CSS does not get applied.

What is the expected behavior?

All custom CSS should be applied.

How would you reproduce the current behavior (if this is a bug)?

Set the version to 1.7.1 or higher and see the custom css for the question titles disappear. I'm not sure if this happens for more css classes, I have noticed it for my question classes.

Provide the test code and the tested page URL (if applicable)

Tested page URL: https://plnkr.co/edit/2RN0QXZ5sIJGkSQt

Specify your

  • browser: Chrome and Firefox
  • browser version: latest
  • surveyjs platform (angular or react or jquery or knockout or vue): jquery
  • surveyjs version: 1.7.1 onwards
survey-library Bug Question title custom css class is applied only after question value is set

Are you requesting a feature, reporting a bug or asking a question?

bug

What is the current behavior?

question title custom css class is applied only after question value is set

What is the expected behavior?

question title custom css class should by applied after survey rendering

How would you reproduce the current behavior (if this is a bug)?

https://plnkr.co/edit/4kZLfX1A9Zw4ZZyO

survey-library Bug Do not run validators onValueChanged for date/datetime inputType in Question Text

For inputType "date", "datetime" inputType in Text Question the valueChanged fires several times during entering the date value. It confuses end-user to show errors while he is not finish to enter the data.

survey-library Bug visibleIf property in ItemValue class is not observable/reactive

We should make property visibleIf in ItemValue class observable/reactive. Otherwise, the changes in this property will not go into UndoRedo manager. The original issue came from SurveyJS support desk.