Features
- add JSON editor linter with comprehensive linting rules and tests #7968 (March)
- enhance JSON editor linter with new rules and corresponding tests #7968 (March)
- enhance JSON linter with new property validation messages and tests #7968 (March)
- enhance JSON editor with improved error handling and scrolling behavior #7968 (March)
- json-tab: localize the property/required, property/not-an-array and variable linter rules #7968 (Dmitrii Gerasimov)
- json-tab: validate the JSON with survey-core/linter instead of the deserializer #7968 (Dmitrii Gerasimov)
- json-tab: onLintSurvey event to tune the linter options of the JSON Editor tab #7968 (Dmitrii Gerasimov)
- json-tab: a repaired element is named in the language the creator works in #7968 (Dmitrii Gerasimov)
- json-tab: the fix button says what the repair does #7968 (Dmitrii Gerasimov)
- keep a constant on the left where the condition editor writes it back (Dmitrii Gerasimov)
Bug Fixes
- json-tab: remove the Checks sidebar panel #7968 (Dmitrii Gerasimov)
- json-tab: the duplicate name message drops the element count and the kind list #7968 (Dmitrii Gerasimov)
- json-tab: an Ace edit reaches the survey whatever the focus and the undo history #7968 (Dmitrii Gerasimov)
- json-tab: a fix clicked before the error list caught up applies to the current text #7968 (Dmitrii Gerasimov)
- json-tab: the linter knows the variables the variable presets declare #7968 (Dmitrii Gerasimov)
- property grid matrices without row drag render their detail panel (#8029) #8031 (Dmitrii Gerasimov)
Code Refactoring
- json-tab: drop the now unused showLinterPanel option #7968 (Dmitrii Gerasimov)
- json-tab: the fix button applies the edits the linter decided on #7968 (Dmitrii Gerasimov)
- json-tab: remove unused linter styles and clean up linter logic #7968 (March)
- json-tab: adjust flex properties for error title to improve layout #7968 (March)
Performance Improvements
- json-tab: lint a text once - leaving the tab reuses the worker of the last check #7968 (Dmitrii Gerasimov)
Tests
- json-tab: the Ace gutter marks only the blocking errors #7968 (Dmitrii Gerasimov)
- json-tab: variables the variable presets declare are known to the linter #7968 (Dmitrii Gerasimov)
- json-tab: update json-tab-with-errors screenshot #7968 (Dmitrii Gerasimov)
- pin that opening a constant-on-the-left condition does not modify it (Dmitrii Gerasimov)
- pin that an operator with no mirror writes a constant-on-the-left row question first (Dmitrii Gerasimov)
- pin that the logic tab keeps a constant-on-the-left rule unmodified (Dmitrii Gerasimov)
- pin that the property grid detail row renders the detail panel of a matrix without row drag (#8029) #8031 (Dmitrii Gerasimov)
Commits
- [20952df]: Merge branch 'master' into json-tab-linter (Dmitrii Gerasimov) #7968
- [1142e3e]: Merge remote-tracking branch 'origin/master' into json-tab-linter (Dmitrii Gerasimov) #7968
- [4b07f66]: Merge branch 'master' into json-tab-linter (March) #7968
- [cadd69b]: updated survey-creator docs [azurepipelines skip] (surveyjsdeveloper)
- [94a7cbb]: Merge remote-tracking branch 'origin/master' into json-tab-linter (RomanTsukanov) #7968
- [92d16e5]: Revert json-tab-with-errors.png (RomanTsukanov) #7968
- [21a7e41]: Add doccomments (RomanTsukanov) #7968
- [93553ef]: Revert "Revert json-tab-with-errors.png" (Dmitrii Gerasimov) #7968
- [5ea9f1a]: numeric mask trailing zeros [library:11889] (#8017) (Aleksey Novikov) #8017
- [44fb6b7]: updated survey-creator translation for master [azurepipelines skip] (surveyjsdeveloper)
- [e389c63]: [library:11913] Feature/condition migration (#8023) (MarchTokenda) #8023
- [1af2e77]: updated survey-creator translation for master [azurepipelines skip] (surveyjsdeveloper)
- [e39d24e]: #8025 Theme tab is slow to open from Designer (#8026) (Aleksey Novikov) #8026
- [224a91b]: Use toCssClasses instead of CssClassBuilder (#8027) (Andrew) #8027
- [b0d6cd9]: respect prefers-reduced-motion (#8024) (OlgaLarina) #8024
- [f600a51]: move respectReducedMotion -> settings.animation (#8030) (OlgaLarina) #8030
- 3.1.2 [azurepipelines skip] (surveyjsdeveloper)