survey-core 1.9.135 → 1.9.137

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (251) hide show
  1. package/defaultV2.css +385 -19
  2. package/defaultV2.css.map +1 -1
  3. package/defaultV2.fontless.css +385 -19
  4. package/defaultV2.fontless.css.map +1 -1
  5. package/defaultV2.fontless.min.css +2 -2
  6. package/defaultV2.min.css +2 -2
  7. package/i18n/arabic.js +1 -1
  8. package/i18n/arabic.min.js +1 -1
  9. package/i18n/basque.js +1 -1
  10. package/i18n/basque.min.js +1 -1
  11. package/i18n/bulgarian.js +1 -1
  12. package/i18n/bulgarian.min.js +1 -1
  13. package/i18n/catalan.js +1 -1
  14. package/i18n/catalan.min.js +1 -1
  15. package/i18n/croatian.js +1 -1
  16. package/i18n/croatian.min.js +1 -1
  17. package/i18n/czech.js +1 -1
  18. package/i18n/czech.min.js +1 -1
  19. package/i18n/danish.js +1 -1
  20. package/i18n/danish.min.js +1 -1
  21. package/i18n/dutch.js +1 -1
  22. package/i18n/dutch.min.js +1 -1
  23. package/i18n/english.js +1 -1
  24. package/i18n/english.min.js +1 -1
  25. package/i18n/estonian.js +1 -1
  26. package/i18n/estonian.min.js +1 -1
  27. package/i18n/finnish.js +1 -1
  28. package/i18n/finnish.min.js +1 -1
  29. package/i18n/french.js +1 -1
  30. package/i18n/french.min.js +1 -1
  31. package/i18n/georgian.js +1 -1
  32. package/i18n/georgian.min.js +1 -1
  33. package/i18n/german.js +2 -2
  34. package/i18n/german.js.map +1 -1
  35. package/i18n/german.min.js +2 -2
  36. package/i18n/greek.js +1 -1
  37. package/i18n/greek.min.js +1 -1
  38. package/i18n/hebrew.js +2 -2
  39. package/i18n/hebrew.js.map +1 -1
  40. package/i18n/hebrew.min.js +2 -2
  41. package/i18n/hindi.js +1 -1
  42. package/i18n/hindi.min.js +1 -1
  43. package/i18n/hungarian.js +1 -1
  44. package/i18n/hungarian.min.js +1 -1
  45. package/i18n/icelandic.js +1 -1
  46. package/i18n/icelandic.min.js +1 -1
  47. package/i18n/index.js +3 -3
  48. package/i18n/index.js.map +1 -1
  49. package/i18n/index.min.js +2 -2
  50. package/i18n/indonesian.js +1 -1
  51. package/i18n/indonesian.min.js +1 -1
  52. package/i18n/italian.js +1 -1
  53. package/i18n/italian.min.js +1 -1
  54. package/i18n/japanese.js +1 -1
  55. package/i18n/japanese.min.js +1 -1
  56. package/i18n/kazakh.js +1 -1
  57. package/i18n/kazakh.min.js +1 -1
  58. package/i18n/korean.js +1 -1
  59. package/i18n/korean.min.js +1 -1
  60. package/i18n/latvian.js +1 -1
  61. package/i18n/latvian.min.js +1 -1
  62. package/i18n/lithuanian.js +1 -1
  63. package/i18n/lithuanian.min.js +1 -1
  64. package/i18n/macedonian.js +1 -1
  65. package/i18n/macedonian.min.js +1 -1
  66. package/i18n/malay.js +1 -1
  67. package/i18n/malay.min.js +1 -1
  68. package/i18n/nl-BE.js +1 -1
  69. package/i18n/nl-BE.min.js +1 -1
  70. package/i18n/norwegian.js +1 -1
  71. package/i18n/norwegian.min.js +1 -1
  72. package/i18n/persian.js +1 -1
  73. package/i18n/persian.min.js +1 -1
  74. package/i18n/polish.js +1 -1
  75. package/i18n/polish.min.js +1 -1
  76. package/i18n/portuguese-br.js +1 -1
  77. package/i18n/portuguese-br.min.js +1 -1
  78. package/i18n/portuguese.js +1 -1
  79. package/i18n/portuguese.min.js +1 -1
  80. package/i18n/romanian.js +1 -1
  81. package/i18n/romanian.min.js +1 -1
  82. package/i18n/russian.js +1 -1
  83. package/i18n/russian.min.js +1 -1
  84. package/i18n/serbian.js +1 -1
  85. package/i18n/serbian.min.js +1 -1
  86. package/i18n/simplified-chinese.js +1 -1
  87. package/i18n/simplified-chinese.min.js +1 -1
  88. package/i18n/slovak.js +1 -1
  89. package/i18n/slovak.min.js +1 -1
  90. package/i18n/spanish.js +1 -1
  91. package/i18n/spanish.min.js +1 -1
  92. package/i18n/swahili.js +1 -1
  93. package/i18n/swahili.min.js +1 -1
  94. package/i18n/swedish.js +1 -1
  95. package/i18n/swedish.min.js +1 -1
  96. package/i18n/tajik.js +1 -1
  97. package/i18n/tajik.min.js +1 -1
  98. package/i18n/telugu.js +1 -1
  99. package/i18n/telugu.min.js +1 -1
  100. package/i18n/thai.js +1 -1
  101. package/i18n/thai.min.js +1 -1
  102. package/i18n/traditional-chinese.js +1 -1
  103. package/i18n/traditional-chinese.min.js +1 -1
  104. package/i18n/turkish.js +1 -1
  105. package/i18n/turkish.min.js +1 -1
  106. package/i18n/ukrainian.js +1 -1
  107. package/i18n/ukrainian.min.js +1 -1
  108. package/i18n/urdu.js +1 -1
  109. package/i18n/urdu.min.js +1 -1
  110. package/i18n/vietnamese.js +1 -1
  111. package/i18n/vietnamese.min.js +1 -1
  112. package/i18n/welsh.js +1 -1
  113. package/i18n/welsh.min.js +1 -1
  114. package/modern.css +187 -1
  115. package/modern.css.map +1 -1
  116. package/modern.fontless.css +187 -1
  117. package/modern.fontless.css.map +1 -1
  118. package/modern.fontless.min.css +2 -2
  119. package/modern.min.css +2 -2
  120. package/package.json +1 -1
  121. package/plugins/bootstrap-integration.js +1 -1
  122. package/plugins/bootstrap-integration.min.js +1 -1
  123. package/plugins/bootstrap-material-integration.js +1 -1
  124. package/plugins/bootstrap-material-integration.min.js +1 -1
  125. package/survey.core.js +1140 -196
  126. package/survey.core.js.map +1 -1
  127. package/survey.core.min.js +3 -3
  128. package/survey.css +1 -1
  129. package/survey.css.map +1 -1
  130. package/survey.i18n.js +3 -3
  131. package/survey.i18n.js.map +1 -1
  132. package/survey.i18n.min.js +2 -2
  133. package/survey.min.css +1 -1
  134. package/themes/borderless-dark-panelless.js +1 -1
  135. package/themes/borderless-dark-panelless.min.js +1 -1
  136. package/themes/borderless-dark.js +1 -1
  137. package/themes/borderless-dark.min.js +1 -1
  138. package/themes/borderless-light-panelless..js +1 -1
  139. package/themes/borderless-light-panelless..min.js +1 -1
  140. package/themes/borderless-light.js +1 -1
  141. package/themes/borderless-light.min.js +1 -1
  142. package/themes/contrast-dark-panelless.js +1 -1
  143. package/themes/contrast-dark-panelless.min.js +1 -1
  144. package/themes/contrast-dark.js +1 -1
  145. package/themes/contrast-dark.min.js +1 -1
  146. package/themes/contrast-light-panelless.js +1 -1
  147. package/themes/contrast-light-panelless.min.js +1 -1
  148. package/themes/contrast-light.js +1 -1
  149. package/themes/contrast-light.min.js +1 -1
  150. package/themes/default-dark-panelless.js +1 -1
  151. package/themes/default-dark-panelless.min.js +1 -1
  152. package/themes/default-dark.js +1 -1
  153. package/themes/default-dark.min.js +1 -1
  154. package/themes/default-light-panelless.js +1 -1
  155. package/themes/default-light-panelless.min.js +1 -1
  156. package/themes/default-light.js +1 -1
  157. package/themes/default-light.min.js +1 -1
  158. package/themes/doubleborder-dark-panelless.js +1 -1
  159. package/themes/doubleborder-dark-panelless.min.js +1 -1
  160. package/themes/doubleborder-dark.js +1 -1
  161. package/themes/doubleborder-dark.min.js +1 -1
  162. package/themes/doubleborder-light-panelles.js +1 -1
  163. package/themes/doubleborder-light-panelles.min.js +1 -1
  164. package/themes/doubleborder-light.js +1 -1
  165. package/themes/doubleborder-light.min.js +1 -1
  166. package/themes/flat-dark-panelless.js +1 -1
  167. package/themes/flat-dark-panelless.min.js +1 -1
  168. package/themes/flat-dark.js +1 -1
  169. package/themes/flat-dark.min.js +1 -1
  170. package/themes/flat-light-panelless.js +1 -1
  171. package/themes/flat-light-panelless.min.js +1 -1
  172. package/themes/flat-light.js +1 -1
  173. package/themes/flat-light.min.js +1 -1
  174. package/themes/index.js +1 -1
  175. package/themes/index.min.js +1 -1
  176. package/themes/layered-dark-panelless.js +1 -1
  177. package/themes/layered-dark-panelless.min.js +1 -1
  178. package/themes/layered-dark.js +1 -1
  179. package/themes/layered-dark.min.js +1 -1
  180. package/themes/layered-light-panelless.js +1 -1
  181. package/themes/layered-light-panelless.min.js +1 -1
  182. package/themes/layered-light.js +1 -1
  183. package/themes/layered-light.min.js +1 -1
  184. package/themes/plain-dark-panelless.js +1 -1
  185. package/themes/plain-dark-panelless.min.js +1 -1
  186. package/themes/plain-dark.js +1 -1
  187. package/themes/plain-dark.min.js +1 -1
  188. package/themes/plain-light-panelless.js +1 -1
  189. package/themes/plain-light-panelless.min.js +1 -1
  190. package/themes/plain-light.js +1 -1
  191. package/themes/plain-light.min.js +1 -1
  192. package/themes/sharp-dark-panelless.js +1 -1
  193. package/themes/sharp-dark-panelless.min.js +1 -1
  194. package/themes/sharp-dark.js +1 -1
  195. package/themes/sharp-dark.min.js +1 -1
  196. package/themes/sharp-light-panelless.js +1 -1
  197. package/themes/sharp-light-panelless.min.js +1 -1
  198. package/themes/sharp-light.js +1 -1
  199. package/themes/sharp-light.min.js +1 -1
  200. package/themes/solid-dark-panelless.js +1 -1
  201. package/themes/solid-dark-panelless.min.js +1 -1
  202. package/themes/solid-dark.js +1 -1
  203. package/themes/solid-dark.min.js +1 -1
  204. package/themes/solid-light-panelless.js +1 -1
  205. package/themes/solid-light-panelless.min.js +1 -1
  206. package/themes/solid-light.js +1 -1
  207. package/themes/solid-light.min.js +1 -1
  208. package/themes/three-dimensional-dark-panelless.js +1 -1
  209. package/themes/three-dimensional-dark-panelless.min.js +1 -1
  210. package/themes/three-dimensional-dark.js +1 -1
  211. package/themes/three-dimensional-dark.min.js +1 -1
  212. package/themes/three-dimensional-light-panelless.js +1 -1
  213. package/themes/three-dimensional-light-panelless.min.js +1 -1
  214. package/themes/three-dimensional-light.js +1 -1
  215. package/themes/three-dimensional-light.min.js +1 -1
  216. package/ts3.4/typings/base.d.ts +4 -4
  217. package/ts3.4/typings/defaultCss/defaultV2Css.d.ts +17 -0
  218. package/ts3.4/typings/dragdrop/dom-adapter.d.ts +2 -0
  219. package/ts3.4/typings/dragdrop/ranking-choices.d.ts +1 -1
  220. package/ts3.4/typings/dragdrop/ranking-select-to-rank.d.ts +6 -3
  221. package/ts3.4/typings/entries/core-wo-model.d.ts +1 -0
  222. package/ts3.4/typings/panel.d.ts +17 -4
  223. package/ts3.4/typings/popup-view-model.d.ts +14 -5
  224. package/ts3.4/typings/question_checkbox.d.ts +1 -0
  225. package/ts3.4/typings/question_custom.d.ts +9 -0
  226. package/ts3.4/typings/question_matrixdropdowncolumn.d.ts +2 -3
  227. package/ts3.4/typings/question_multipletext.d.ts +67 -20
  228. package/ts3.4/typings/question_paneldynamic.d.ts +1 -1
  229. package/ts3.4/typings/question_ranking.d.ts +12 -3
  230. package/ts3.4/typings/question_text.d.ts +4 -0
  231. package/ts3.4/typings/survey-element.d.ts +12 -1
  232. package/ts3.4/typings/utils/animation.d.ts +54 -0
  233. package/ts3.4/typings/utils/taskmanager.d.ts +28 -0
  234. package/typings/base.d.ts +4 -4
  235. package/typings/defaultCss/defaultV2Css.d.ts +17 -0
  236. package/typings/dragdrop/dom-adapter.d.ts +2 -0
  237. package/typings/dragdrop/ranking-choices.d.ts +1 -1
  238. package/typings/dragdrop/ranking-select-to-rank.d.ts +6 -3
  239. package/typings/entries/core-wo-model.d.ts +1 -0
  240. package/typings/panel.d.ts +18 -3
  241. package/typings/popup-view-model.d.ts +15 -5
  242. package/typings/question_checkbox.d.ts +1 -0
  243. package/typings/question_custom.d.ts +9 -0
  244. package/typings/question_matrixdropdowncolumn.d.ts +3 -4
  245. package/typings/question_multipletext.d.ts +70 -20
  246. package/typings/question_paneldynamic.d.ts +1 -1
  247. package/typings/question_ranking.d.ts +12 -1
  248. package/typings/question_text.d.ts +4 -0
  249. package/typings/survey-element.d.ts +15 -1
  250. package/typings/utils/animation.d.ts +50 -0
  251. package/typings/utils/taskmanager.d.ts +28 -0
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.135
2
+ * surveyjs - Survey JavaScript library v1.9.137
3
3
  * Copyright (c) 2015-2024 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -685,6 +685,67 @@ sv-popup {
685
685
  flex-grow: 1;
686
686
  }
687
687
 
688
+ .sv-popup--visible {
689
+ opacity: 1;
690
+ }
691
+
692
+ .sv-popup--hidden {
693
+ opacity: 0;
694
+ }
695
+
696
+ .sv-popup--animate-enter {
697
+ animation-name: fadeIn;
698
+ animation-fill-mode: forwards;
699
+ animation-duration: 0.15s;
700
+ }
701
+
702
+ .sv-popup--modal.sv-popup--animate-enter {
703
+ animation-duration: 0.25s;
704
+ }
705
+
706
+ .sv-popup--animate-leave {
707
+ animation-direction: reverse;
708
+ animation-name: fadeIn;
709
+ animation-fill-mode: forwards;
710
+ animation-duration: 0.15s;
711
+ }
712
+
713
+ .sv-popup--modal.sv-popup--animate-leave {
714
+ animation-duration: 0.25s;
715
+ }
716
+
717
+ .sv-popup--hidden {
718
+ opacity: 0;
719
+ }
720
+
721
+ @keyframes modalMoveDown {
722
+ from {
723
+ transform: translateY(0);
724
+ }
725
+ to {
726
+ transform: translateY(64px);
727
+ }
728
+ }
729
+ @keyframes modalMoveUp {
730
+ from {
731
+ transform: translateY(64px);
732
+ }
733
+ to {
734
+ transform: translateY(0);
735
+ }
736
+ }
737
+ .sv-popup--modal.sv-popup--animate-leave .sv-popup__container {
738
+ animation-name: modalMoveDown;
739
+ animation-fill-mode: forwards;
740
+ animation-duration: 0.25s;
741
+ }
742
+
743
+ .sv-popup--modal.sv-popup--animate-enter .sv-popup__container {
744
+ animation-name: modalMoveUp;
745
+ animation-fill-mode: forwards;
746
+ animation-duration: 0.25s;
747
+ }
748
+
688
749
  :root {
689
750
  --sjs-transition-duration: 150ms;
690
751
  }
@@ -1039,6 +1100,8 @@ sv-brand-info, .sv-brand-info {
1039
1100
  .sv-ranking-item {
1040
1101
  cursor: pointer;
1041
1102
  position: relative;
1103
+ height: calc(6 * (var(--sjs-base-unit, var(--base-unit, 8px))));
1104
+ opacity: 1;
1042
1105
  }
1043
1106
 
1044
1107
  .sv-ranking-item:focus .sv-ranking-item__icon--hover {
@@ -1264,6 +1327,60 @@ sv-brand-info, .sv-brand-info {
1264
1327
  align-items: center;
1265
1328
  }
1266
1329
 
1330
+ .sv-ranking-item--animate-item-removing {
1331
+ --animation-height: calc(6 * (var(--sjs-base-unit, var(--base-unit, 8px))));
1332
+ animation-name: moveIn, fadeIn;
1333
+ animation-direction: reverse;
1334
+ animation-fill-mode: forwards;
1335
+ animation-timing-function: linear;
1336
+ animation-duration: var(--sjs-ranking-move-out-duration, 150ms), var(--sjs-ranking-fade-out-duration, 100ms);
1337
+ animation-delay: var(--sjs-ranking-move-out-delay, 0ms), 0s;
1338
+ }
1339
+
1340
+ .sv-ranking-item--animate-item-adding {
1341
+ --animation-height: calc(6 * (var(--sjs-base-unit, var(--base-unit, 8px))));
1342
+ animation-name: moveIn, fadeIn;
1343
+ opacity: 0;
1344
+ animation-fill-mode: forwards;
1345
+ animation-timing-function: linear;
1346
+ animation-duration: var(--sjs-ranking-move-in-duration, 150ms), var(--sjs-ranking-fade-in-duration, 100ms);
1347
+ animation-delay: 0s, var(--sjs-ranking-fade-in-delay, 150ms);
1348
+ }
1349
+
1350
+ .sv-ranking-item--animate-item-adding-empty {
1351
+ --animation-height: calc(6 * (var(--sjs-base-unit, var(--base-unit, 8px))));
1352
+ animation-name: fadeIn;
1353
+ opacity: 0;
1354
+ animation-timing-function: linear;
1355
+ animation-duration: var(--sjs-ranking-fade-in-duration, 100ms);
1356
+ animation-delay: 0;
1357
+ }
1358
+
1359
+ .sv-ranking-item--animate-item-removing-empty {
1360
+ --animation-height: calc(6 * (var(--sjs-base-unit, var(--base-unit, 8px))));
1361
+ animation-name: fadeIn;
1362
+ animation-direction: reverse;
1363
+ animation-timing-function: linear;
1364
+ animation-duration: var(--sjs-ranking-fade-out-duration, 100ms);
1365
+ animation-delay: 0;
1366
+ }
1367
+
1368
+ @keyframes sv-animate-item-opacity-reverse-keyframes {
1369
+ 0% {
1370
+ opacity: 0;
1371
+ }
1372
+ 100% {
1373
+ opacity: 1;
1374
+ }
1375
+ }
1376
+ @keyframes sv-animate-item-opacity-keyframes {
1377
+ 0% {
1378
+ opacity: 1;
1379
+ }
1380
+ 100% {
1381
+ opacity: 0;
1382
+ }
1383
+ }
1267
1384
  .sv-ranking--select-to-rank-horizontal .sv-ranking__container {
1268
1385
  max-width: calc(50% - 1px);
1269
1386
  }
@@ -1316,6 +1433,14 @@ sv-brand-info, .sv-brand-info {
1316
1433
  display: none;
1317
1434
  }
1318
1435
 
1436
+ .sv-ranking--select-to-rank-horizontal .sv-ranking__container--to .sv-ranking-item {
1437
+ left: 0 !important;
1438
+ padding-left: 16px;
1439
+ }
1440
+ .sv-ranking--select-to-rank-horizontal .sv-ranking__container--to .sv-ranking-item .sv-ranking-item__ghost {
1441
+ left: initial;
1442
+ }
1443
+
1319
1444
  :root {
1320
1445
  --sjs-transition-duration: 150ms;
1321
1446
  }
@@ -1635,6 +1760,22 @@ li:focus .sv-list__item.sv-list__item--selected .sv-list__item-icon use {
1635
1760
  white-space: pre-wrap;
1636
1761
  }
1637
1762
 
1763
+ @keyframes fadeIn {
1764
+ from {
1765
+ opacity: 0;
1766
+ }
1767
+ to {
1768
+ opacity: 1;
1769
+ }
1770
+ }
1771
+ @keyframes moveIn {
1772
+ from {
1773
+ height: 0;
1774
+ }
1775
+ to {
1776
+ height: var(--animation-height);
1777
+ }
1778
+ }
1638
1779
  .sd-element {
1639
1780
  padding-left: var(--sv-element-add-padding-left, 0px);
1640
1781
  padding-right: var(--sv-element-add-padding-right, 0px);
@@ -1748,6 +1889,7 @@ li:focus .sv-list__item.sv-list__item--selected .sv-list__item-icon use {
1748
1889
  position: absolute;
1749
1890
  left: calc(-3 * (var(--sjs-base-unit, var(--base-unit, 8px))));
1750
1891
  top: calc(0.5 * (var(--sjs-base-unit, var(--base-unit, 8px))));
1892
+ transition-property: transform;
1751
1893
  }
1752
1894
 
1753
1895
  .sd-element__title--expandable.sd-element__title--expanded:before {
@@ -1763,8 +1905,6 @@ li:focus .sv-list__item.sv-list__item--selected .sv-list__item-icon use {
1763
1905
  padding-bottom: var(--sd-base-padding);
1764
1906
  background: var(--sjs-questionpanel-backcolor, var(--sjs-question-background, var(--sjs-general-backcolor, var(--background, #fff))));
1765
1907
  box-shadow: var(--sjs-shadow-small, 0px 1px 2px 0px rgba(0, 0, 0, 0.15));
1766
- display: flex;
1767
- flex-direction: column;
1768
1908
  }
1769
1909
 
1770
1910
  .sd-element--with-frame.sd-element--compact {
@@ -1774,6 +1914,121 @@ li:focus .sv-list__item.sv-list__item--selected .sv-list__item-icon use {
1774
1914
  background-color: transparent;
1775
1915
  }
1776
1916
 
1917
+ @keyframes elementMoveIn {
1918
+ from {
1919
+ flex-basis: 0;
1920
+ flex-grow: 0;
1921
+ max-width: 0;
1922
+ min-width: 0;
1923
+ width: 0;
1924
+ height: 0;
1925
+ padding-left: 0;
1926
+ overflow: hidden;
1927
+ }
1928
+ to {
1929
+ height: var(--animation-height);
1930
+ flex-basis: var(--animation-width);
1931
+ width: var(--animation-width);
1932
+ min-width: var(--animation-width);
1933
+ padding-left: var(--animation-padding-left);
1934
+ overflow: visible;
1935
+ }
1936
+ }
1937
+ .sd-element-wrapper--fade-in {
1938
+ animation-name: elementMoveIn, fadeIn;
1939
+ animation-timing-function: cubic-bezier(0, 0, 0.58, 1);
1940
+ animation-fill-mode: forwards;
1941
+ animation-duration: var(--sjs-element-move-in-duration, 250ms), var(--sjs-element-fade-in-duration, 250ms);
1942
+ animation-delay: 0s, var(--sjs-element-fade-in-delay, 0ms);
1943
+ opacity: 0;
1944
+ }
1945
+
1946
+ .sd-element-wrapper--fade-out {
1947
+ animation-name: elementMoveIn, fadeIn;
1948
+ animation-timing-function: cubic-bezier(0.42, 0, 1, 1);
1949
+ animation-fill-mode: forwards;
1950
+ animation-direction: reverse;
1951
+ animation-duration: var(--sjs-element-move-out-duration, 250ms), var(--sjs-element-fade-out-duration, 100ms);
1952
+ animation-delay: var(--sjs-element-move-out-delay, 0ms), 0s;
1953
+ }
1954
+
1955
+ @keyframes paddingFadeIn {
1956
+ from {
1957
+ padding-top: 0;
1958
+ }
1959
+ to {
1960
+ padding-top: var(--animation-padding-top);
1961
+ }
1962
+ }
1963
+ .sd-element__content {
1964
+ box-sizing: border-box;
1965
+ }
1966
+
1967
+ .sd-element__content--fade-in {
1968
+ animation-name: fadeIn, moveIn, paddingFadeIn;
1969
+ min-height: 0 !important;
1970
+ opacity: 0;
1971
+ animation-fill-mode: forwards;
1972
+ animation-timing-function: cubic-bezier(0, 0, 0.58, 1);
1973
+ animation-duration: var(--sjs-expand-fade-in-duration, 100ms), var(--sjs-expand-move-in-duration, 200ms), var(--sjs-expand-move-in-duration, 200ms);
1974
+ animation-delay: var(--sjs-collapse-fade-in-delay, 150ms), 0s, 0s;
1975
+ }
1976
+
1977
+ .sd-element__content--fade-out {
1978
+ animation-name: fadeIn, moveIn, paddingFadeIn;
1979
+ min-height: 0 !important;
1980
+ animation-direction: reverse;
1981
+ animation-fill-mode: forwards;
1982
+ animation-timing-function: cubic-bezier(0.42, 0, 1, 1);
1983
+ animation-duration: var(--sjs-collapse-fade-out-duration, 100ms), var(--sjs-collapse-move-out-duration, 250ms), var(--sjs-collapse-move-out-duration, 250ms);
1984
+ animation-delay: 0s, var(--sjs-collapse-move-out-delay, 0ms), var(--sjs-collapse-move-out-delay, 0ms);
1985
+ }
1986
+
1987
+ .sd-element--expandable.sd-elemenet--expandable--animating > .sd-element__header:focus-within, .sd-element--expandable.sd-elemenet--expandable--animating > .sd-element__header:hover {
1988
+ background-color: transparent;
1989
+ }
1990
+
1991
+ .sd-elemenet--expandable--animating.sd-element--expandable {
1992
+ transition-property: padding-top, padding-bottom;
1993
+ }
1994
+ .sd-elemenet--expandable--animating.sd-element--expandable > .sd-element__header {
1995
+ transition-property: padding-top, padding-bottom;
1996
+ }
1997
+ .sd-elemenet--expandable--animating.sd-element--expandable.sd-element--expanded {
1998
+ transition-timing-function: cubic-bezier(0, 0, 0.58, 1);
1999
+ transition-duration: var(--sjs-expand-move-in-duration, 200ms);
2000
+ }
2001
+ .sd-elemenet--expandable--animating.sd-element--expandable.sd-element--expanded > .sd-element__header {
2002
+ transition-timing-function: cubic-bezier(0, 0, 0.58, 1);
2003
+ transition-duration: var(--sjs-expand-move-in-duration, 200ms);
2004
+ }
2005
+ .sd-elemenet--expandable--animating.sd-element--expandable.sd-element--expanded > .sd-element__header .sd-element__title:before {
2006
+ transition-duration: var(--sjs-expand-move-in-duration, 200ms);
2007
+ }
2008
+ .sd-elemenet--expandable--animating.sd-element--expandable.sd-element--collapsed {
2009
+ transition-timing-function: cubic-bezier(0, 0, 0.58, 1);
2010
+ transition-duration: var(--sjs-collapse-move-out-duration, 250ms);
2011
+ transition-delay: var(--sjs-collapse-move-out-delay, 0ms);
2012
+ }
2013
+ .sd-elemenet--expandable--animating.sd-element--expandable.sd-element--collapsed > .sd-element__header {
2014
+ transition-timing-function: cubic-bezier(0, 0, 0.58, 1);
2015
+ transition-duration: var(--sjs-collapse-move-out-duration, 250ms);
2016
+ transition-delay: var(--sjs-collapse-move-out-delay, 0ms);
2017
+ }
2018
+ .sd-elemenet--expandable--animating.sd-element--expandable.sd-element--collapsed > .sd-element__header .sd-element__title:before {
2019
+ transition-duration: var(--sjs-collapse-move-out-duration, 250ms);
2020
+ transition-delay: var(--sjs-collapse-move-out-delay, 0ms);
2021
+ }
2022
+ .sd-elemenet--expandable--animating.sd-element--expandable.sd-element--complex > .sd-element__header--location-top:after {
2023
+ display: block;
2024
+ animation-name: fadeIn;
2025
+ animation-fill-mode: forwards;
2026
+ animation-duration: var(--sjs-transition-duration, 150ms);
2027
+ }
2028
+ .sd-elemenet--expandable--animating.sd-element--expandable.sd-element--complex.sd-element--collapsed .sd-element__header--location-top:after {
2029
+ animation-direction: reverse;
2030
+ }
2031
+
1777
2032
  .sd-question {
1778
2033
  position: relative;
1779
2034
  }
@@ -1846,6 +2101,8 @@ li:focus .sv-list__item.sv-list__item--selected .sv-list__item-icon use {
1846
2101
  }
1847
2102
  .sd-element--with-frame.sd-question--error-bottom {
1848
2103
  padding-bottom: 0;
2104
+ display: flex;
2105
+ flex-direction: column;
1849
2106
  }
1850
2107
  .sd-element--with-frame.sd-question--error-bottom > .sd-question__content {
1851
2108
  margin-bottom: var(--sd-base-padding);
@@ -1985,8 +2242,8 @@ li:focus .sv-list__item.sv-list__item--selected .sv-list__item-icon use {
1985
2242
  .sd-element--complex > .sd-element__header:after {
1986
2243
  content: " ";
1987
2244
  display: block;
1988
- position: relative;
1989
2245
  height: 1px;
2246
+ position: relative;
1990
2247
  background: var(--sjs-border-light, var(--border-light, #eaeaea));
1991
2248
  bottom: 0;
1992
2249
  }
@@ -2293,6 +2550,13 @@ textarea.sd-input:disabled:not(.sd-input--disabled) {
2293
2550
  padding-top: calc(0.5 * var(--sd-base-vertical-padding));
2294
2551
  }
2295
2552
 
2553
+ .sd-panel--as-page .sd-panel__footer {
2554
+ padding: calc(4 * (var(--sjs-base-unit, var(--base-unit, 8px)))) 0 0;
2555
+ margin: 0;
2556
+ border: none;
2557
+ width: initial;
2558
+ }
2559
+
2296
2560
  .sd-panel__content {
2297
2561
  padding-top: var(--sd-base-padding);
2298
2562
  }
@@ -2301,6 +2565,10 @@ textarea.sd-input:disabled:not(.sd-input--disabled) {
2301
2565
  padding-bottom: var(--sd-base-padding);
2302
2566
  }
2303
2567
 
2568
+ .sd-panel__content {
2569
+ --animation-padding-top: var(--sd-base-padding);
2570
+ }
2571
+
2304
2572
  .sjs_sp_placeholder {
2305
2573
  --sjs-internal-font-editorfont-size: var(--sjs-mobile-font-editorfont-size, var(--sjs-font-editorfont-size, var(--sjs-font-size, 16px)));
2306
2574
  color: var(--sjs-font-questiondescription-color, var(--sjs-general-forecolor-light, rgba(0, 0, 0, 0.45)));
@@ -2902,32 +3170,39 @@ textarea.sd-input:disabled:not(.sd-input--disabled) {
2902
3170
  flex-direction: row;
2903
3171
  width: 100%;
2904
3172
  box-sizing: border-box;
3173
+ --animate-margin: var(--sd-base-vertical-padding);
2905
3174
  margin-top: var(--sd-base-vertical-padding);
2906
3175
  }
2907
3176
 
2908
3177
  .sd-row.sd-page__row {
2909
3178
  margin-top: calc(2 * (var(--sjs-base-unit, var(--base-unit, 8px))));
3179
+ --animate-margin: calc(2 * (var(--sjs-base-unit, var(--base-unit, 8px))));
2910
3180
  }
2911
3181
 
2912
3182
  .sd-page__row.sd-row--compact {
2913
3183
  margin-top: var(--sd-base-vertical-padding);
3184
+ --animate-margin: var(--sd-base-vertical-padding);
2914
3185
  }
2915
3186
 
2916
3187
  .sd-row:first-of-type {
2917
3188
  margin-top: 0;
3189
+ --animate-margin: 0;
2918
3190
  }
2919
3191
 
2920
3192
  .sd-page__title ~ .sd-row.sd-page__row:not(.sd-row--compact),
2921
3193
  .sd-page__description ~ .sd-row.sd-page__row:not(.sd-row--compact) {
2922
3194
  margin-top: calc(3 * (var(--sjs-base-unit, var(--base-unit, 8px))));
3195
+ --animate-margin: calc(3 * (var(--sjs-base-unit, var(--base-unit, 8px))));
2923
3196
  }
2924
3197
  .sd-page__title ~ .sd-page__row.sd-row--compact,
2925
3198
  .sd-page__description ~ .sd-page__row.sd-row--compact {
2926
3199
  margin-top: var(--sd-base-vertical-padding);
3200
+ --animate-margin: var(--sd-base-vertical-padding);
2927
3201
  }
2928
3202
 
2929
3203
  .sd-row.sd-page__row:not(.sd-row--compact) ~ .sd-row.sd-page__row:not(.sd-row--compact) {
2930
3204
  margin-top: calc(2 * (var(--sjs-base-unit, var(--base-unit, 8px))));
3205
+ --animate-margin: calc(2 * (var(--sjs-base-unit, var(--base-unit, 8px))));
2931
3206
  }
2932
3207
 
2933
3208
  .sd-row--multiple {
@@ -2938,6 +3213,7 @@ textarea.sd-input:disabled:not(.sd-input--disabled) {
2938
3213
  }
2939
3214
  .sd-row--multiple > div {
2940
3215
  box-sizing: border-box;
3216
+ --animation-padding-left: calcSize(2);
2941
3217
  padding-left: calc(2 * (var(--sjs-base-unit, var(--base-unit, 8px))));
2942
3218
  display: flex;
2943
3219
  align-items: stretch;
@@ -2947,10 +3223,12 @@ textarea.sd-input:disabled:not(.sd-input--disabled) {
2947
3223
  row-gap: var(--sd-base-vertical-padding);
2948
3224
  }
2949
3225
  .sd-panel:not(.sd-panel--as-page) .sd-row--multiple > div {
3226
+ --animation-padding-left: var(--sd-base-padding);
2950
3227
  padding-left: var(--sd-base-padding);
2951
3228
  }
2952
3229
 
2953
3230
  .sd-row--multiple.sd-row--compact > div {
3231
+ --animation-padding-left: var(--sd-base-padding);
2954
3232
  padding-left: var(--sd-base-padding);
2955
3233
  }
2956
3234
 
@@ -2976,6 +3254,42 @@ textarea.sd-input:disabled:not(.sd-input--disabled) {
2976
3254
  white-space: nowrap;
2977
3255
  }
2978
3256
 
3257
+ @keyframes marginFadeIn {
3258
+ from {
3259
+ margin-top: 0;
3260
+ }
3261
+ to {
3262
+ margin-top: var(--animate-margin);
3263
+ }
3264
+ }
3265
+ .sd-row--fade-in {
3266
+ animation-fill-mode: forwards;
3267
+ animation-name: fadeIn, moveIn, marginFadeIn;
3268
+ min-height: 0 !important;
3269
+ opacity: 0;
3270
+ animation-timing-function: cubic-bezier(0, 0, 0.58, 1);
3271
+ animation-delay: var(--sjs-row-fade-in-delay, 150ms), 0s, 0s;
3272
+ animation-duration: var(--sjs-row-fade-in-duration, 100ms), var(--sjs-row-move-in-duration, 200ms), var(--sjs-row-move-in-duration, 200ms);
3273
+ }
3274
+
3275
+ .sd-row--fade-out {
3276
+ animation-name: fadeIn, moveIn, marginFadeIn;
3277
+ animation-timing-function: cubic-bezier(0.42, 0, 1, 1);
3278
+ animation-fill-mode: forwards;
3279
+ animation-direction: reverse;
3280
+ min-height: 0 !important;
3281
+ animation-delay: 0s, var(--sjs-row-move-out-delay, 0ms), var(--sjs-row-move-out-delay, 0ms);
3282
+ animation-duration: var(--sjs-row-fade-out-duration, 100ms), var(--sjs-row-move-out-duration, 250ms), var(--sjs-row-move-out-duration, 250ms);
3283
+ }
3284
+
3285
+ .sd-row--fade-in .sd-element-wrapper--fade-in {
3286
+ animation: none;
3287
+ }
3288
+
3289
+ .sd-row--fade-out .sd-element-wrapper--fade-out {
3290
+ animation: none;
3291
+ }
3292
+
2979
3293
  .sd-title {
2980
3294
  display: block;
2981
3295
  font-family: var(--sjs-font-family, var(--font-family, var(--sjs-default-font-family)));
@@ -4001,6 +4315,20 @@ legend + sv-ng-rating-item + .sd-rating__item-smiley {
4001
4315
  margin-inline-start: calc(-0.25 * (var(--sjs-base-unit, var(--base-unit, 8px))));
4002
4316
  }
4003
4317
 
4318
+ .sv-dropdown-popup.sv-single-select-list.sv-popup--animate-leave .sd-list__item.sv-list__item--selected .sv-list__item-body {
4319
+ font-weight: normal;
4320
+ color: var(--sjs-font-questiontitle-color, var(--sjs-general-forecolor, var(--foreground, #161616)));
4321
+ background-color: transparent;
4322
+ }
4323
+
4324
+ .sv-dropdown-popup.sv-popup--dropdown.sv-popup--top .sv-popup__container {
4325
+ transform: translateY(-2px);
4326
+ }
4327
+
4328
+ .sv-dropdown-popup.sv-popup--dropdown.sv-popup--bottom .sv-popup__container {
4329
+ transform: translateY(2px);
4330
+ }
4331
+
4004
4332
  [dir=rtl] .sd-dropdown,
4005
4333
  [style*="direction:rtl"] .sd-dropdown,
4006
4334
  [style*="direction: rtl"] .sd-dropdown {
@@ -4556,12 +4884,11 @@ legend + sv-ng-rating-item + .sd-rating__item-smiley {
4556
4884
  box-shadow: var(--sjs-shadow-small, 0px 1px 2px 0px rgba(0, 0, 0, 0.15));
4557
4885
  border-radius: calc(12.5 * (var(--sjs-base-unit, var(--base-unit, 8px))));
4558
4886
  transition-duration: 0.2s;
4559
- transition-property: margin-left, transform;
4887
+ transition-property: margin-left;
4560
4888
  transition-timing-function: linear;
4561
4889
  color: var(--sjs-primary-backcolor, var(--primary, #19b394));
4562
4890
  font-weight: 600;
4563
4891
  margin-left: 0%;
4564
- transform: translateX(0);
4565
4892
  z-index: 2;
4566
4893
  }
4567
4894
  .sd-boolean__thumb .sv-string-viewer.sv-string-viewer--multiline {
@@ -4569,17 +4896,14 @@ legend + sv-ng-rating-item + .sd-rating__item-smiley {
4569
4896
  }
4570
4897
 
4571
4898
  .sd-boolean--checked .sd-boolean__thumb {
4572
- margin-left: 100%;
4573
- transform: translateX(-100%);
4899
+ margin-left: 50%;
4574
4900
  }
4575
4901
 
4576
4902
  .sd-boolean--exchanged .sd-boolean__thumb {
4577
- margin-left: 100%;
4578
- transform: translateX(-100%);
4903
+ margin-left: calc(50% + 0.5 * (var(--sjs-base-unit, var(--base-unit, 8px))));
4579
4904
  }
4580
4905
  .sd-boolean--exchanged.sd-boolean--checked .sd-boolean__thumb {
4581
4906
  margin-left: 0%;
4582
- transform: translateX(0);
4583
4907
  }
4584
4908
  .sd-boolean--exchanged.sd-boolean:not(.sd-boolean--checked):not(sd-boolean--indeterminate) .sd-boolean__label--false, .sd-boolean--exchanged.sd-boolean.sd-boolean--checked .sd-boolean__label--true {
4585
4909
  color: var(--sjs-font-editorfont-placeholdercolor, var(--sjs-general-forecolor-light, var(--foreground-light, #909090)));
@@ -6024,21 +6348,22 @@ svg.sd-action--icon {
6024
6348
  display: block;
6025
6349
  content: "";
6026
6350
  height: calc(0.25 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6027
- background-color: var(--sjs-navigation-default, #bcbcbc);
6351
+ background-color: var(--sjs-general-dim-forecolor-light, rgba(0, 0, 0, 0.45));
6352
+ opacity: 0.5;
6028
6353
  position: absolute;
6029
6354
  bottom: calc(1.125 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6030
6355
  right: calc(50% + 4px);
6031
6356
  width: calc(100% - 4px);
6032
6357
  pointer-events: none;
6033
6358
  }
6034
- .sd-progress-buttons__list li:after {
6359
+ .sd-progress-buttons__list li .sd-progress-buttons__button {
6360
+ position: relative;
6035
6361
  display: flex;
6036
6362
  content: attr(data-page-number);
6037
6363
  width: calc(0 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6038
6364
  height: calc(0 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6039
6365
  margin: calc(0.75 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6040
6366
  border: calc(0.5 * (var(--sjs-base-unit, var(--base-unit, 8px)))) solid transparent;
6041
- background-color: var(--sjs-navigation-default, #bcbcbc);
6042
6367
  border-radius: 50%;
6043
6368
  align-self: center;
6044
6369
  z-index: 1;
@@ -6048,29 +6373,70 @@ svg.sd-action--icon {
6048
6373
  justify-content: center;
6049
6374
  color: var(--sjs-general-backcolor-dim, var(--background-dim, #f3f3f3));
6050
6375
  }
6051
- .sd-progress-buttons__list li:hover:after {
6376
+ .sd-progress-buttons__list li .sd-progress-buttons__button .sd-progress-buttons__button-background {
6377
+ position: absolute;
6378
+ width: 100%;
6379
+ height: 100%;
6380
+ top: calc(-0.5 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6381
+ left: calc(-0.5 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6382
+ background-color: var(--sjs-general-backcolor-dim, var(--background-dim, #f3f3f3));
6383
+ z-index: -2;
6384
+ border: calc(0.5 * (var(--sjs-base-unit, var(--base-unit, 8px)))) solid var(--sjs-general-backcolor-dim, var(--background-dim, #f3f3f3));
6385
+ border-radius: 50%;
6386
+ }
6387
+ .sd-progress-buttons__list li .sd-progress-buttons__button .sd-progress-buttons__button-content {
6388
+ position: absolute;
6389
+ width: 100%;
6390
+ height: 100%;
6391
+ top: calc(-0.5 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6392
+ left: calc(-0.5 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6393
+ background-color: var(--sjs-general-dim-forecolor-light, rgba(0, 0, 0, 0.45));
6394
+ opacity: 0.5;
6395
+ z-index: -1;
6396
+ border: calc(0.5 * (var(--sjs-base-unit, var(--base-unit, 8px)))) solid transparent;
6397
+ border-radius: 50%;
6398
+ }
6399
+ .sd-progress-buttons__list li:hover .sd-progress-buttons__button {
6052
6400
  color: var(--sjs-primary-backcolor, var(--primary, #19b394));
6053
6401
  padding: calc(0.25 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6054
6402
  margin: calc(0.25 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6055
6403
  border: calc(0.75 * (var(--sjs-base-unit, var(--base-unit, 8px)))) solid var(--sjs-primary-backcolor, var(--primary, #19b394));
6056
6404
  background-color: var(--sjs-primary-forecolor, var(--primary-foreground, #fff));
6057
6405
  }
6406
+ .sd-progress-buttons__list li:hover .sd-progress-buttons__button .sd-progress-buttons__button-content {
6407
+ top: calc(-0.75 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6408
+ left: calc(-0.75 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6409
+ border: calc(0.75 * (var(--sjs-base-unit, var(--base-unit, 8px)))) solid var(--sjs-primary-backcolor, var(--primary, #19b394));
6410
+ background-color: var(--sjs-primary-forecolor, var(--primary-foreground, #fff));
6411
+ opacity: 1;
6412
+ }
6058
6413
  .sd-progress-buttons__list .sd-progress-buttons__list-element--passed:not(:first-child) > .sd-progress-buttons__connector {
6059
6414
  background-color: var(--sjs-primary-backcolor, var(--primary, #19b394));
6415
+ opacity: 1;
6060
6416
  }
6061
- .sd-progress-buttons__list .sd-progress-buttons__list-element--passed:after {
6417
+ .sd-progress-buttons__list .sd-progress-buttons__list-element--passed .sd-progress-buttons__button {
6062
6418
  background-color: var(--sjs-primary-backcolor, var(--primary, #19b394));
6063
6419
  }
6420
+ .sd-progress-buttons__list .sd-progress-buttons__list-element--passed .sd-progress-buttons__button .sd-progress-buttons__button-content {
6421
+ background-color: var(--sjs-primary-backcolor, var(--primary, #19b394));
6422
+ opacity: 1;
6423
+ }
6064
6424
  .sd-progress-buttons__list .sd-progress-buttons__list-element--current:not(:first-child) > .sd-progress-buttons__connector {
6065
6425
  background-color: var(--sjs-primary-backcolor, var(--primary, #19b394));
6426
+ opacity: 1;
6066
6427
  }
6067
- .sd-progress-buttons__list .sd-progress-buttons__list-element--current:after {
6428
+ .sd-progress-buttons__list .sd-progress-buttons__list-element--current .sd-progress-buttons__button {
6068
6429
  border: calc(0.5 * (var(--sjs-base-unit, var(--base-unit, 8px)))) solid var(--sjs-primary-backcolor, var(--primary, #19b394));
6069
6430
  background-color: var(--sjs-primary-forecolor, var(--primary-foreground, #fff));
6070
6431
  color: var(--sjs-primary-backcolor, var(--primary, #19b394));
6071
6432
  padding: calc(0.25 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6072
6433
  margin: calc(0.5 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6073
6434
  }
6435
+ .sd-progress-buttons__list .sd-progress-buttons__list-element--current .sd-progress-buttons__button .sd-progress-buttons__button-content {
6436
+ border: calc(0.5 * (var(--sjs-base-unit, var(--base-unit, 8px)))) solid var(--sjs-primary-backcolor, var(--primary, #19b394));
6437
+ background-color: var(--sjs-primary-forecolor, var(--primary-foreground, #fff));
6438
+ opacity: 1;
6439
+ }
6074
6440
 
6075
6441
  .sd-progress-buttons__page-title {
6076
6442
  display: flex;
@@ -6125,11 +6491,11 @@ svg.sd-action--icon {
6125
6491
  right: calc(50% + 8px);
6126
6492
  width: calc(100% - 8px);
6127
6493
  }
6128
- .sd-progress-buttons--numbered .sd-progress-buttons__list li:after {
6494
+ .sd-progress-buttons--numbered .sd-progress-buttons__list li .sd-progress-buttons__button {
6129
6495
  width: calc(2 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6130
6496
  height: calc(2 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6131
6497
  }
6132
- .sd-progress-buttons--numbered .sd-progress-buttons__list li:hover:after {
6498
+ .sd-progress-buttons--numbered .sd-progress-buttons__list li:hover .sd-progress-buttons__button {
6133
6499
  padding: calc(0.25 * (var(--sjs-base-unit, var(--base-unit, 8px))));
6134
6500
  }
6135
6501