survey-vue3-ui 1.9.99

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 (105) hide show
  1. package/package.json +27 -0
  2. package/survey-vue3-ui.es.js +4745 -0
  3. package/survey-vue3-ui.umd.js +1 -0
  4. package/types/App.vue.d.ts +4 -0
  5. package/types/BooleanCheckbox.vue.d.ts +18 -0
  6. package/types/BooleanRadio.vue.d.ts +12 -0
  7. package/types/BooleanRadioItem.vue.d.ts +29 -0
  8. package/types/BooleanSwitch.vue.d.ts +12 -0
  9. package/types/Checkbox.vue.d.ts +13 -0
  10. package/types/CheckboxItem.vue.d.ts +35 -0
  11. package/types/Comment.vue.d.ts +19 -0
  12. package/types/Composite.vue.d.ts +19 -0
  13. package/types/Custom.vue.d.ts +19 -0
  14. package/types/CustomWidget.vue.d.ts +19 -0
  15. package/types/Dropdown.vue.d.ts +13 -0
  16. package/types/DropdownSelect.vue.d.ts +13 -0
  17. package/types/Element.vue.d.ts +35 -0
  18. package/types/ElementHeader.vue.d.ts +19 -0
  19. package/types/Errors.vue.d.ts +19 -0
  20. package/types/Expression.vue.d.ts +13 -0
  21. package/types/File.vue.d.ts +13 -0
  22. package/types/Header.vue.d.ts +13 -0
  23. package/types/Html.vue.d.ts +13 -0
  24. package/types/Image.vue.d.ts +13 -0
  25. package/types/Imagepicker.vue.d.ts +13 -0
  26. package/types/ImagepickerItem.vue.d.ts +21 -0
  27. package/types/Matrix.vue.d.ts +13 -0
  28. package/types/MatrixCell.vue.d.ts +21 -0
  29. package/types/MatrixDropdown.vue.d.ts +13 -0
  30. package/types/MatrixDynamic.vue.d.ts +13 -0
  31. package/types/MatrixHeaderRequired.vue.d.ts +21 -0
  32. package/types/MatrixTable.vue.d.ts +13 -0
  33. package/types/Multipletext.vue.d.ts +13 -0
  34. package/types/MultipletextItem.vue.d.ts +21 -0
  35. package/types/Notifier.vue.d.ts +13 -0
  36. package/types/Page.vue.d.ts +28 -0
  37. package/types/Panel.vue.d.ts +25 -0
  38. package/types/PanelDynamic.vue.d.ts +19 -0
  39. package/types/PanelDynamicProgress.vue.d.ts +13 -0
  40. package/types/PanelDynamicProgressV2.vue.d.ts +13 -0
  41. package/types/PopupSurvey.vue.d.ts +29 -0
  42. package/types/QuestionComment.vue.d.ts +19 -0
  43. package/types/QuestionOther.vue.d.ts +19 -0
  44. package/types/Radiogroup.vue.d.ts +13 -0
  45. package/types/RadiogroupItem.vue.d.ts +35 -0
  46. package/types/Ranking.vue.d.ts +13 -0
  47. package/types/RankingItem.vue.d.ts +65 -0
  48. package/types/Rating.vue.d.ts +13 -0
  49. package/types/RatingDropdown.vue.d.ts +13 -0
  50. package/types/Row.vue.d.ts +27 -0
  51. package/types/Signaturepad.vue.d.ts +13 -0
  52. package/types/String.vue.d.ts +13 -0
  53. package/types/StringEditor.vue.d.ts +13 -0
  54. package/types/StringViewer.vue.d.ts +13 -0
  55. package/types/Survey.vue.d.ts +35 -0
  56. package/types/Tagbox.vue.d.ts +13 -0
  57. package/types/Text.vue.d.ts +13 -0
  58. package/types/TextInput.vue.d.ts +13 -0
  59. package/types/TimerPanel.vue.d.ts +19 -0
  60. package/types/base.d.ts +8 -0
  61. package/types/boolean.d.ts +4 -0
  62. package/types/components/BrandInfo.vue.d.ts +2 -0
  63. package/types/components/CharacterCounter.vue.d.ts +19 -0
  64. package/types/components/Container.vue.d.ts +27 -0
  65. package/types/components/Skeleton.vue.d.ts +12 -0
  66. package/types/components/action-bar/Action.vue.d.ts +13 -0
  67. package/types/components/action-bar/ActionBar.vue.d.ts +19 -0
  68. package/types/components/action-bar/ActionBarItem.vue.d.ts +13 -0
  69. package/types/components/action-bar/ActionBarItemDropdown.vue.d.ts +13 -0
  70. package/types/components/action-bar/ActionBarSeparator.vue.d.ts +13 -0
  71. package/types/components/dropdown/Dropdown.vue.d.ts +13 -0
  72. package/types/components/dropdown/OptionItem.vue.d.ts +13 -0
  73. package/types/components/list/List.vue.d.ts +13 -0
  74. package/types/components/list/ListItem.vue.d.ts +21 -0
  75. package/types/components/matrix-actions/detail-button/DetailButton.vue.d.ts +13 -0
  76. package/types/components/matrix-actions/drag-drop-icon/DragDropIcon.vue.d.ts +13 -0
  77. package/types/components/matrix-actions/matrix-action.d.ts +7 -0
  78. package/types/components/matrix-actions/remove-button/RemoveButton.vue.d.ts +13 -0
  79. package/types/components/paneldynamic-actions/PaneldynamicAddBtn.vue.d.ts +34 -0
  80. package/types/components/paneldynamic-actions/PaneldynamicNextBtn.vue.d.ts +34 -0
  81. package/types/components/paneldynamic-actions/PaneldynamicPrevBtn.vue.d.ts +34 -0
  82. package/types/components/paneldynamic-actions/PaneldynamicProgressText.vue.d.ts +34 -0
  83. package/types/components/paneldynamic-actions/PaneldynamicRemoveBtn.vue.d.ts +34 -0
  84. package/types/components/paneldynamic-actions/action.d.ts +9 -0
  85. package/types/components/popup/Popup.vue.d.ts +19 -0
  86. package/types/components/popup/PopupContainer.vue.d.ts +13 -0
  87. package/types/components/popup/PopupModal.vue.d.ts +2 -0
  88. package/types/components/popup/PopupPointer.vue.d.ts +13 -0
  89. package/types/components/progress/Progress.vue.d.ts +19 -0
  90. package/types/components/progress/ProgressButtons.vue.d.ts +13 -0
  91. package/types/components/progress/ProgressToc.vue.d.ts +13 -0
  92. package/types/components/rating/RatingItem.vue.d.ts +28 -0
  93. package/types/components/rating/RatingItemSmiley.vue.d.ts +28 -0
  94. package/types/components/rating/RatingItemStar.vue.d.ts +28 -0
  95. package/types/components/rating/rating.d.ts +6 -0
  96. package/types/components/survey-actions/SurveyNavigationButton.vue.d.ts +13 -0
  97. package/types/components/svg-icon/SvgIcon.vue.d.ts +38 -0
  98. package/types/components/tagbox/Tagbox.vue.d.ts +13 -0
  99. package/types/components/tagbox/TagboxFilter.vue.d.ts +21 -0
  100. package/types/components/tagbox/TagboxItem.vue.d.ts +21 -0
  101. package/types/components/title/TitleActions.vue.d.ts +21 -0
  102. package/types/components/title/TitleContent.vue.d.ts +21 -0
  103. package/types/components/title/TitleElement.vue.d.ts +21 -0
  104. package/types/index.d.ts +4 -0
  105. package/types/main.d.ts +1 -0
@@ -0,0 +1,4745 @@
1
+ import { shallowReactive as de, watch as Z, onUnmounted as O, onMounted as E, onBeforeUnmount as J, ref as T, shallowRef as F, triggerRef as ne, unref as b, isRef as me, defineComponent as C, computed as R, onUpdated as U, resolveComponent as q, openBlock as t, createElementBlock as u, normalizeClass as l, createVNode as h, createCommentVNode as m, Fragment as w, renderList as S, createBlock as y, createElementVNode as p, normalizeStyle as $, withDirectives as D, resolveDynamicComponent as N, vShow as H, toDisplayString as I, vModelCheckbox as z, vModelRadio as Y, resolveDirective as _, vModelSelect as ce, vModelText as pe, getCurrentInstance as x, withCtx as ve, createStaticVNode as qe, normalizeProps as ye, guardReactiveProps as ge, toRaw as Ce, Teleport as he } from "vue";
2
+ import { Base as be, RendererFactory as G, DropdownListModel as ke, Helpers as fe, DropdownMultiSelectListModel as Ie, TooltipManager as we, doKey2ClickUp as ae, createSvg as Te, ActionDropdownViewModel as Se, getActionDropdownButtonTarget as Re, createPopupViewModel as oe, SurveyProgressModel as te, SurveyProgressButtonsModel as $e, TOCModel as Be, SvgRegistry as Le, PopupSurveyModel as De, settings as V, createDialogOptions as Pe, createPopupModalViewModel as Me, doKey2ClickDown as Ne, doKey2ClickBlur as He } from "survey-core";
3
+ be.createPropertiesHash = () => de({});
4
+ function Ee(r) {
5
+ !r || (r.createArrayCoreHandler = (o, n) => {
6
+ const s = F(o[n]);
7
+ return o[n].onArrayChanged = () => {
8
+ ne(s);
9
+ }, o[n] = s, b(o[n]);
10
+ }, r.iteratePropertiesHash((o, n) => {
11
+ if (Array.isArray(o[n])) {
12
+ const s = F(o[n]);
13
+ o[n].onArrayChanged = () => {
14
+ ne(s);
15
+ }, o[n] = s;
16
+ }
17
+ }), r.getPropertyValueCoreHandler = (o, n) => b(o[n]), r.setPropertyValueCoreHandler = (o, n, s) => {
18
+ me(o[n]) ? o[n].value = s : o[n] = s;
19
+ });
20
+ }
21
+ function ie(r) {
22
+ !r || (r.iteratePropertiesHash((o, n) => {
23
+ o[n] = b(o[n]), Array.isArray(o[n]) && (o[n].onArrayChanged = void 0);
24
+ }), r.createArrayCoreHandler = void 0, r.getPropertyValueCoreHandler = void 0, r.setPropertyValueCoreHandler = void 0);
25
+ }
26
+ function B(r, o, n) {
27
+ const s = Z(
28
+ r,
29
+ (e, i) => {
30
+ o && o(e), i && (ie(i), n && n(i)), Ee(e);
31
+ },
32
+ {
33
+ immediate: !0
34
+ }
35
+ );
36
+ O(() => {
37
+ const e = r();
38
+ e && (n && n(r()), ie(e), s());
39
+ });
40
+ }
41
+ function M(r, o, n, s) {
42
+ B(() => r.question, n, s), E(() => {
43
+ r.question && r.question.afterRenderQuestionElement(o.value);
44
+ }), J(() => {
45
+ r.question.beforeDestroyQuestionElement(o.value);
46
+ });
47
+ }
48
+ function W(r) {
49
+ const o = T(), n = (e) => {
50
+ o.value = e.renderedHtml, e.onChanged = () => {
51
+ o.value = e.renderedHtml;
52
+ };
53
+ }, s = Z(
54
+ r,
55
+ (e, i) => {
56
+ i && (i.onChanged = () => {
57
+ }), n(e);
58
+ },
59
+ { immediate: !0 }
60
+ );
61
+ return O(() => {
62
+ s();
63
+ }), o;
64
+ }
65
+ function ee(r) {
66
+ return r.customWidget ? "survey-customwidget" : r.isDefaultRendering && r.isDefaultRendering() || r.isPanel ? "survey-" + r.getTemplate() : r.getComponentName();
67
+ }
68
+ const Ae = /* @__PURE__ */ C({
69
+ __name: "Page",
70
+ props: {
71
+ survey: {},
72
+ page: {},
73
+ css: {}
74
+ },
75
+ setup(r) {
76
+ const o = r, n = T(null);
77
+ B(() => o.page);
78
+ const s = R(() => o.page._showDescription), e = R(() => o.page.rows);
79
+ return E(() => {
80
+ o.survey && o.survey.afterRenderPage(n.value);
81
+ }), U(() => {
82
+ o.survey.afterRenderPage(n.value);
83
+ }), (i, a) => {
84
+ const d = q("survey-element-title"), c = q("survey-string"), v = q("survey-row");
85
+ return t(), u("div", {
86
+ class: l(i.page.cssRoot),
87
+ ref_key: "root",
88
+ ref: n
89
+ }, [
90
+ h(d, {
91
+ element: i.page,
92
+ css: i.css
93
+ }, null, 8, ["element", "css"]),
94
+ s.value ? (t(), u("div", {
95
+ key: 0,
96
+ class: l(i.page.cssClasses.page.description)
97
+ }, [
98
+ h(c, {
99
+ locString: i.page.locDescription
100
+ }, null, 8, ["locString"])
101
+ ], 2)) : m("", !0),
102
+ (t(!0), u(w, null, S(e.value, (f, g) => (t(), u(w, null, [
103
+ f.visible ? (t(), y(v, {
104
+ key: i.page.id + "_" + g,
105
+ row: f,
106
+ survey: i.survey,
107
+ css: i.css
108
+ }, null, 8, ["row", "survey", "css"])) : m("", !0)
109
+ ], 64))), 256))
110
+ ], 2);
111
+ };
112
+ }
113
+ }), Oe = ["src", "width", "height", "alt"], Ve = ["src", "width", "height", "alt"], Fe = /* @__PURE__ */ C({
114
+ __name: "Header",
115
+ props: {
116
+ survey: {}
117
+ },
118
+ setup(r) {
119
+ const o = r, n = T(), s = W(() => o.survey.locLogo);
120
+ return E(() => {
121
+ var e = n.value;
122
+ e && o.survey && o.survey.afterRenderHeader(e);
123
+ }), (e, i) => {
124
+ const a = q("survey-element-title"), d = q("survey-string");
125
+ return e.survey.renderedHasHeader ? (t(), u("div", {
126
+ key: 0,
127
+ class: l(e.survey.css.header),
128
+ ref_key: "root",
129
+ ref: n
130
+ }, [
131
+ e.survey.isLogoBefore ? (t(), u("div", {
132
+ key: 0,
133
+ class: l(e.survey.logoClassNames)
134
+ }, [
135
+ p("img", {
136
+ class: l(e.survey.css.logoImage),
137
+ src: b(s),
138
+ width: e.survey.renderedLogoWidth,
139
+ height: e.survey.renderedLogoHeight,
140
+ alt: e.survey.locTitle.renderedHtml,
141
+ style: $({
142
+ objectFit: e.survey.logoFit,
143
+ width: e.survey.renderedStyleLogoWidth,
144
+ height: e.survey.renderedStyleLogoHeight
145
+ })
146
+ }, null, 14, Oe)
147
+ ], 2)) : m("", !0),
148
+ e.survey.renderedHasTitle ? (t(), u("div", {
149
+ key: 1,
150
+ class: l(e.survey.css.headerText),
151
+ style: $({ maxWidth: e.survey.titleMaxWidth })
152
+ }, [
153
+ h(a, {
154
+ element: e.survey,
155
+ css: e.survey.css
156
+ }, null, 8, ["element", "css"]),
157
+ e.survey.renderedHasDescription ? (t(), u("h5", {
158
+ key: 0,
159
+ class: l(e.survey.css.description)
160
+ }, [
161
+ h(d, {
162
+ locString: e.survey.locDescription
163
+ }, null, 8, ["locString"])
164
+ ], 2)) : m("", !0)
165
+ ], 6)) : m("", !0),
166
+ e.survey.isLogoAfter ? (t(), u("div", {
167
+ key: 2,
168
+ class: l(e.survey.logoClassNames)
169
+ }, [
170
+ p("img", {
171
+ class: l(e.survey.css.logoImage),
172
+ src: b(s),
173
+ width: e.survey.renderedLogoWidth,
174
+ height: e.survey.renderedLogoHeight,
175
+ alt: e.survey.locTitle.renderedHtml,
176
+ style: $({
177
+ objectFit: e.survey.logoFit,
178
+ width: e.survey.renderedStyleLogoWidth,
179
+ height: e.survey.renderedStyleLogoHeight
180
+ })
181
+ }, null, 14, Ve)
182
+ ], 2)) : m("", !0),
183
+ p("div", {
184
+ class: l(e.survey.css.headerClose)
185
+ }, null, 2)
186
+ ], 2)) : m("", !0);
187
+ };
188
+ }
189
+ }), We = /* @__PURE__ */ C({
190
+ __name: "Row",
191
+ props: {
192
+ row: {},
193
+ css: {},
194
+ survey: {}
195
+ },
196
+ setup(r) {
197
+ const o = r, n = R(
198
+ () => o.row.visibleElements
199
+ ), s = T();
200
+ return B(() => o.row), E(() => {
201
+ if (o.row && !o.row.isNeedRender) {
202
+ const e = s.value;
203
+ setTimeout(() => {
204
+ o.row.startLazyRendering(e);
205
+ }, 10);
206
+ }
207
+ }), O(() => {
208
+ const e = o.row;
209
+ e && (e.isNeedRender = !o.row.isLazyRendering());
210
+ }), (e, i) => {
211
+ const a = q("survey-element"), d = q("survey-panel");
212
+ return t(), u("div", {
213
+ class: l(e.row.getRowCss()),
214
+ ref_key: "root",
215
+ ref: s
216
+ }, [
217
+ (t(!0), u(w, null, S(n.value, (c) => (t(), u("div", {
218
+ style: $(c.rootStyle)
219
+ }, [
220
+ c.isPanel ? m("", !0) : (t(), y(a, {
221
+ key: c.id,
222
+ element: c,
223
+ survey: e.survey,
224
+ css: e.css,
225
+ row: e.row,
226
+ style: $(c.getRootStyle())
227
+ }, null, 8, ["element", "survey", "css", "row", "style"])),
228
+ c.isPanel ? (t(), y(d, {
229
+ key: c.id,
230
+ question: c,
231
+ css: e.css
232
+ }, null, 8, ["question", "css"])) : m("", !0)
233
+ ], 4))), 256))
234
+ ], 2);
235
+ };
236
+ }
237
+ }), ze = ["id", "role", "aria-required", "aria-invalid", "aria-labelledby", "data-name"], Ue = /* @__PURE__ */ C({
238
+ __name: "Element",
239
+ props: {
240
+ survey: {},
241
+ element: {},
242
+ row: {},
243
+ css: {}
244
+ },
245
+ setup(r) {
246
+ const o = r, n = T(null), s = R(() => !o.element.isPanel && o.element.showErrorOnTop), e = R(() => !o.element.isPanel && o.element.showErrorOnBottom), i = (d) => d.customWidget ? "survey-customwidget" : d.getType() === "panel" || d.isDefaultRendering() ? "survey-" + d.getTemplate() : d.getComponentName(), a = (d) => d.cssContent;
247
+ return B(() => o.element), E(() => {
248
+ o.element.isPanel || o.element.afterRender(n.value);
249
+ }), (d, c) => {
250
+ const v = q("survey-errors"), f = q("survey-element-header"), g = q("survey-string"), k = q("survey-question-comment");
251
+ return d.row.isNeedRender ? (t(), u("div", {
252
+ key: 0,
253
+ class: l(d.element.isPanel ? null : d.element.getRootCss()),
254
+ ref_key: "root",
255
+ ref: n,
256
+ onFocusin: c[0] || (c[0] = (P) => d.element.focusIn()),
257
+ id: d.element.id,
258
+ role: d.element.ariaRole,
259
+ "aria-required": d.element.ariaRequired,
260
+ "aria-invalid": d.element.ariaInvalid,
261
+ "aria-labelledby": d.element.ariaLabelledBy,
262
+ "data-name": d.element.name
263
+ }, [
264
+ !d.element.isPanel && d.element.showErrorsAboveQuestion ? (t(), y(v, {
265
+ key: 0,
266
+ element: d.element,
267
+ location: "top"
268
+ }, null, 8, ["element"])) : m("", !0),
269
+ !d.element.isPanel && d.element.hasTitleOnLeftTop ? (t(), y(f, {
270
+ key: 1,
271
+ element: d.element,
272
+ css: d.css
273
+ }, null, 8, ["element", "css"])) : m("", !0),
274
+ D(p("div", {
275
+ class: l(a(d.element) || void 0),
276
+ role: "presentation"
277
+ }, [
278
+ s.value ? (t(), y(v, {
279
+ key: 0,
280
+ element: d.element,
281
+ location: "top"
282
+ }, null, 8, ["element"])) : m("", !0),
283
+ d.element.isPanel || !d.element.isCollapsed ? (t(), y(N(i(d.element)), {
284
+ key: 1,
285
+ question: d.element
286
+ }, null, 8, ["question"])) : m("", !0),
287
+ d.element.hasComment ? (t(), u("div", {
288
+ key: 2,
289
+ class: l(d.element.getCommentAreaCss())
290
+ }, [
291
+ p("div", null, [
292
+ h(g, {
293
+ locString: d.element.locCommentText
294
+ }, null, 8, ["locString"])
295
+ ]),
296
+ h(k, {
297
+ commentClass: d.css.comment,
298
+ question: d.element
299
+ }, null, 8, ["commentClass", "question"])
300
+ ], 2)) : m("", !0),
301
+ e.value ? (t(), y(v, {
302
+ key: 3,
303
+ element: d.element,
304
+ location: "bottom"
305
+ }, null, 8, ["element"])) : m("", !0),
306
+ !d.element.isPanel && d.element.isErrorsModeTooltip ? (t(), y(v, {
307
+ key: 4,
308
+ element: d.element,
309
+ location: "tooltip"
310
+ }, null, 8, ["element"])) : m("", !0),
311
+ !d.element.isPanel && d.element.hasDescriptionUnderInput ? (t(), u("div", {
312
+ key: 5,
313
+ class: l(d.element.cssClasses.descriptionUnderInput)
314
+ }, [
315
+ h(g, {
316
+ locString: d.element.locDescription
317
+ }, null, 8, ["locString"])
318
+ ], 2)) : m("", !0)
319
+ ], 2), [
320
+ [H, d.element.isPanel || !d.element.isCollapsed]
321
+ ]),
322
+ !d.element.isPanel && d.element.hasTitleOnBottom ? (t(), y(f, {
323
+ key: 2,
324
+ element: d.element,
325
+ css: d.css
326
+ }, null, 8, ["element", "css"])) : m("", !0),
327
+ !d.element.isPanel && d.element.showErrorsBelowQuestion ? (t(), y(v, {
328
+ key: 3,
329
+ element: d.element,
330
+ location: "bottom"
331
+ }, null, 8, ["element"])) : m("", !0)
332
+ ], 42, ze)) : d.element.skeletonComponentName ? (t(), y(N(d.element.skeletonComponentName), {
333
+ key: 1,
334
+ element: d.element,
335
+ css: d.css
336
+ }, null, 8, ["element", "css"])) : m("", !0);
337
+ };
338
+ }
339
+ }), Ke = ["id"], je = ["id"], Qe = /* @__PURE__ */ C({
340
+ __name: "Panel",
341
+ props: {
342
+ question: {},
343
+ isEditMode: { type: Boolean },
344
+ css: {}
345
+ },
346
+ setup(r) {
347
+ const o = r, n = T(!1), s = T(null), e = R(() => o.question.rows), i = R(() => o.question.survey), a = R(() => n.value);
348
+ return B(() => o.question), E(() => {
349
+ o.question.survey && o.question.survey.afterRenderPanel(o.question, s.value), n.value = o.question.isCollapsed;
350
+ const d = o.question;
351
+ d.stateChangedCallback = () => {
352
+ n.value = o.question.isCollapsed;
353
+ };
354
+ }), O(() => {
355
+ const d = o.question;
356
+ d.stateChangedCallback = null;
357
+ }), (d, c) => {
358
+ const v = q("survey-errors"), f = q("survey-element-header"), g = q("survey-row"), k = q("sv-action-bar");
359
+ return d.question.isVisible ? (t(), u("div", {
360
+ key: 0,
361
+ class: l(d.question.getContainerCss()),
362
+ id: d.question.id,
363
+ ref_key: "root",
364
+ ref: s
365
+ }, [
366
+ d.question.showErrorsAbovePanel ? (t(), y(v, {
367
+ key: 0,
368
+ element: d.question
369
+ }, null, 8, ["element"])) : m("", !0),
370
+ d.question.hasTitle || d.question.hasDescription ? (t(), y(f, {
371
+ key: 1,
372
+ element: d.question,
373
+ css: d.css
374
+ }, null, 8, ["element", "css"])) : m("", !0),
375
+ d.question.showErrorsAbovePanel ? m("", !0) : (t(), y(v, {
376
+ key: 2,
377
+ element: d.question
378
+ }, null, 8, ["element"])),
379
+ a.value ? m("", !0) : (t(), u("div", {
380
+ key: 3,
381
+ id: d.question.contentId,
382
+ style: $({ paddingLeft: d.question.innerPaddingLeft }),
383
+ class: l(d.question.cssClasses.panel.content)
384
+ }, [
385
+ (t(!0), u(w, null, S(e.value, (P, L) => (t(), u(w, null, [
386
+ P.visible ? (t(), y(g, {
387
+ key: d.question.id + "_" + L,
388
+ row: P,
389
+ survey: i.value,
390
+ css: d.css
391
+ }, null, 8, ["row", "survey", "css"])) : m("", !0)
392
+ ], 64))), 256)),
393
+ h(k, {
394
+ model: d.question.getFooterToolbar()
395
+ }, null, 8, ["model"])
396
+ ], 14, je))
397
+ ], 10, Ke)) : m("", !0);
398
+ };
399
+ }
400
+ }), Ze = /* @__PURE__ */ C({
401
+ __name: "ElementHeader",
402
+ props: {
403
+ element: {},
404
+ css: {}
405
+ },
406
+ setup(r) {
407
+ const o = r, n = () => {
408
+ typeof o.element.clickTitleFunction == "function" && o.element.clickTitleFunction();
409
+ };
410
+ return (s, e) => {
411
+ const i = q("survey-element-title"), a = q("survey-string"), d = q("sv-action-bar");
412
+ return t(), u("div", {
413
+ class: l(s.element.cssHeader),
414
+ onClick: n
415
+ }, [
416
+ h(i, {
417
+ element: s.element,
418
+ css: s.css
419
+ }, null, 8, ["element", "css"]),
420
+ s.element.hasDescriptionUnderTitle ? D((t(), u("div", {
421
+ key: 0,
422
+ class: l(s.element.cssDescription)
423
+ }, [
424
+ h(a, {
425
+ locString: s.element.locDescription
426
+ }, null, 8, ["locString"])
427
+ ], 2)), [
428
+ [H, s.element.hasDescription]
429
+ ]) : m("", !0),
430
+ s.element.additionalTitleToolbar ? (t(), y(d, {
431
+ key: 1,
432
+ model: s.element.additionalTitleToolbar
433
+ }, null, 8, ["model"])) : m("", !0)
434
+ ], 2);
435
+ };
436
+ }
437
+ }), Ge = /* @__PURE__ */ C({
438
+ __name: "String",
439
+ props: {
440
+ locString: {}
441
+ },
442
+ setup(r) {
443
+ return (o, n) => (t(), y(N(o.locString.renderAs), {
444
+ locString: o.locString.renderAsData
445
+ }, null, 8, ["locString"]));
446
+ }
447
+ }), Xe = ["innerHTML"], Je = {
448
+ key: 1,
449
+ class: "sv-string-viewer"
450
+ }, Ye = /* @__PURE__ */ C({
451
+ __name: "StringViewer",
452
+ props: {
453
+ locString: {}
454
+ },
455
+ setup(r) {
456
+ const o = r, n = W(() => o.locString);
457
+ return (s, e) => s.locString.hasHtml ? (t(), u("span", {
458
+ key: 0,
459
+ class: "sv-string-viewer",
460
+ innerHTML: b(n)
461
+ }, null, 8, Xe)) : (t(), u("span", Je, I(b(n)), 1));
462
+ }
463
+ }), _e = ["innerHTML"], xe = /* @__PURE__ */ C({
464
+ __name: "StringEditor",
465
+ props: {
466
+ locString: {}
467
+ },
468
+ setup(r) {
469
+ const o = r, n = (e) => {
470
+ const i = o.locString;
471
+ i.text = e.target.innerText;
472
+ }, s = (e) => {
473
+ e.preventDefault(), e.stopPropagation();
474
+ };
475
+ return (e, i) => e.locString.hasHtml ? (t(), u("span", {
476
+ key: 0,
477
+ class: "sv-string-editor",
478
+ contenteditable: "true",
479
+ innerHTML: e.locString.renderedHtml,
480
+ onBlur: n,
481
+ onClick: s
482
+ }, null, 40, _e)) : (t(), u("span", {
483
+ key: 1,
484
+ class: "sv-string-editor",
485
+ contenteditable: "true",
486
+ onBlur: n,
487
+ onClick: s
488
+ }, I(e.locString.renderedHtml), 33));
489
+ }
490
+ }), es = ["id"], ss = /* @__PURE__ */ C({
491
+ __name: "Skeleton",
492
+ props: {
493
+ element: {}
494
+ },
495
+ setup(r) {
496
+ const o = r;
497
+ return B(() => o.element), (n, s) => (t(), u("div", {
498
+ class: "sv-skeleton-element",
499
+ id: n.element.id
500
+ }, null, 8, es));
501
+ }
502
+ }), ns = ["id"], os = ["value"], ts = /* @__PURE__ */ C({
503
+ __name: "Text",
504
+ props: {
505
+ question: {}
506
+ },
507
+ setup(r) {
508
+ const o = r, n = T(null);
509
+ return M(o, n), (s, e) => {
510
+ const i = q("survey-text-input");
511
+ return s.question.isReadOnlyRenderDiv() ? (t(), u("div", {
512
+ key: 0,
513
+ ref_key: "root",
514
+ ref: n
515
+ }, I(s.question.value), 513)) : s.question.dataListId ? (t(), u("div", {
516
+ key: 1,
517
+ ref_key: "root",
518
+ ref: n
519
+ }, [
520
+ h(i, { question: s.question }, null, 8, ["question"]),
521
+ p("datalist", {
522
+ id: s.question.dataListId
523
+ }, [
524
+ (t(!0), u(w, null, S(s.question.dataList, (a) => (t(), u("option", { value: a }, null, 8, os))), 256))
525
+ ], 8, ns)
526
+ ], 512)) : (t(), y(i, {
527
+ key: 2,
528
+ question: s.question,
529
+ ref_key: "root",
530
+ ref: n
531
+ }, null, 8, ["question"]));
532
+ };
533
+ }
534
+ }), is = ["disabled", "type", "maxlength", "min", "max", "step", "size", "id", "list", "placeholder", "autocomplete", "value", "aria-required", "aria-label", "aria-labelledby", "aria-invalid", "aria-describedby"], ls = { key: 1 }, rs = ["disabled", "type", "maxlength", "min", "max", "step", "size", "id", "list", "placeholder", "autocomplete", "value", "aria-required", "aria-label", "aria-invalid", "aria-describedby"], as = /* @__PURE__ */ C({
535
+ __name: "TextInput",
536
+ props: {
537
+ question: {}
538
+ },
539
+ setup(r) {
540
+ const o = r;
541
+ B(() => o.question);
542
+ const n = R(() => o.question.inputStyle);
543
+ return (s, e) => {
544
+ const i = q("sv-character-counter");
545
+ return s.question.getMaxLength() ? (t(), u("div", ls, [
546
+ p("input", {
547
+ disabled: s.question.isInputReadOnly,
548
+ class: l(s.question.getControlClass()),
549
+ type: s.question.inputType,
550
+ maxlength: s.question.getMaxLength(),
551
+ min: s.question.renderedMin,
552
+ max: s.question.renderedMax,
553
+ step: s.question.renderedStep,
554
+ size: s.question.renderedInputSize,
555
+ style: $(n.value),
556
+ id: s.question.inputId,
557
+ list: s.question.dataListId,
558
+ placeholder: s.question.renderedPlaceholder,
559
+ autocomplete: s.question.autocomplete,
560
+ value: s.question.value,
561
+ onChange: e[6] || (e[6] = (...a) => s.question.onChange && s.question.onChange(...a)),
562
+ onKeyup: e[7] || (e[7] = (...a) => s.question.onKeyUp && s.question.onKeyUp(...a)),
563
+ onKeydown: e[8] || (e[8] = (...a) => s.question.onKeyDown && s.question.onKeyDown(...a)),
564
+ onCompositionUpdate: e[9] || (e[9] = (...a) => s.question.onCompositionUpdate && s.question.onCompositionUpdate(...a)),
565
+ onBlur: e[10] || (e[10] = (...a) => s.question.onBlur && s.question.onBlur(...a)),
566
+ onFocus: e[11] || (e[11] = (...a) => s.question.onFocus && s.question.onFocus(...a)),
567
+ "aria-required": s.question.a11y_input_ariaRequired,
568
+ "aria-label": s.question.a11y_input_ariaLabel,
569
+ "aria-invalid": s.question.a11y_input_ariaInvalid,
570
+ "aria-describedby": s.question.a11y_input_ariaDescribedBy
571
+ }, null, 46, rs),
572
+ h(i, {
573
+ counter: s.question.characterCounter,
574
+ remainingCharacterCounter: s.question.cssClasses.remainingCharacterCounter
575
+ }, null, 8, ["counter", "remainingCharacterCounter"])
576
+ ])) : (t(), u("input", {
577
+ key: 0,
578
+ disabled: s.question.isInputReadOnly,
579
+ class: l(s.question.getControlClass()),
580
+ type: s.question.inputType,
581
+ maxlength: s.question.getMaxLength(),
582
+ min: s.question.renderedMin,
583
+ max: s.question.renderedMax,
584
+ step: s.question.renderedStep,
585
+ size: s.question.renderedInputSize,
586
+ style: $(n.value),
587
+ id: s.question.inputId,
588
+ list: s.question.dataListId,
589
+ placeholder: s.question.renderedPlaceholder,
590
+ autocomplete: s.question.autocomplete,
591
+ value: s.question.value,
592
+ onChange: e[0] || (e[0] = (...a) => s.question.onChange && s.question.onChange(...a)),
593
+ onKeyup: e[1] || (e[1] = (...a) => s.question.onKeyUp && s.question.onKeyUp(...a)),
594
+ onKeydown: e[2] || (e[2] = (...a) => s.question.onKeyDown && s.question.onKeyDown(...a)),
595
+ onCompositionUpdate: e[3] || (e[3] = (...a) => s.question.onCompositionUpdate && s.question.onCompositionUpdate(...a)),
596
+ onBlur: e[4] || (e[4] = (...a) => s.question.onBlur && s.question.onBlur(...a)),
597
+ onFocus: e[5] || (e[5] = (...a) => s.question.onFocus && s.question.onFocus(...a)),
598
+ "aria-required": s.question.a11y_input_ariaRequired,
599
+ "aria-label": s.question.a11y_input_ariaLabel,
600
+ "aria-labelledby": s.question.a11y_input_ariaLabelledBy,
601
+ "aria-invalid": s.question.a11y_input_ariaInvalid,
602
+ "aria-describedby": s.question.a11y_input_ariaDescribedBy
603
+ }, null, 46, is));
604
+ };
605
+ }
606
+ }), us = /* @__PURE__ */ p("legend", {
607
+ role: "presentation",
608
+ class: "sv-hidden"
609
+ }, null, -1), ds = /* @__PURE__ */ C({
610
+ __name: "Checkbox",
611
+ props: {
612
+ question: {}
613
+ },
614
+ setup(r) {
615
+ const o = r, n = T(null);
616
+ return M(o, n), (s, e) => {
617
+ const i = q("survey-checkbox-item"), a = q("survey-other-choice");
618
+ return t(), u("fieldset", {
619
+ class: l(s.question.getSelectBaseRootCss()),
620
+ role: "presentation"
621
+ }, [
622
+ us,
623
+ s.question.hasHeadItems ? (t(!0), u(w, { key: 0 }, S(s.question.headItems, (d, c) => (t(), y(i, {
624
+ key: d.value,
625
+ class: l(s.question.getItemClass(d)),
626
+ question: s.question,
627
+ item: d,
628
+ index: "" + c
629
+ }, null, 8, ["class", "question", "item", "index"]))), 128)) : m("", !0),
630
+ !s.question.hasColumns && !s.question.blockedRow ? (t(!0), u(w, { key: 1 }, S(s.question.bodyItems, (d, c) => (t(), y(i, {
631
+ key: d.value,
632
+ class: l(s.question.getItemClass(d)),
633
+ question: s.question,
634
+ item: d,
635
+ index: c
636
+ }, null, 8, ["class", "question", "item", "index"]))), 128)) : m("", !0),
637
+ s.question.blockedRow ? (t(), u("div", {
638
+ key: 2,
639
+ class: l(s.question.cssClasses.rootRow)
640
+ }, [
641
+ !s.question.hasColumns && s.question.blockedRow ? (t(!0), u(w, { key: 0 }, S(s.question.dataChoices, (d, c) => (t(), y(i, {
642
+ key: d.value,
643
+ class: l(s.question.getItemClass(d)),
644
+ question: s.question,
645
+ item: d,
646
+ index: c
647
+ }, null, 8, ["class", "question", "item", "index"]))), 128)) : m("", !0)
648
+ ], 2)) : m("", !0),
649
+ s.question.hasColumns ? (t(), u("div", {
650
+ key: 3,
651
+ class: l(s.question.cssClasses.rootMultiColumn)
652
+ }, [
653
+ (t(!0), u(w, null, S(s.question.columns, (d, c) => (t(), u("div", {
654
+ key: c,
655
+ class: l(s.question.getColumnClass()),
656
+ role: "presentation"
657
+ }, [
658
+ (t(!0), u(w, null, S(d, (v, f) => (t(), y(i, {
659
+ key: v.value,
660
+ class: l(s.question.getItemClass(v)),
661
+ question: s.question,
662
+ item: v,
663
+ index: "" + c + f
664
+ }, null, 8, ["class", "question", "item", "index"]))), 128))
665
+ ], 2))), 128))
666
+ ], 2)) : m("", !0),
667
+ s.question.hasFootItems ? (t(!0), u(w, { key: 4 }, S(s.question.footItems, (d, c) => (t(), y(i, {
668
+ key: d.value,
669
+ class: l(s.question.getItemClass(d)),
670
+ question: s.question,
671
+ item: d,
672
+ index: "" + c
673
+ }, null, 8, ["class", "question", "item", "index"]))), 128)) : m("", !0),
674
+ s.question.renderedValue && s.question.isOtherSelected ? (t(), y(a, {
675
+ key: 5,
676
+ question: s.question
677
+ }, null, 8, ["question"])) : m("", !0)
678
+ ], 2);
679
+ };
680
+ }
681
+ }), ms = { role: "presentation" }, cs = ["aria-label"], ps = ["name", "value", "id", "disabled", "aria-describedby"], vs = ["name", "value", "id", "disabled", "aria-describedby"], qs = ["xlink:href"], ys = /* @__PURE__ */ C({
682
+ __name: "CheckboxItem",
683
+ props: {
684
+ question: {},
685
+ item: {},
686
+ index: {},
687
+ hideLabel: { type: Boolean }
688
+ },
689
+ setup(r) {
690
+ const o = r, n = R({
691
+ get() {
692
+ return o.question.isAllSelected || "";
693
+ },
694
+ set(s) {
695
+ const e = o.question;
696
+ e.isAllSelected = !!s;
697
+ }
698
+ });
699
+ return B(() => o.item), (s, e) => {
700
+ const i = q("survey-string");
701
+ return t(), u("div", ms, [
702
+ p("label", {
703
+ class: l(s.question.getLabelClass(s.item)),
704
+ "aria-label": s.question.getAriaItemLabel(s.item)
705
+ }, [
706
+ s.item == s.question.selectAllItem ? D((t(), u("input", {
707
+ key: 0,
708
+ role: "option",
709
+ type: "checkbox",
710
+ name: s.question.name,
711
+ value: n.value,
712
+ "onUpdate:modelValue": e[0] || (e[0] = (a) => n.value = a),
713
+ id: s.question.getItemId(s.item),
714
+ disabled: !s.question.getItemEnabled(s.item),
715
+ "aria-describedby": s.question.ariaDescribedBy,
716
+ class: l(s.question.cssClasses.itemControl)
717
+ }, null, 10, ps)), [
718
+ [z, n.value]
719
+ ]) : m("", !0),
720
+ s.item != s.question.selectAllItem ? D((t(), u("input", {
721
+ key: 1,
722
+ role: "option",
723
+ type: "checkbox",
724
+ name: s.question.name,
725
+ value: s.item.value,
726
+ "onUpdate:modelValue": e[1] || (e[1] = (a) => s.question.renderedValue = a),
727
+ id: s.question.getItemId(s.item),
728
+ disabled: !s.question.getItemEnabled(s.item),
729
+ "aria-describedby": s.question.ariaDescribedBy,
730
+ class: l(s.question.cssClasses.itemControl)
731
+ }, null, 10, vs)), [
732
+ [z, s.question.renderedValue]
733
+ ]) : m("", !0),
734
+ s.question.cssClasses.materialDecorator ? (t(), u("span", {
735
+ key: 2,
736
+ class: l(s.question.cssClasses.materialDecorator)
737
+ }, [
738
+ s.question.itemSvgIcon ? (t(), u("svg", {
739
+ key: 0,
740
+ class: l(s.question.cssClasses.itemDecorator)
741
+ }, [
742
+ p("use", {
743
+ "xlink:href": s.question.itemSvgIcon
744
+ }, null, 8, qs)
745
+ ], 2)) : m("", !0)
746
+ ], 2)) : m("", !0),
747
+ s.hideLabel ? m("", !0) : (t(), u("span", {
748
+ key: 3,
749
+ class: l(s.question.cssClasses.controlLabel)
750
+ }, [
751
+ h(i, {
752
+ locString: s.item.locText
753
+ }, null, 8, ["locString"])
754
+ ], 2))
755
+ ], 10, cs)
756
+ ]);
757
+ };
758
+ }
759
+ }), gs = { key: 5 }, Cs = ["value"], hs = /* @__PURE__ */ C({
760
+ __name: "Radiogroup",
761
+ props: {
762
+ question: {}
763
+ },
764
+ setup(r) {
765
+ const o = r, n = T(null);
766
+ return M(o, n), (s, e) => {
767
+ const i = q("survey-radiogroup-item"), a = q("survey-other-choice");
768
+ return t(), u("fieldset", {
769
+ role: "presentation",
770
+ class: l(s.question.getSelectBaseRootCss()),
771
+ ref_key: "root",
772
+ ref: n
773
+ }, [
774
+ !s.question.hasColumns && !s.question.blockedRow ? (t(!0), u(w, { key: 0 }, S(s.question.visibleChoices, (d, c) => (t(), y(i, {
775
+ key: d.value,
776
+ class: l(s.question.getItemClass(d)),
777
+ question: s.question,
778
+ item: d,
779
+ index: c
780
+ }, null, 8, ["class", "question", "item", "index"]))), 128)) : m("", !0),
781
+ s.question.blockedRow ? (t(), u("div", {
782
+ key: 1,
783
+ class: l(s.question.cssClasses.rootRow)
784
+ }, [
785
+ !s.question.hasColumns && s.question.blockedRow ? (t(!0), u(w, { key: 0 }, S(s.question.dataChoices, (d, c) => (t(), y(i, {
786
+ key: d.value,
787
+ class: l(s.question.getItemClass(d)),
788
+ question: s.question,
789
+ item: d,
790
+ index: c
791
+ }, null, 8, ["class", "question", "item", "index"]))), 128)) : m("", !0)
792
+ ], 2)) : m("", !0),
793
+ s.question.hasColumns ? (t(), u("div", {
794
+ key: 2,
795
+ class: l(s.question.cssClasses.rootMultiColumn)
796
+ }, [
797
+ s.question.hasColumns ? (t(!0), u(w, { key: 0 }, S(s.question.columns, (d, c) => (t(), u("div", {
798
+ class: l(s.question.getColumnClass()),
799
+ role: "presentation"
800
+ }, [
801
+ (t(!0), u(w, null, S(d, (v, f) => (t(), y(i, {
802
+ key: v.value,
803
+ class: l(s.question.getItemClass(v)),
804
+ question: s.question,
805
+ item: v,
806
+ index: "" + c + f
807
+ }, null, 8, ["class", "question", "item", "index"]))), 128))
808
+ ], 2))), 256)) : m("", !0)
809
+ ], 2)) : m("", !0),
810
+ s.question.hasFootItems ? (t(!0), u(w, { key: 3 }, S(s.question.footItems, (d, c) => (t(), y(i, {
811
+ key: d.value,
812
+ class: l(s.question.getItemClass(d)),
813
+ question: s.question,
814
+ item: d,
815
+ index: "" + c
816
+ }, null, 8, ["class", "question", "item", "index"]))), 128)) : m("", !0),
817
+ s.question.renderedValue && s.question.isOtherSelected ? (t(), y(a, {
818
+ key: 4,
819
+ question: s.question
820
+ }, null, 8, ["question"])) : m("", !0),
821
+ s.question.showClearButtonInContent ? (t(), u("div", gs, [
822
+ p("input", {
823
+ type: "button",
824
+ class: l(s.question.cssClasses.clearButton),
825
+ onClick: e[0] || (e[0] = () => {
826
+ s.question.clearValue();
827
+ }),
828
+ value: s.question.clearButtonCaption
829
+ }, null, 10, Cs)
830
+ ])) : m("", !0)
831
+ ], 2);
832
+ };
833
+ }
834
+ }), bs = { role: "presentation" }, ks = ["aria-label"], fs = ["name", "value", "id", "aria-describedby", "disabled"], Is = ["xlink:href"], ws = /* @__PURE__ */ C({
835
+ __name: "RadiogroupItem",
836
+ props: {
837
+ question: {},
838
+ item: {},
839
+ index: {},
840
+ hideLabel: { type: Boolean }
841
+ },
842
+ setup(r) {
843
+ const o = r, n = (e) => o.question.getLabelClass(e), s = (e) => o.question.getControlLabelClass(e);
844
+ return B(() => o.item), (e, i) => {
845
+ const a = q("survey-string");
846
+ return t(), u("div", bs, [
847
+ p("label", {
848
+ onMousedown: i[1] || (i[1] = (d) => e.question.onMouseDown()),
849
+ class: l(n(e.item)),
850
+ "aria-label": e.question.getAriaItemLabel(e.item)
851
+ }, [
852
+ D(p("input", {
853
+ type: "radio",
854
+ name: e.question.questionName,
855
+ value: e.item.value,
856
+ id: e.question.getItemId(e.item),
857
+ "aria-describedby": e.question.ariaDescribedBy,
858
+ "onUpdate:modelValue": i[0] || (i[0] = (d) => e.question.renderedValue = d),
859
+ disabled: !e.question.getItemEnabled(e.item),
860
+ class: l(e.question.cssClasses.itemControl)
861
+ }, null, 10, fs), [
862
+ [Y, e.question.renderedValue]
863
+ ]),
864
+ e.question.cssClasses.materialDecorator ? (t(), u("span", {
865
+ key: 0,
866
+ class: l(e.question.cssClasses.materialDecorator)
867
+ }, [
868
+ e.question.itemSvgIcon ? (t(), u("svg", {
869
+ key: 0,
870
+ class: l(e.question.cssClasses.itemDecorator)
871
+ }, [
872
+ p("use", {
873
+ "xlink:href": e.question.itemSvgIcon
874
+ }, null, 8, Is)
875
+ ], 2)) : m("", !0)
876
+ ], 2)) : m("", !0),
877
+ e.hideLabel ? m("", !0) : (t(), u("span", {
878
+ key: 1,
879
+ class: l(s(e.item))
880
+ }, [
881
+ h(a, {
882
+ locString: e.item.locText
883
+ }, null, 8, ["locString"])
884
+ ], 2))
885
+ ], 42, ks)
886
+ ]);
887
+ };
888
+ }
889
+ }), Ts = /* @__PURE__ */ p("div", null, [
890
+ /* @__PURE__ */ p("canvas", { tabindex: "0" })
891
+ ], -1), Ss = ["title"], Rs = { key: 0 }, $s = /* @__PURE__ */ C({
892
+ __name: "Signaturepad",
893
+ props: {
894
+ question: {}
895
+ },
896
+ setup(r) {
897
+ const o = r, n = T(null);
898
+ return M(o, n), (s, e) => {
899
+ const i = q("sv-svg-icon");
900
+ return t(), u("div", {
901
+ class: l(s.question.cssClasses.root),
902
+ ref_key: "root",
903
+ ref: n,
904
+ style: $({
905
+ height: s.question.signatureHeight + "px",
906
+ width: s.question.signatureWidth + "px"
907
+ })
908
+ }, [
909
+ D(p("div", {
910
+ class: l(s.question.cssClasses.placeholder)
911
+ }, I(s.question.placeHolderText), 3), [
912
+ [H, s.question.needShowPlaceholder()]
913
+ ]),
914
+ Ts,
915
+ s.question.canShowClearButton ? (t(), u("div", {
916
+ key: 0,
917
+ class: l(s.question.cssClasses.controls)
918
+ }, [
919
+ p("button", {
920
+ type: "button",
921
+ class: l(s.question.cssClasses.clearButton),
922
+ title: s.question.clearButtonCaption,
923
+ onClick: e[0] || (e[0] = () => {
924
+ s.question.clearValue();
925
+ })
926
+ }, [
927
+ s.question.cssClasses.clearButtonIconId ? m("", !0) : (t(), u("span", Rs, "\u2716")),
928
+ s.question.cssClasses.clearButtonIconId ? (t(), y(i, {
929
+ key: 1,
930
+ iconName: s.question.cssClasses.clearButtonIconId,
931
+ size: "auto"
932
+ }, null, 8, ["iconName"])) : m("", !0)
933
+ ], 10, Ss)
934
+ ], 2)) : m("", !0)
935
+ ], 6);
936
+ };
937
+ }
938
+ }), Bs = ["innerHTML"], Ls = /* @__PURE__ */ C({
939
+ __name: "Html",
940
+ props: {
941
+ question: {}
942
+ },
943
+ setup(r) {
944
+ const o = r, n = T(null);
945
+ M(o, n);
946
+ const s = W(() => o.question.locHtml);
947
+ return (e, i) => (t(), u("div", {
948
+ ref_key: "root",
949
+ ref: n,
950
+ class: l(e.question.renderCssRoot),
951
+ innerHTML: b(s)
952
+ }, null, 10, Bs));
953
+ }
954
+ }), Ds = ["src", "alt", "width", "height"], Ps = ["src", "width", "height"], Ms = ["src", "width", "height"], Ns = /* @__PURE__ */ C({
955
+ __name: "Image",
956
+ props: {
957
+ question: {}
958
+ },
959
+ setup(r) {
960
+ const o = r, n = T(null);
961
+ M(o, n);
962
+ const s = W(() => o.question.locImageLink);
963
+ return (e, i) => {
964
+ const a = q("sv-svg-icon");
965
+ return t(), u("div", {
966
+ class: l(e.question.cssClasses.root),
967
+ ref_key: "root",
968
+ ref: n
969
+ }, [
970
+ e.question.renderedMode === "image" ? D((t(), u("img", {
971
+ key: 0,
972
+ class: l(e.question.getImageCss()),
973
+ src: b(s),
974
+ alt: e.question.altText || e.question.title,
975
+ width: e.question.renderedWidth,
976
+ height: e.question.renderedHeight,
977
+ style: $({
978
+ objectFit: e.question.imageFit,
979
+ width: e.question.renderedStyleWidth,
980
+ height: e.question.renderedStyleHeight
981
+ }),
982
+ onLoad: i[0] || (i[0] = (d) => {
983
+ e.question.onLoadHandler();
984
+ }),
985
+ onError: i[1] || (i[1] = (d) => {
986
+ e.question.onErrorHandler();
987
+ })
988
+ }, null, 46, Ds)), [
989
+ [H, b(s) && !e.question.contentNotLoaded]
990
+ ]) : m("", !0),
991
+ e.question.renderedMode === "video" ? D((t(), u("video", {
992
+ key: 1,
993
+ controls: "",
994
+ class: l(e.question.getImageCss()),
995
+ src: b(s),
996
+ width: e.question.renderedWidth,
997
+ height: e.question.renderedHeight,
998
+ style: $({
999
+ objectFit: e.question.imageFit,
1000
+ width: e.question.renderedStyleWidth,
1001
+ height: e.question.renderedStyleHeight
1002
+ }),
1003
+ onLoadedmetadata: i[2] || (i[2] = (d) => {
1004
+ e.question.onLoadHandler();
1005
+ }),
1006
+ onError: i[3] || (i[3] = (d) => {
1007
+ e.question.onErrorHandler();
1008
+ })
1009
+ }, null, 46, Ps)), [
1010
+ [H, b(s) && !e.question.contentNotLoaded]
1011
+ ]) : m("", !0),
1012
+ e.question.renderedMode === "youtube" ? (t(), u("iframe", {
1013
+ key: 2,
1014
+ class: l(e.question.getImageCss()),
1015
+ src: b(s),
1016
+ width: e.question.renderedWidth,
1017
+ height: e.question.renderedHeight,
1018
+ style: $({
1019
+ objectFit: e.question.imageFit,
1020
+ width: e.question.renderedStyleWidth,
1021
+ height: e.question.renderedStyleHeight
1022
+ })
1023
+ }, null, 14, Ms)) : m("", !0),
1024
+ !b(s) || e.question.contentNotLoaded ? (t(), u("div", {
1025
+ key: 3,
1026
+ class: l(e.question.cssClasses.noImage)
1027
+ }, [
1028
+ h(a, {
1029
+ iconName: e.question.cssClasses.noImageSvgIconId,
1030
+ size: 48
1031
+ }, null, 8, ["iconName"])
1032
+ ], 2)) : m("", !0)
1033
+ ], 2);
1034
+ };
1035
+ }
1036
+ }), Hs = /* @__PURE__ */ C({
1037
+ __name: "Expression",
1038
+ props: {
1039
+ question: {}
1040
+ },
1041
+ setup(r) {
1042
+ const o = r, n = T(null);
1043
+ return M(o, n), (s, e) => (t(), u("div", {
1044
+ class: l(s.question.cssClasses.text),
1045
+ ref_key: "root",
1046
+ ref: n
1047
+ }, I(s.question.formatedValue), 3));
1048
+ }
1049
+ }), Es = ["id", "aria-required", "aria-label", "aria-invalid", "aria-describedby", "multiple", "title", "accept", "capture"], As = ["id", "multiple", "placeholder"], Os = ["for", "aria-label"], Vs = ["onClick", "href", "title", "download"], Fs = ["src"], Ws = ["onClick"], zs = ["onClick", "href", "title", "download"], Us = /* @__PURE__ */ C({
1050
+ __name: "File",
1051
+ props: {
1052
+ question: {}
1053
+ },
1054
+ setup(r) {
1055
+ const o = r, n = T(null);
1056
+ M(o, n);
1057
+ const s = (e) => o.question.isPreviewVisible(e);
1058
+ return (e, i) => {
1059
+ const a = q("sv-svg-icon"), d = q("sv-action-bar"), c = _("key2click");
1060
+ return t(), u("div", {
1061
+ class: l(e.question.fileRootCss)
1062
+ }, [
1063
+ e.question.isReadOnly ? m("", !0) : (t(), u("input", {
1064
+ key: 0,
1065
+ class: l(e.question.cssClasses.fileInput),
1066
+ tabindex: "-1",
1067
+ type: "file",
1068
+ id: e.question.inputId,
1069
+ onChange: i[0] || (i[0] = (...v) => e.question.doChange && e.question.doChange(...v)),
1070
+ "aria-required": e.question.ariaRequired,
1071
+ "aria-label": e.question.ariaLabel,
1072
+ "aria-invalid": e.question.ariaInvalid,
1073
+ "aria-describedby": e.question.ariaDescribedBy,
1074
+ multiple: e.question.allowMultiple,
1075
+ title: e.question.inputTitle,
1076
+ accept: e.question.acceptedTypes,
1077
+ capture: e.question.renderCapture
1078
+ }, null, 42, Es)),
1079
+ e.question.isReadOnly ? (t(), u("input", {
1080
+ key: 1,
1081
+ type: "file",
1082
+ disabled: "",
1083
+ id: e.question.inputId,
1084
+ class: l(e.question.getReadOnlyFileCss()),
1085
+ multiple: e.question.allowMultiple,
1086
+ placeholder: e.question.title,
1087
+ style: { color: "transparent" }
1088
+ }, null, 10, As)) : m("", !0),
1089
+ p("div", {
1090
+ class: l(e.question.cssClasses.dragArea),
1091
+ onDrop: i[3] || (i[3] = (...v) => e.question.onDrop && e.question.onDrop(...v)),
1092
+ onDragover: i[4] || (i[4] = (...v) => e.question.onDragOver && e.question.onDragOver(...v)),
1093
+ onDragleave: i[5] || (i[5] = (...v) => e.question.onDragLeave && e.question.onDragLeave(...v)),
1094
+ onDragenter: i[6] || (i[6] = (...v) => e.question.onDragEnter && e.question.onDragEnter(...v))
1095
+ }, [
1096
+ p("div", {
1097
+ class: l(e.question.getFileDecoratorCss())
1098
+ }, [
1099
+ p("span", {
1100
+ class: l(e.question.cssClasses.dragAreaPlaceholder)
1101
+ }, I(e.question.dragAreaPlaceholder), 3),
1102
+ p("div", {
1103
+ class: l(e.question.cssClasses.wrapper)
1104
+ }, [
1105
+ D((t(), u("label", {
1106
+ role: "button",
1107
+ tabindex: "0",
1108
+ class: l(e.question.getChooseFileCss()),
1109
+ for: e.question.inputId,
1110
+ "aria-label": e.question.chooseButtonCaption
1111
+ }, [
1112
+ p("span", null, I(e.question.chooseButtonCaption), 1),
1113
+ e.question.cssClasses.chooseFileIconId ? (t(), y(a, {
1114
+ key: 0,
1115
+ title: e.question.chooseButtonCaption,
1116
+ iconName: e.question.cssClasses.chooseFileIconId,
1117
+ size: "auto"
1118
+ }, null, 8, ["title", "iconName"])) : m("", !0)
1119
+ ], 10, Os)), [
1120
+ [c]
1121
+ ]),
1122
+ e.question.isEmpty() ? (t(), u("span", {
1123
+ key: 0,
1124
+ class: l(e.question.cssClasses.noFileChosen)
1125
+ }, I(e.question.noFileChosenCaption), 3)) : m("", !0)
1126
+ ], 2)
1127
+ ], 2),
1128
+ e.question.showRemoveButton ? (t(), u("button", {
1129
+ key: 0,
1130
+ type: "button",
1131
+ class: l(e.question.cssClasses.removeButton),
1132
+ onClick: i[1] || (i[1] = (...v) => e.question.doClean && e.question.doClean(...v))
1133
+ }, [
1134
+ p("span", null, I(e.question.clearButtonCaption), 1),
1135
+ e.question.cssClasses.removeButtonIconId ? (t(), y(a, {
1136
+ key: 0,
1137
+ iconName: e.question.cssClasses.removeButtonIconId,
1138
+ size: "auto",
1139
+ title: e.question.clearButtonCaption
1140
+ }, null, 8, ["iconName", "title"])) : m("", !0)
1141
+ ], 2)) : m("", !0),
1142
+ e.question.isEmpty() ? m("", !0) : (t(), u("div", {
1143
+ key: 1,
1144
+ class: l(e.question.cssClasses.fileList || void 0)
1145
+ }, [
1146
+ (t(!0), u(w, null, S(e.question.previewValue, (v, f) => D((t(), u("span", {
1147
+ key: e.question.inputId + "_" + f,
1148
+ class: l(e.question.cssClasses.preview)
1149
+ }, [
1150
+ v.name && e.question.cssClasses.fileSign ? (t(), u("div", {
1151
+ key: 0,
1152
+ class: l(e.question.cssClasses.fileSign)
1153
+ }, [
1154
+ p("a", {
1155
+ onClick: (g) => e.question.doDownloadFile(g, v),
1156
+ href: v.content,
1157
+ title: v.name,
1158
+ download: v.name,
1159
+ style: $({ width: e.question.imageWidth })
1160
+ }, I(v.name), 13, Vs)
1161
+ ], 2)) : m("", !0),
1162
+ p("div", {
1163
+ class: l(e.question.cssClasses.imageWrapper)
1164
+ }, [
1165
+ e.question.canPreviewImage(v) ? (t(), u("img", {
1166
+ key: 0,
1167
+ src: v.content,
1168
+ style: $({
1169
+ height: e.question.imageHeight,
1170
+ width: e.question.imageWidth
1171
+ }),
1172
+ alt: "File preview"
1173
+ }, null, 12, Fs)) : m("", !0),
1174
+ e.question.defaultImage(v) ? (t(), y(a, {
1175
+ key: 1,
1176
+ iconName: e.question.cssClasses.defaultImageIconId,
1177
+ class: l(e.question.cssClasses.defaultImage),
1178
+ size: "auto"
1179
+ }, null, 8, ["iconName", "class"])) : m("", !0),
1180
+ v.name && !e.question.isReadOnly ? (t(), u("div", {
1181
+ key: 2,
1182
+ class: l(e.question.cssClasses.removeFileButton),
1183
+ onClick: (g) => e.question.doRemoveFile(v)
1184
+ }, [
1185
+ p("span", {
1186
+ class: l(e.question.cssClasses.removeFile)
1187
+ }, I(e.question.removeFileCaption), 3),
1188
+ e.question.cssClasses.removeFileSvgIconId ? (t(), y(a, {
1189
+ key: 0,
1190
+ title: e.question.removeFileCaption,
1191
+ class: l(e.question.cssClasses.removeFileSvg),
1192
+ iconName: e.question.cssClasses.removeFileSvgIconId,
1193
+ size: "auto"
1194
+ }, null, 8, ["title", "class", "iconName"])) : m("", !0)
1195
+ ], 10, Ws)) : m("", !0)
1196
+ ], 2),
1197
+ v.name && e.question.cssClasses.fileSignBottom ? (t(), u("div", {
1198
+ key: 1,
1199
+ class: l(e.question.cssClasses.fileSignBottom)
1200
+ }, [
1201
+ p("a", {
1202
+ onClick: (g) => e.question.doDownloadFile(g, v),
1203
+ href: v.content,
1204
+ title: v.name,
1205
+ download: v.name,
1206
+ style: $({ width: e.question.imageWidth })
1207
+ }, I(v.name), 13, zs)
1208
+ ], 2)) : m("", !0)
1209
+ ], 2)), [
1210
+ [H, v && s(f)]
1211
+ ])), 128))
1212
+ ], 2)),
1213
+ e.question.showRemoveButtonBottom ? (t(), u("button", {
1214
+ key: 2,
1215
+ type: "button",
1216
+ class: l(e.question.showRemoveButtonBottom),
1217
+ onClick: i[2] || (i[2] = (...v) => e.question.doClean && e.question.doClean(...v))
1218
+ }, [
1219
+ p("span", null, I(e.question.clearButtonCaption), 1),
1220
+ e.question.cssClasses.removeButtonIconId ? (t(), y(a, {
1221
+ key: 0,
1222
+ iconName: e.question.cssClasses.removeButtonIconId,
1223
+ size: "auto",
1224
+ title: e.question.clearButtonCaption
1225
+ }, null, 8, ["iconName", "title"])) : m("", !0)
1226
+ ], 2)) : m("", !0),
1227
+ e.question.mobileFileNavigatorVisible ? (t(), y(d, {
1228
+ key: 3,
1229
+ model: e.question.mobileFileNavigator
1230
+ }, null, 8, ["model"])) : m("", !0)
1231
+ ], 34)
1232
+ ], 2);
1233
+ };
1234
+ }
1235
+ }), Ks = ["aria-label"], js = /* @__PURE__ */ C({
1236
+ __name: "Imagepicker",
1237
+ props: {
1238
+ question: {}
1239
+ },
1240
+ setup(r) {
1241
+ const o = r, n = T(null);
1242
+ return M(o, n), (s, e) => {
1243
+ const i = q("survey-imagepicker-item");
1244
+ return t(), u("fieldset", {
1245
+ class: l(s.question.getSelectBaseRootCss()),
1246
+ ref_key: "root",
1247
+ ref: n
1248
+ }, [
1249
+ p("legend", {
1250
+ role: "radio",
1251
+ "aria-label": s.question.locTitle.renderedHtml
1252
+ }, null, 8, Ks),
1253
+ s.question.hasColumns ? m("", !0) : (t(!0), u(w, { key: 0 }, S(s.question.visibleChoices, (a) => (t(), y(i, {
1254
+ key: a.value,
1255
+ question: s.question,
1256
+ item: a
1257
+ }, null, 8, ["question", "item"]))), 128)),
1258
+ s.question.hasColumns ? (t(!0), u(w, { key: 1 }, S(s.question.columns, (a, d) => (t(), u("div", {
1259
+ class: l(s.question.getColumnClass()),
1260
+ key: d,
1261
+ role: "presentation"
1262
+ }, [
1263
+ (t(!0), u(w, null, S(a, (c) => (t(), y(i, {
1264
+ key: c.value,
1265
+ question: s.question,
1266
+ item: c
1267
+ }, null, 8, ["question", "item"]))), 128))
1268
+ ], 2))), 128)) : m("", !0)
1269
+ ], 2);
1270
+ };
1271
+ }
1272
+ }), Qs = ["name", "value", "id", "disabled", "aria-required", "aria-label", "aria-invalid", "aria-describedby"], Zs = ["name", "value", "id", "disabled", "aria-required", "aria-label", "aria-invalid", "aria-describedby"], Gs = ["src", "width", "height", "alt"], Xs = ["src", "width", "height"], Js = /* @__PURE__ */ C({
1273
+ __name: "ImagepickerItem",
1274
+ props: {
1275
+ question: {},
1276
+ item: {}
1277
+ },
1278
+ setup(r) {
1279
+ const o = r, n = (e) => o.question.getItemClass(e);
1280
+ B(() => o.item);
1281
+ const s = W(() => o.item.locImageLink);
1282
+ return (e, i) => {
1283
+ const a = q("sv-svg-icon"), d = q("survey-string");
1284
+ return t(), u("div", {
1285
+ class: l(n(e.item))
1286
+ }, [
1287
+ p("label", {
1288
+ class: l(e.question.cssClasses.label)
1289
+ }, [
1290
+ e.question.multiSelect ? D((t(), u("input", {
1291
+ key: 0,
1292
+ type: "checkbox",
1293
+ name: e.question.questionName,
1294
+ value: e.item.value,
1295
+ id: e.question.getItemId(e.item),
1296
+ "onUpdate:modelValue": i[0] || (i[0] = (c) => e.question.value = c),
1297
+ disabled: !e.question.getItemEnabled(e.item),
1298
+ "aria-required": e.question.ariaRequired,
1299
+ "aria-label": e.question.ariaLabel,
1300
+ "aria-invalid": e.question.ariaInvalid,
1301
+ "aria-describedby": e.question.ariaDescribedBy,
1302
+ class: l(e.question.cssClasses.itemControl)
1303
+ }, null, 10, Qs)), [
1304
+ [z, e.question.value]
1305
+ ]) : D((t(), u("input", {
1306
+ key: 1,
1307
+ type: "radio",
1308
+ name: e.question.questionName,
1309
+ value: e.item.value,
1310
+ id: e.question.getItemId(e.item),
1311
+ "onUpdate:modelValue": i[1] || (i[1] = (c) => e.question.value = c),
1312
+ disabled: !e.question.getItemEnabled(e.item),
1313
+ "aria-required": e.question.ariaRequired,
1314
+ "aria-label": e.question.ariaLabel,
1315
+ "aria-invalid": e.question.ariaInvalid,
1316
+ "aria-describedby": e.question.ariaDescribedBy,
1317
+ class: l(e.question.cssClasses.itemControl)
1318
+ }, null, 10, Zs)), [
1319
+ [Y, e.question.value]
1320
+ ]),
1321
+ p("div", {
1322
+ class: l(e.question.cssClasses.itemDecorator)
1323
+ }, [
1324
+ p("div", {
1325
+ class: l(e.question.cssClasses.imageContainer)
1326
+ }, [
1327
+ e.question.cssClasses.checkedItemDecorator ? (t(), u("span", {
1328
+ key: 0,
1329
+ class: l(e.question.cssClasses.checkedItemDecorator)
1330
+ }, [
1331
+ e.question.cssClasses.checkedItemSvgIconId ? (t(), y(a, {
1332
+ key: 0,
1333
+ class: l(e.question.cssClasses.checkedItemSvgIcon),
1334
+ size: "auto",
1335
+ iconName: e.question.cssClasses.checkedItemSvgIconId
1336
+ }, null, 8, ["class", "iconName"])) : m("", !0)
1337
+ ], 2)) : m("", !0),
1338
+ b(s) && !e.item.contentNotLoaded && e.question.contentMode === "image" ? (t(), u("img", {
1339
+ key: 1,
1340
+ class: l(e.question.cssClasses.image),
1341
+ src: b(s),
1342
+ width: e.question.renderedImageWidth,
1343
+ height: e.question.renderedImageHeight,
1344
+ style: $({ objectFit: e.question.imageFit }),
1345
+ alt: e.item.locText.renderedHtml,
1346
+ onLoad: i[2] || (i[2] = (c) => {
1347
+ e.question.onContentLoaded(e.item, c);
1348
+ }),
1349
+ onError: i[3] || (i[3] = (c) => {
1350
+ e.item.onErrorHandler();
1351
+ })
1352
+ }, null, 46, Gs)) : m("", !0),
1353
+ b(s) && !e.item.contentNotLoaded && e.question.contentMode === "video" ? (t(), u("video", {
1354
+ key: 2,
1355
+ controls: "",
1356
+ class: l(e.question.cssClasses.image),
1357
+ src: b(s),
1358
+ width: e.question.renderedImageWidth,
1359
+ height: e.question.renderedImageHeight,
1360
+ style: $({ objectFit: e.question.imageFit }),
1361
+ onLoadedmetadata: i[4] || (i[4] = (c) => {
1362
+ e.question.onContentLoaded(e.item, c);
1363
+ }),
1364
+ onError: i[5] || (i[5] = (c) => {
1365
+ e.item.onErrorHandler();
1366
+ })
1367
+ }, null, 46, Xs)) : m("", !0),
1368
+ !b(s) || e.item.contentNotLoaded ? (t(), u("div", {
1369
+ key: 3,
1370
+ class: l(e.question.cssClasses.itemNoImage),
1371
+ style: $({
1372
+ width: e.question.renderedImageWidth + "px",
1373
+ height: e.question.renderedImageHeight + "px",
1374
+ objectFit: e.question.imageFit
1375
+ })
1376
+ }, [
1377
+ h(a, {
1378
+ class: l(e.question.cssClasses.itemNoImageSvgIcon),
1379
+ iconName: e.question.cssClasses.itemNoImageSvgIconId,
1380
+ size: 48
1381
+ }, null, 8, ["class", "iconName"])
1382
+ ], 6)) : m("", !0)
1383
+ ], 2),
1384
+ e.question.showLabel ? (t(), u("span", {
1385
+ key: 0,
1386
+ class: l(e.question.cssClasses.itemText)
1387
+ }, [
1388
+ h(d, {
1389
+ locString: e.item.locText
1390
+ }, null, 8, ["locString"])
1391
+ ], 2)) : m("", !0)
1392
+ ], 2)
1393
+ ], 2)
1394
+ ], 2);
1395
+ };
1396
+ }
1397
+ }), Ys = ["readonly", "disabled", "value", "id", "maxlength", "cols", "rows", "placeholder", "aria-required", "aria-label", "aria-labelledby", "aria-invalid", "aria-describedby"], _s = ["readonly", "disabled", "value", "id", "maxlength", "cols", "rows", "placeholder", "aria-required", "aria-label", "aria-labelledby", "aria-invalid", "aria-describedby"], xs = /* @__PURE__ */ C({
1398
+ __name: "Comment",
1399
+ props: {
1400
+ question: {},
1401
+ css: {}
1402
+ },
1403
+ setup(r) {
1404
+ const o = r, n = T(null);
1405
+ M(o, n);
1406
+ const s = (e) => {
1407
+ const i = o.question;
1408
+ i.value = e.target.value;
1409
+ };
1410
+ return (e, i) => {
1411
+ const a = q("sv-character-counter");
1412
+ return !e.question.isReadOnlyRenderDiv() && !e.question.getMaxLength() ? (t(), u("textarea", {
1413
+ key: 0,
1414
+ ref_key: "root",
1415
+ ref: n,
1416
+ readonly: e.question.isInputReadOnly,
1417
+ disabled: e.question.isInputReadOnly,
1418
+ value: e.question.value,
1419
+ id: e.question.inputId,
1420
+ maxlength: e.question.getMaxLength(),
1421
+ cols: e.question.cols,
1422
+ rows: e.question.rows,
1423
+ placeholder: e.question.renderedPlaceholder,
1424
+ class: l(e.question.className),
1425
+ onChange: s,
1426
+ onInput: i[0] || (i[0] = (d) => {
1427
+ e.question.onInput(d);
1428
+ }),
1429
+ onKeydown: i[1] || (i[1] = (d) => {
1430
+ e.question.onKeyDown(d);
1431
+ }),
1432
+ "aria-required": e.question.a11y_input_ariaRequired,
1433
+ "aria-label": e.question.a11y_input_ariaLabel,
1434
+ "aria-labelledby": e.question.a11y_input_ariaLabelledBy,
1435
+ "aria-invalid": e.question.a11y_input_ariaInvalid,
1436
+ "aria-describedby": e.question.a11y_input_ariaDescribedBy,
1437
+ style: $({ resize: e.question.resizeStyle })
1438
+ }, null, 46, Ys)) : !e.question.isReadOnlyRenderDiv() && e.question.getMaxLength() ? (t(), u("div", {
1439
+ key: 1,
1440
+ ref_key: "root",
1441
+ ref: n
1442
+ }, [
1443
+ p("textarea", {
1444
+ readonly: e.question.isInputReadOnly,
1445
+ disabled: e.question.isInputReadOnly,
1446
+ value: e.question.value,
1447
+ id: e.question.inputId,
1448
+ maxlength: e.question.getMaxLength(),
1449
+ cols: e.question.cols,
1450
+ rows: e.question.rows,
1451
+ placeholder: e.question.renderedPlaceholder,
1452
+ class: l(e.question.className),
1453
+ onChange: s,
1454
+ onInput: i[2] || (i[2] = (d) => {
1455
+ e.question.onInput(d);
1456
+ }),
1457
+ onKeydown: i[3] || (i[3] = (d) => {
1458
+ e.question.onKeyDown(d);
1459
+ }),
1460
+ "aria-required": e.question.a11y_input_ariaRequired,
1461
+ "aria-label": e.question.a11y_input_ariaLabel,
1462
+ "aria-labelledby": e.question.a11y_input_ariaLabelledBy,
1463
+ "aria-invalid": e.question.a11y_input_ariaInvalid,
1464
+ "aria-describedby": e.question.a11y_input_ariaDescribedBy,
1465
+ style: $({ resize: e.question.resizeStyle })
1466
+ }, null, 46, _s),
1467
+ h(a, {
1468
+ counter: e.question.characterCounter,
1469
+ remainingCharacterCounter: e.question.cssClasses.remainingCharacterCounter
1470
+ }, null, 8, ["counter", "remainingCharacterCounter"])
1471
+ ], 512)) : (t(), u("div", {
1472
+ key: 2,
1473
+ ref_key: "root",
1474
+ ref: n
1475
+ }, I(e.question.value), 513));
1476
+ };
1477
+ }
1478
+ }), en = /* @__PURE__ */ C({
1479
+ __name: "Dropdown",
1480
+ props: {
1481
+ question: {}
1482
+ },
1483
+ setup(r) {
1484
+ const o = r, n = T(null);
1485
+ return M(o, n), (s, e) => {
1486
+ const i = q("sv-dropdown"), a = q("survey-other-choice");
1487
+ return t(), u("div", {
1488
+ class: l(s.question.renderCssRoot),
1489
+ ref_key: "root",
1490
+ ref: n
1491
+ }, [
1492
+ h(i, { question: s.question }, null, 8, ["question"]),
1493
+ s.question.isOtherSelected ? (t(), y(a, {
1494
+ key: 0,
1495
+ question: s.question
1496
+ }, null, 8, ["question"])) : m("", !0)
1497
+ ], 2);
1498
+ };
1499
+ }
1500
+ }), sn = ["id", "autocomplete", "aria-required", "aria-label", "aria-invalid", "aria-describedby", "required"], nn = {
1501
+ key: 0,
1502
+ value: ""
1503
+ }, on = ["id"];
1504
+ G.Instance.registerRenderer(
1505
+ "dropdown",
1506
+ "select",
1507
+ "sv-dropdown-select"
1508
+ );
1509
+ const tn = /* @__PURE__ */ C({
1510
+ __name: "DropdownSelect",
1511
+ props: {
1512
+ question: {}
1513
+ },
1514
+ setup(r) {
1515
+ const o = r, n = T(null);
1516
+ M(o, n);
1517
+ const s = (a) => {
1518
+ o.question.onClick(a);
1519
+ }, e = (a) => {
1520
+ o.question.onKeyUp(a);
1521
+ }, i = R({
1522
+ get() {
1523
+ var a;
1524
+ return (a = o.question.value) != null ? a : "";
1525
+ },
1526
+ set(a) {
1527
+ const d = o.question;
1528
+ a === "" ? d.renderedValue = void 0 : d.renderedValue = a;
1529
+ }
1530
+ });
1531
+ return (a, d) => {
1532
+ const c = q("sv-dropdown-option-item"), v = q("sv-svg-icon"), f = q("survey-other-choice");
1533
+ return t(), u("div", {
1534
+ class: l(a.question.renderCssRoot)
1535
+ }, [
1536
+ p("div", {
1537
+ class: l(a.question.cssClasses.selectWrapper)
1538
+ }, [
1539
+ a.question.isReadOnly ? (t(), u("div", {
1540
+ key: 1,
1541
+ disabled: "",
1542
+ id: a.question.inputId,
1543
+ class: l(a.question.getControlClass())
1544
+ }, I(a.question.readOnlyText), 11, on)) : D((t(), u("select", {
1545
+ key: 0,
1546
+ id: a.question.inputId,
1547
+ "onUpdate:modelValue": d[0] || (d[0] = (g) => i.value = g),
1548
+ onClick: s,
1549
+ onKeyup: e,
1550
+ autocomplete: a.question.autocomplete,
1551
+ class: l(a.question.getControlClass()),
1552
+ "aria-required": a.question.ariaRequired,
1553
+ "aria-label": a.question.ariaLabel,
1554
+ "aria-invalid": a.question.ariaInvalid,
1555
+ "aria-describedby": a.question.ariaDescribedBy,
1556
+ required: a.question.isRequired
1557
+ }, [
1558
+ a.question.allowClear ? (t(), u("option", nn, I(a.question.placeholder), 1)) : m("", !0),
1559
+ (t(!0), u(w, null, S(a.question.visibleChoices, (g) => (t(), y(c, {
1560
+ item: g,
1561
+ key: g.id
1562
+ }, null, 8, ["item"]))), 128))
1563
+ ], 42, sn)), [
1564
+ [ce, i.value]
1565
+ ]),
1566
+ a.question.cssClasses.chevronButtonIconId ? (t(), u("div", {
1567
+ key: 2,
1568
+ class: l(a.question.cssClasses.chevronButton)
1569
+ }, [
1570
+ h(v, {
1571
+ class: l(a.question.cssClasses.chevronButtonSvg),
1572
+ iconName: a.question.cssClasses.chevronButtonIconId,
1573
+ size: "24"
1574
+ }, null, 8, ["class", "iconName"])
1575
+ ], 2)) : m("", !0)
1576
+ ], 2),
1577
+ a.question.isOtherSelected ? (t(), y(f, {
1578
+ key: 0,
1579
+ question: a.question
1580
+ }, null, 8, ["question"])) : m("", !0)
1581
+ ], 2);
1582
+ };
1583
+ }
1584
+ }), ln = ["value", "disabled"], rn = /* @__PURE__ */ C({
1585
+ __name: "OptionItem",
1586
+ props: {
1587
+ item: {}
1588
+ },
1589
+ setup(r) {
1590
+ const o = r, n = W(() => o.item.locText);
1591
+ return B(() => o.item), (s, e) => (t(), u("option", {
1592
+ value: s.item.value,
1593
+ disabled: !s.item.isEnabled
1594
+ }, I(b(n)), 9, ln));
1595
+ }
1596
+ }), an = ["id", "disabled", "tabindex", "role", "aria-required", "aria-label", "aria-invalid", "aria-describedby", "aria-expanded", "aria-controls", "aria-activedescendant", "required"], un = { style: { visibility: "hidden" } }, dn = ["disabled", "inputmode", "role", "id", "tabindex", "readonly", "aria-label", "aria-expanded", "aria-controls", "aria-activedescendant", "placeholder"], mn = ["id"], cn = /* @__PURE__ */ C({
1597
+ __name: "Dropdown",
1598
+ props: {
1599
+ question: {}
1600
+ },
1601
+ setup(r) {
1602
+ const o = r, n = T(null), s = R(() => {
1603
+ const g = o.question;
1604
+ return g.dropdownListModel || (g.dropdownListModel = new ke(g)), o.question.dropdownListModel;
1605
+ }), e = (g) => {
1606
+ var k;
1607
+ (k = s.value) == null || k.onClick(g);
1608
+ }, i = (g) => {
1609
+ var k;
1610
+ (k = s.value) == null || k.onClear(g);
1611
+ }, a = (g) => {
1612
+ var k;
1613
+ (k = s.value) == null || k.keyHandler(g);
1614
+ }, d = () => {
1615
+ if (n.value) {
1616
+ const g = n.value, k = s.value.inputStringRendered;
1617
+ fe.isTwoValueEquals(k, g.value) || (g.value = s.value.inputStringRendered);
1618
+ }
1619
+ }, c = (g) => {
1620
+ var k;
1621
+ (k = s.value) == null || k.onBlur(g), d();
1622
+ }, v = (g) => {
1623
+ var k;
1624
+ (k = s.value) == null || k.onFocus(g);
1625
+ }, f = (g) => {
1626
+ s.value.inputStringRendered = g.target.value;
1627
+ };
1628
+ return B(() => s.value), U(d), E(d), (g, k) => {
1629
+ const P = q("survey-string"), L = q("sv-svg-icon"), A = q("sv-popup");
1630
+ return t(), u("div", {
1631
+ class: l(g.question.cssClasses.selectWrapper),
1632
+ onClick: e
1633
+ }, [
1634
+ g.question.isReadOnly ? m("", !0) : (t(), u("div", {
1635
+ key: 0,
1636
+ id: g.question.inputId,
1637
+ disabled: g.question.isInputReadOnly ? !0 : null,
1638
+ tabindex: s.value.inputReadOnly ? void 0 : 0,
1639
+ onKeydown: a,
1640
+ onBlur: c,
1641
+ class: l(g.question.getControlClass()),
1642
+ role: g.question.ariaRole,
1643
+ "aria-required": g.question.ariaRequired,
1644
+ "aria-label": g.question.ariaLabel,
1645
+ "aria-invalid": g.question.ariaInvalid,
1646
+ "aria-describedby": g.question.ariaDescribedBy,
1647
+ "aria-expanded": g.question.ariaExpanded === null ? void 0 : g.question.ariaExpanded === "true",
1648
+ "aria-controls": s.value.listElementId,
1649
+ "aria-activedescendant": s.value.ariaActivedescendant,
1650
+ required: g.question.isRequired ? !0 : null
1651
+ }, [
1652
+ s.value.showHintPrefix ? (t(), u("div", {
1653
+ key: 0,
1654
+ class: l(g.question.cssClasses.hintPrefix)
1655
+ }, [
1656
+ p("span", null, I(s.value.hintStringPrefix), 1)
1657
+ ], 2)) : m("", !0),
1658
+ p("div", {
1659
+ class: l(g.question.cssClasses.controlValue)
1660
+ }, [
1661
+ g.question.showSelectedItemLocText ? (t(), y(P, {
1662
+ key: 0,
1663
+ locString: g.question.selectedItemLocText
1664
+ }, null, 8, ["locString"])) : m("", !0),
1665
+ s.value.showHintString ? (t(), u("div", {
1666
+ key: 1,
1667
+ class: l(g.question.cssClasses.hintSuffix)
1668
+ }, [
1669
+ p("span", un, I(s.value.inputStringRendered), 1),
1670
+ p("span", null, I(s.value.hintStringSuffix), 1)
1671
+ ], 2)) : m("", !0),
1672
+ g.question.showInputFieldComponent ? (t(), y(N(g.question.inputFieldComponentName), {
1673
+ key: 2,
1674
+ item: s.value.getSelectedAction(),
1675
+ question: g.question
1676
+ }, null, 8, ["item", "question"])) : m("", !0),
1677
+ p("input", {
1678
+ type: "text",
1679
+ ref_key: "inputElement",
1680
+ ref: n,
1681
+ class: l(g.question.cssClasses.filterStringInput),
1682
+ disabled: g.question.isInputReadOnly,
1683
+ autocomplete: "off",
1684
+ inputmode: s.value.inputMode,
1685
+ role: s.value.filterStringEnabled ? g.question.ariaRole : void 0,
1686
+ id: g.question.getInputId(),
1687
+ tabindex: s.value.inputReadOnly ? void 0 : -1,
1688
+ readonly: s.value.searchEnabled ? void 0 : !0,
1689
+ "aria-label": g.question.placeholder,
1690
+ "aria-expanded": g.question.ariaExpanded === null ? void 0 : g.question.ariaExpanded === "true",
1691
+ "aria-controls": s.value.listElementId,
1692
+ "aria-activedescendant": s.value.ariaActivedescendant,
1693
+ placeholder: s.value.placeholderRendered,
1694
+ onInput: f,
1695
+ onBlur: c,
1696
+ onFocus: v
1697
+ }, null, 42, dn)
1698
+ ], 2),
1699
+ g.question.allowClear && g.question.cssClasses.cleanButtonIconId ? D((t(), u("div", {
1700
+ key: 1,
1701
+ class: l(g.question.cssClasses.cleanButton),
1702
+ onClick: i
1703
+ }, [
1704
+ h(L, {
1705
+ class: l(g.question.cssClasses.cleanButtonSvg),
1706
+ iconName: g.question.cssClasses.cleanButtonIconId,
1707
+ title: g.question.clearCaption,
1708
+ size: "auto"
1709
+ }, null, 8, ["class", "iconName", "title"])
1710
+ ], 2)), [
1711
+ [H, !g.question.isEmpty()]
1712
+ ]) : m("", !0)
1713
+ ], 42, an)),
1714
+ g.question.isReadOnly ? (t(), u("div", {
1715
+ key: 2,
1716
+ disabled: "",
1717
+ id: g.question.inputId,
1718
+ class: l(g.question.getControlClass())
1719
+ }, [
1720
+ g.question.selectedItemLocText ? (t(), y(P, {
1721
+ key: 0,
1722
+ locString: g.question.selectedItemLocText
1723
+ }, null, 8, ["locString"])) : m("", !0),
1724
+ p("div", null, I(g.question.readOnlyText), 1)
1725
+ ], 10, mn)) : (t(), y(A, {
1726
+ key: 1,
1727
+ model: g.question.dropdownListModel.popupModel
1728
+ }, null, 8, ["model"])),
1729
+ g.question.cssClasses.chevronButtonIconId ? (t(), u("div", {
1730
+ key: 3,
1731
+ class: l(g.question.cssClasses.chevronButton)
1732
+ }, [
1733
+ h(L, {
1734
+ class: l(g.question.cssClasses.chevronButtonSvg),
1735
+ iconName: g.question.cssClasses.chevronButtonIconId,
1736
+ size: "24"
1737
+ }, null, 8, ["class", "iconName"])
1738
+ ], 2)) : m("", !0)
1739
+ ], 2);
1740
+ };
1741
+ }
1742
+ }), pn = /* @__PURE__ */ C({
1743
+ __name: "Tagbox",
1744
+ props: {
1745
+ question: {}
1746
+ },
1747
+ setup(r) {
1748
+ const o = r, n = T(null);
1749
+ return M(o, n), (s, e) => {
1750
+ const i = q("sv-tagbox"), a = q("survey-other-choice");
1751
+ return t(), u("div", {
1752
+ class: l(s.question.renderCssRoot),
1753
+ ref_key: "root",
1754
+ ref: n
1755
+ }, [
1756
+ h(i, { question: s.question }, null, 8, ["question"]),
1757
+ s.question.isOtherSelected ? (t(), y(a, {
1758
+ key: 0,
1759
+ question: s.question
1760
+ }, null, 8, ["question"])) : m("", !0)
1761
+ ], 2);
1762
+ };
1763
+ }
1764
+ }), vn = ["id", "tabindex", "disabled", "role", "aria-required", "aria-label", "aria-invalid", "aria-describedby", "aria-expanded", "aria-controls", "aria-activedescendant", "required"], qn = ["id"], yn = /* @__PURE__ */ C({
1765
+ __name: "Tagbox",
1766
+ props: {
1767
+ question: {}
1768
+ },
1769
+ setup(r) {
1770
+ const o = r, n = R(() => {
1771
+ const d = o.question;
1772
+ return d.dropdownListModel || (d.dropdownListModel = new Ie(d)), o.question.dropdownListModel;
1773
+ }), s = (d) => {
1774
+ var c;
1775
+ (c = n.value) == null || c.onClick(d);
1776
+ }, e = (d) => {
1777
+ var c;
1778
+ (c = n.value) == null || c.onClear(d);
1779
+ }, i = (d) => {
1780
+ var c;
1781
+ (c = n.value) == null || c.keyHandler(d);
1782
+ }, a = (d) => {
1783
+ var c;
1784
+ (c = n.value) == null || c.onBlur(d);
1785
+ };
1786
+ return B(() => n.value), (d, c) => {
1787
+ const v = q("sv-tagbox-item"), f = q("sv-tagbox-filter"), g = q("sv-svg-icon"), k = q("sv-popup");
1788
+ return t(), u("div", {
1789
+ class: l(d.question.cssClasses.selectWrapper),
1790
+ onClick: s
1791
+ }, [
1792
+ d.question.isReadOnly ? m("", !0) : (t(), u("div", {
1793
+ key: 0,
1794
+ id: d.question.inputId,
1795
+ tabindex: n.value.inputReadOnly ? void 0 : 0,
1796
+ disabled: d.question.isInputReadOnly ? !0 : null,
1797
+ onKeydown: i,
1798
+ onBlur: a,
1799
+ class: l(d.question.getControlClass()),
1800
+ role: d.question.ariaRole,
1801
+ "aria-required": d.question.ariaRequired,
1802
+ "aria-label": d.question.ariaLabel,
1803
+ "aria-invalid": d.question.ariaInvalid,
1804
+ "aria-describedby": d.question.ariaDescribedBy,
1805
+ "aria-expanded": d.question.ariaExpanded === null ? void 0 : d.question.ariaExpanded === "true",
1806
+ "aria-controls": n.value.listElementId,
1807
+ "aria-activedescendant": n.value.ariaActivedescendant,
1808
+ required: d.question.isRequired ? !0 : null
1809
+ }, [
1810
+ p("div", {
1811
+ class: l(d.question.cssClasses.controlValue)
1812
+ }, [
1813
+ (t(!0), u(w, null, S(d.question.selectedChoices, (P, L) => (t(), y(v, {
1814
+ item: P,
1815
+ question: d.question,
1816
+ key: "item" + L
1817
+ }, null, 8, ["item", "question"]))), 128)),
1818
+ h(f, {
1819
+ model: n.value,
1820
+ question: d.question
1821
+ }, null, 8, ["model", "question"])
1822
+ ], 2),
1823
+ d.question.allowClear && d.question.cssClasses.cleanButtonIconId ? D((t(), u("div", {
1824
+ key: 0,
1825
+ class: l(d.question.cssClasses.cleanButton),
1826
+ onClick: e
1827
+ }, [
1828
+ h(g, {
1829
+ class: l(d.question.cssClasses.cleanButtonSvg),
1830
+ iconName: d.question.cssClasses.cleanButtonIconId,
1831
+ title: d.question.clearCaption,
1832
+ size: "auto"
1833
+ }, null, 8, ["class", "iconName", "title"])
1834
+ ], 2)), [
1835
+ [H, !d.question.isEmpty()]
1836
+ ]) : m("", !0)
1837
+ ], 42, vn)),
1838
+ d.question.isReadOnly ? (t(), u("div", {
1839
+ key: 2,
1840
+ disabled: "",
1841
+ id: d.question.inputId,
1842
+ class: l(d.question.getControlClass())
1843
+ }, [
1844
+ p("div", null, I(d.question.readOnlyText), 1)
1845
+ ], 10, qn)) : (t(), y(k, {
1846
+ key: 1,
1847
+ model: n.value.popupModel
1848
+ }, null, 8, ["model"])),
1849
+ d.question.cssClasses.chevronButtonIconId ? (t(), u("div", {
1850
+ key: 3,
1851
+ class: l(d.question.cssClasses.chevronButton)
1852
+ }, [
1853
+ h(g, {
1854
+ class: l(d.question.cssClasses.chevronButtonSvg),
1855
+ iconName: d.question.cssClasses.chevronButtonIconId,
1856
+ size: "24"
1857
+ }, null, 8, ["class", "iconName"])
1858
+ ], 2)) : m("", !0)
1859
+ ], 2);
1860
+ };
1861
+ }
1862
+ }), gn = { style: { visibility: "hidden" } }, Cn = ["placeholder", "disabled", "inputmode", "role", "aria-label", "aria-expanded", "aria-controls", "aria-activedescendant", "id", "readonly", "size"], hn = /* @__PURE__ */ C({
1863
+ __name: "TagboxFilter",
1864
+ props: {
1865
+ question: {},
1866
+ model: {}
1867
+ },
1868
+ setup(r) {
1869
+ const o = r, n = (a) => {
1870
+ const d = o.model;
1871
+ d.inputStringRendered = a.target.value;
1872
+ }, s = (a) => {
1873
+ o.model.inputKeyHandler(a);
1874
+ }, e = (a) => {
1875
+ o.model.onBlur(a);
1876
+ }, i = (a) => {
1877
+ o.model.onFocus(a);
1878
+ };
1879
+ return B(() => o.model), (a, d) => {
1880
+ const c = q("survey-string");
1881
+ return t(), u("div", {
1882
+ class: l(a.question.cssClasses.hint)
1883
+ }, [
1884
+ a.model.showHintPrefix ? (t(), u("div", {
1885
+ key: 0,
1886
+ class: l(a.question.cssClasses.hintPrefix)
1887
+ }, [
1888
+ p("span", null, I(a.model.hintStringPrefix), 1)
1889
+ ], 2)) : m("", !0),
1890
+ p("div", {
1891
+ class: l(a.question.cssClasses.hintSuffixWrapper)
1892
+ }, [
1893
+ a.question.showSelectedItemLocText ? (t(), y(c, {
1894
+ key: 0,
1895
+ locString: a.question.selectedItemLocText
1896
+ }, null, 8, ["locString"])) : m("", !0),
1897
+ a.model.showHintString ? (t(), u("div", {
1898
+ key: 1,
1899
+ class: l(a.question.cssClasses.hintSuffix)
1900
+ }, [
1901
+ p("span", gn, I(a.model.inputStringRendered), 1),
1902
+ p("span", null, I(a.model.hintStringSuffix), 1)
1903
+ ], 2)) : m("", !0),
1904
+ D(p("input", {
1905
+ type: "text",
1906
+ autocomplete: "off",
1907
+ "onUpdate:modelValue": d[0] || (d[0] = (v) => a.model.inputStringRendered = v),
1908
+ class: l(a.question.cssClasses.filterStringInput),
1909
+ placeholder: a.model.filterStringPlaceholder,
1910
+ disabled: a.question.isInputReadOnly,
1911
+ inputmode: a.model.inputMode,
1912
+ role: a.model.filterStringEnabled ? a.question.ariaRole : void 0,
1913
+ "aria-label": a.question.placeholder,
1914
+ "aria-expanded": a.question.ariaExpanded === null ? void 0 : a.question.ariaExpanded === "true",
1915
+ "aria-controls": a.model.listElementId,
1916
+ "aria-activedescendant": a.model.ariaActivedescendant,
1917
+ id: a.question.getInputId(),
1918
+ readonly: a.model.searchEnabled ? void 0 : !0,
1919
+ size: a.model.inputStringRendered ? void 0 : 1,
1920
+ onChange: n,
1921
+ onKeydown: s,
1922
+ onBlur: e,
1923
+ onFocus: i
1924
+ }, null, 42, Cn), [
1925
+ [pe, a.model.inputStringRendered]
1926
+ ])
1927
+ ], 2)
1928
+ ], 2);
1929
+ };
1930
+ }
1931
+ }), bn = { class: "sv-tagbox__item-text" }, kn = /* @__PURE__ */ C({
1932
+ __name: "TagboxItem",
1933
+ props: {
1934
+ question: {},
1935
+ item: {}
1936
+ },
1937
+ setup(r) {
1938
+ const o = r, n = (s) => {
1939
+ o.question.dropdownListModel.deselectItem(o.item.value), s.stopPropagation();
1940
+ };
1941
+ return B(() => o.item), (s, e) => {
1942
+ const i = q("survey-string"), a = q("sv-svg-icon");
1943
+ return t(), u("div", {
1944
+ class: "sv-tagbox__item",
1945
+ key: s.item.key
1946
+ }, [
1947
+ p("div", bn, [
1948
+ h(i, {
1949
+ locString: s.item.locText
1950
+ }, null, 8, ["locString"])
1951
+ ]),
1952
+ p("div", {
1953
+ class: l(s.question.cssClasses.cleanItemButton),
1954
+ onClick: n
1955
+ }, [
1956
+ h(a, {
1957
+ class: l(s.question.cssClasses.cleanItemButtonSvg),
1958
+ iconName: s.question.cssClasses.cleanItemButtonIconId,
1959
+ size: "auto"
1960
+ }, null, 8, ["class", "iconName"])
1961
+ ], 2)
1962
+ ]);
1963
+ };
1964
+ }
1965
+ }), fn = /* @__PURE__ */ C({
1966
+ __name: "Ranking",
1967
+ props: {
1968
+ question: {}
1969
+ },
1970
+ setup(r) {
1971
+ const o = r, n = T(null);
1972
+ M(o, n);
1973
+ const s = (e) => o.question.getNumberByIndex(e);
1974
+ return (e, i) => {
1975
+ const a = q("survey-ranking-item");
1976
+ return t(), u("div", {
1977
+ class: l(e.question.rootClass),
1978
+ ref_key: "root",
1979
+ ref: n
1980
+ }, [
1981
+ e.question.selectToRankEnabled ? m("", !0) : (t(!0), u(w, { key: 0 }, S(e.question.rankingChoices, (d, c) => (t(), y(a, {
1982
+ key: d.value + "-" + c + "-item",
1983
+ class: l(e.question.getItemClass(d)),
1984
+ text: d.locText,
1985
+ index: c,
1986
+ indexText: s(c),
1987
+ cssClasses: e.question.cssClasses,
1988
+ question: e.question,
1989
+ item: d
1990
+ }, null, 8, ["class", "text", "index", "indexText", "cssClasses", "question", "item"]))), 128)),
1991
+ e.question.selectToRankEnabled ? (t(), u("div", {
1992
+ key: 1,
1993
+ class: l(e.question.getContainerClasses("from")),
1994
+ "data-ranking": "from-container"
1995
+ }, [
1996
+ (t(!0), u(w, null, S(e.question.unRankingChoices, (d, c) => (t(), y(a, {
1997
+ key: d.value + "-" + c + "-item",
1998
+ class: l(e.question.getItemClass(d)),
1999
+ text: d.locText,
2000
+ index: c,
2001
+ indexText: s(c),
2002
+ cssClasses: e.question.cssClasses,
2003
+ question: e.question,
2004
+ item: d,
2005
+ unrankedItem: !0
2006
+ }, null, 8, ["class", "text", "index", "indexText", "cssClasses", "question", "item"]))), 128)),
2007
+ e.question.unRankingChoices.length === 0 ? (t(), u("div", {
2008
+ key: 0,
2009
+ class: l(e.question.cssClasses.containerPlaceholder)
2010
+ }, I(e.question.selectToRankEmptyRankedAreaText), 3)) : m("", !0)
2011
+ ], 2)) : m("", !0),
2012
+ e.question.selectToRankEnabled ? (t(), u("div", {
2013
+ key: 2,
2014
+ class: l(e.question.cssClasses.containersDivider)
2015
+ }, null, 2)) : m("", !0),
2016
+ e.question.selectToRankEnabled ? (t(), u("div", {
2017
+ key: 3,
2018
+ class: l(e.question.getContainerClasses("to")),
2019
+ "data-ranking": "to-container"
2020
+ }, [
2021
+ (t(!0), u(w, null, S(e.question.rankingChoices, (d, c) => (t(), y(a, {
2022
+ key: d.value + "-" + c + "-item",
2023
+ class: l(e.question.getItemClass(d)),
2024
+ text: d.locText,
2025
+ index: c,
2026
+ indexText: s(c),
2027
+ cssClasses: e.question.cssClasses,
2028
+ question: e.question,
2029
+ item: d
2030
+ }, null, 8, ["class", "text", "index", "indexText", "cssClasses", "question", "item"]))), 128)),
2031
+ e.question.rankingChoices.length === 0 ? (t(), u("div", {
2032
+ key: 0,
2033
+ class: l(e.question.cssClasses.containerPlaceholder)
2034
+ }, I(e.question.selectToRankEmptyUnrankedAreaText), 3)) : m("", !0)
2035
+ ], 2)) : m("", !0)
2036
+ ], 2);
2037
+ };
2038
+ }
2039
+ }), In = ["tabindex", "data-sv-drop-target-ranking-item"], wn = {
2040
+ tabindex: "-1",
2041
+ style: { outline: "none" }
2042
+ }, Tn = /* @__PURE__ */ p("path", { d: "M6 2C6 0.9 6.9 0 8 0C9.1 0 10 0.9 10 2C10 3.1 9.1 4 8 4C6.9 4 6 3.1 6 2ZM2 0C0.9 0 0 0.9 0 2C0 3.1 0.9 4 2 4C3.1 4 4 3.1 4 2C4 0.9 3.1 0 2 0ZM8 6C6.9 6 6 6.9 6 8C6 9.1 6.9 10 8 10C9.1 10 10 9.1 10 8C10 6.9 9.1 6 8 6ZM2 6C0.9 6 0 6.9 0 8C0 9.1 0.9 10 2 10C3.1 10 4 9.1 4 8C4 6.9 3.1 6 2 6ZM8 12C6.9 12 6 12.9 6 14C6 15.1 6.9 16 8 16C9.1 16 10 15.1 10 14C10 12.9 9.1 12 8 12ZM2 12C0.9 12 0 12.9 0 14C0 15.1 0.9 16 2 16C3.1 16 4 15.1 4 14C4 12.9 3.1 12 2 12Z" }, null, -1), Sn = [
2043
+ Tn
2044
+ ], Rn = /* @__PURE__ */ p("path", { d: "M10 5L5 0L0 5H4V9H6V5H10Z" }, null, -1), $n = /* @__PURE__ */ p("path", { d: "M6 19V15H4V19H0L5 24L10 19H6Z" }, null, -1), Bn = [
2045
+ Rn,
2046
+ $n
2047
+ ], Ln = /* @__PURE__ */ C({
2048
+ __name: "RankingItem",
2049
+ props: {
2050
+ index: {},
2051
+ indexText: {},
2052
+ text: {},
2053
+ handleKeydown: { type: Function },
2054
+ cssClasses: {},
2055
+ question: {},
2056
+ item: {},
2057
+ unrankedItem: { type: Boolean }
2058
+ },
2059
+ setup(r) {
2060
+ const o = r;
2061
+ return B(() => o.item), (n, s) => {
2062
+ const e = q("survey-string");
2063
+ return t(), u("div", {
2064
+ tabindex: n.question.getItemTabIndex(n.item),
2065
+ "data-sv-drop-target-ranking-item": n.index,
2066
+ class: l(n.question.getItemClass(n.item)),
2067
+ onKeydown: s[0] || (s[0] = (i) => {
2068
+ n.question.handleKeydown.call(n.question, i, n.item);
2069
+ }),
2070
+ onPointerdown: s[1] || (s[1] = (i) => {
2071
+ n.question.handlePointerDown.call(
2072
+ n.question,
2073
+ i,
2074
+ n.item,
2075
+ i.currentTarget
2076
+ );
2077
+ })
2078
+ }, [
2079
+ p("div", wn, [
2080
+ p("div", {
2081
+ class: l(n.cssClasses.itemGhostNode)
2082
+ }, null, 2),
2083
+ p("div", {
2084
+ class: l(n.cssClasses.itemContent)
2085
+ }, [
2086
+ p("div", {
2087
+ class: l(n.cssClasses.itemIconContainer)
2088
+ }, [
2089
+ (t(), u("svg", {
2090
+ width: "10",
2091
+ height: "16",
2092
+ viewBox: "0 0 10 16",
2093
+ class: l(n.question.getIconHoverCss()),
2094
+ xmlns: "http://www.w3.org/2000/svg"
2095
+ }, Sn, 2)),
2096
+ (t(), u("svg", {
2097
+ width: "10",
2098
+ height: "24",
2099
+ viewBox: "0 0 10 24",
2100
+ class: l(n.question.getIconFocusCss()),
2101
+ xmlns: "http://www.w3.org/2000/svg"
2102
+ }, Bn, 2))
2103
+ ], 2),
2104
+ p("div", {
2105
+ class: l(n.question.getItemIndexClasses(n.item))
2106
+ }, I(n.unrankedItem ? "" : n.indexText), 3),
2107
+ p("div", {
2108
+ class: l(n.cssClasses.controlLabel)
2109
+ }, [
2110
+ h(e, { locString: n.text }, null, 8, ["locString"])
2111
+ ], 2)
2112
+ ], 2)
2113
+ ])
2114
+ ], 42, In);
2115
+ };
2116
+ }
2117
+ }), Dn = { role: "radiogroup" }, Pn = /* @__PURE__ */ p("legend", {
2118
+ role: "presentation",
2119
+ class: "sv-hidden"
2120
+ }, null, -1), Mn = /* @__PURE__ */ C({
2121
+ __name: "Rating",
2122
+ props: {
2123
+ question: {}
2124
+ },
2125
+ setup(r) {
2126
+ const o = r, n = T(null);
2127
+ M(o, n);
2128
+ const s = (e) => o.question.getInputId(e);
2129
+ return (e, i) => {
2130
+ const a = q("survey-string");
2131
+ return t(), u("div", {
2132
+ class: l(e.question.ratingRootCss),
2133
+ ref_key: "root",
2134
+ ref: n
2135
+ }, [
2136
+ p("fieldset", Dn, [
2137
+ Pn,
2138
+ e.question.hasMinLabel ? (t(), u("span", {
2139
+ key: 0,
2140
+ class: l(e.question.cssClasses.minText)
2141
+ }, [
2142
+ h(a, {
2143
+ locString: e.question.locMinRateDescription
2144
+ }, null, 8, ["locString"])
2145
+ ], 2)) : m("", !0),
2146
+ (t(!0), u(w, null, S(e.question.renderedRateItems, (d, c) => (t(), y(N(e.question.itemComponentName), {
2147
+ key: s(c),
2148
+ item: d,
2149
+ index: c,
2150
+ question: e.question
2151
+ }, null, 8, ["item", "index", "question"]))), 128)),
2152
+ e.question.hasMaxLabel ? (t(), u("span", {
2153
+ key: 1,
2154
+ class: l(e.question.cssClasses.maxText)
2155
+ }, [
2156
+ h(a, {
2157
+ locString: e.question.locMaxRateDescription
2158
+ }, null, 8, ["locString"])
2159
+ ], 2)) : m("", !0)
2160
+ ])
2161
+ ], 2);
2162
+ };
2163
+ }
2164
+ }), Nn = ["name", "id", "value", "disabled", "aria-required", "aria-label", "aria-invalid", "aria-describedby"], Hn = /* @__PURE__ */ C({
2165
+ __name: "RatingItem",
2166
+ props: {
2167
+ question: {},
2168
+ item: {},
2169
+ index: {}
2170
+ },
2171
+ setup(r) {
2172
+ const o = r;
2173
+ return B(() => o.item), (n, s) => {
2174
+ const e = q("survey-string");
2175
+ return t(), u("label", {
2176
+ key: n.item.value,
2177
+ onMousedown: s[1] || (s[1] = (i) => n.question.onMouseDown()),
2178
+ class: l(n.question.getItemClassByText(n.item.itemValue, n.item.text))
2179
+ }, [
2180
+ p("input", {
2181
+ type: "radio",
2182
+ class: "sv-visuallyhidden",
2183
+ name: n.question.name,
2184
+ id: n.question.getInputId(n.index),
2185
+ value: n.item.value,
2186
+ disabled: n.question.isInputReadOnly,
2187
+ onClick: s[0] || (s[0] = (i) => n.question.setValueFromClick(i.target.value)),
2188
+ "aria-required": n.question.ariaRequired,
2189
+ "aria-label": n.question.ariaLabel,
2190
+ "aria-invalid": n.question.ariaInvalid,
2191
+ "aria-describedby": n.question.ariaDescribedBy
2192
+ }, null, 8, Nn),
2193
+ p("span", {
2194
+ class: l(n.question.cssClasses.itemText)
2195
+ }, [
2196
+ h(e, {
2197
+ locString: n.item.locText
2198
+ }, null, 8, ["locString"])
2199
+ ], 2)
2200
+ ], 34);
2201
+ };
2202
+ }
2203
+ }), En = ["name", "id", "value", "disabled", "aria-required", "aria-label", "aria-invalid", "aria-describedby"], An = /* @__PURE__ */ C({
2204
+ __name: "RatingItemSmiley",
2205
+ props: {
2206
+ question: {},
2207
+ item: {},
2208
+ index: {}
2209
+ },
2210
+ setup(r) {
2211
+ const o = r;
2212
+ return B(() => o.item), (n, s) => {
2213
+ const e = q("sv-svg-icon");
2214
+ return t(), u("label", {
2215
+ key: n.item.value,
2216
+ onMousedown: s[1] || (s[1] = (i) => n.question.onMouseDown()),
2217
+ style: $(n.question.getItemStyle(n.item.itemValue, n.item.highlight)),
2218
+ class: l(n.question.getItemClass(n.item.itemValue, n.item.highlight)),
2219
+ onMouseover: s[2] || (s[2] = (i) => n.question.onItemMouseIn(n.item)),
2220
+ onMouseleave: s[3] || (s[3] = (i) => n.question.onItemMouseOut(n.item))
2221
+ }, [
2222
+ p("input", {
2223
+ type: "radio",
2224
+ class: "sv-visuallyhidden",
2225
+ name: n.question.name,
2226
+ id: n.question.getInputId(n.index),
2227
+ value: n.item.value,
2228
+ disabled: n.question.isInputReadOnly,
2229
+ onClick: s[0] || (s[0] = (i) => n.question.setValueFromClick(i.target.value)),
2230
+ "aria-required": n.question.ariaRequired,
2231
+ "aria-label": n.question.ariaLabel,
2232
+ "aria-invalid": n.question.ariaInvalid,
2233
+ "aria-describedby": n.question.ariaDescribedBy
2234
+ }, null, 8, En),
2235
+ h(e, {
2236
+ iconName: n.question.getItemSmileyIconName(n.item.itemValue),
2237
+ size: "auto",
2238
+ title: n.item.text
2239
+ }, null, 8, ["iconName", "title"])
2240
+ ], 38);
2241
+ };
2242
+ }
2243
+ }), On = ["name", "id", "value", "disabled", "aria-required", "aria-label", "aria-invalid", "aria-describedby"], Vn = /* @__PURE__ */ C({
2244
+ __name: "RatingItemStar",
2245
+ props: {
2246
+ question: {},
2247
+ item: {},
2248
+ index: {}
2249
+ },
2250
+ setup(r) {
2251
+ const o = r;
2252
+ return B(() => o.item), (n, s) => {
2253
+ const e = q("sv-svg-icon");
2254
+ return t(), u("label", {
2255
+ key: n.item.value,
2256
+ onMousedown: s[1] || (s[1] = (i) => n.question.onMouseDown()),
2257
+ class: l(n.question.getItemClass(n.item.itemValue)),
2258
+ onMouseover: s[2] || (s[2] = (i) => n.question.onItemMouseIn(n.item)),
2259
+ onMouseleave: s[3] || (s[3] = (i) => n.question.onItemMouseOut(n.item))
2260
+ }, [
2261
+ p("input", {
2262
+ type: "radio",
2263
+ class: "sv-visuallyhidden",
2264
+ name: n.question.name,
2265
+ id: n.question.getInputId(n.index),
2266
+ value: n.item.value,
2267
+ disabled: n.question.isInputReadOnly,
2268
+ onClick: s[0] || (s[0] = (i) => n.question.setValueFromClick((i == null ? void 0 : i.target).value)),
2269
+ "aria-required": n.question.ariaRequired,
2270
+ "aria-label": n.question.ariaLabel,
2271
+ "aria-invalid": n.question.ariaInvalid,
2272
+ "aria-describedby": n.question.ariaDescribedBy
2273
+ }, null, 8, On),
2274
+ h(e, {
2275
+ class: l("sv-star"),
2276
+ iconName: n.question.itemStarIcon,
2277
+ size: "auto",
2278
+ title: n.item.text
2279
+ }, null, 8, ["iconName", "title"]),
2280
+ h(e, {
2281
+ class: l("sv-star-2"),
2282
+ iconName: n.question.itemStarIconAlt,
2283
+ size: "auto",
2284
+ title: n.item.text
2285
+ }, null, 8, ["iconName", "title"])
2286
+ ], 34);
2287
+ };
2288
+ }
2289
+ });
2290
+ G.Instance.registerRenderer(
2291
+ "rating",
2292
+ "dropdown",
2293
+ "sv-rating-dropdown"
2294
+ );
2295
+ const Fn = /* @__PURE__ */ C({
2296
+ __name: "RatingDropdown",
2297
+ props: {
2298
+ question: {}
2299
+ },
2300
+ setup(r) {
2301
+ const o = r, n = T(null);
2302
+ return M(o, n), (s, e) => {
2303
+ const i = q("sv-dropdown");
2304
+ return t(), u("div", {
2305
+ class: l(s.question.cssClasses.rootDropdown),
2306
+ ref_key: "root",
2307
+ ref: n
2308
+ }, [
2309
+ h(i, { question: s.question }, null, 8, ["question"])
2310
+ ], 2);
2311
+ };
2312
+ }
2313
+ }), Wn = ["name", "value", "id", ".indeterminate", "disabled", "aria-required", "aria-label", "aria-invalid", "aria-describedby"], zn = /* @__PURE__ */ C({
2314
+ __name: "BooleanSwitch",
2315
+ props: {
2316
+ question: {}
2317
+ },
2318
+ setup(r) {
2319
+ const o = r, n = T(null);
2320
+ M(o, n);
2321
+ const s = (i, a) => {
2322
+ o.question.onLabelClick(i, a);
2323
+ }, e = (i) => {
2324
+ o.question.onSwitchClickModel(i);
2325
+ };
2326
+ return (i, a) => {
2327
+ var c;
2328
+ const d = q("survey-string");
2329
+ return t(), u("div", {
2330
+ class: l(i.question.cssClasses.root),
2331
+ onKeydown: a[4] || (a[4] = (v) => i.question.onKeyDownCore(v))
2332
+ }, [
2333
+ p("label", {
2334
+ class: l(i.question.getItemCss())
2335
+ }, [
2336
+ D(p("input", {
2337
+ type: "checkbox",
2338
+ name: i.question.name,
2339
+ value: (c = i.question.booleanValue) != null ? c : "",
2340
+ "onUpdate:modelValue": a[0] || (a[0] = (v) => i.question.booleanValue = v),
2341
+ class: l(i.question.cssClasses.control),
2342
+ id: i.question.inputId,
2343
+ ".indeterminate": i.question.isIndeterminate,
2344
+ disabled: i.question.isInputReadOnly,
2345
+ "aria-required": i.question.ariaRequired,
2346
+ "aria-label": i.question.ariaLabel,
2347
+ "aria-invalid": i.question.ariaInvalid,
2348
+ "aria-describedby": i.question.ariaDescribedBy
2349
+ }, null, 10, Wn), [
2350
+ [z, i.question.booleanValue]
2351
+ ]),
2352
+ p("div", {
2353
+ class: l(i.question.cssClasses.sliderGhost),
2354
+ onClick: a[1] || (a[1] = (v) => s(v, !1))
2355
+ }, [
2356
+ p("span", {
2357
+ class: l(i.question.getLabelCss(!1))
2358
+ }, [
2359
+ h(d, {
2360
+ locString: i.question.locLabelFalse
2361
+ }, null, 8, ["locString"])
2362
+ ], 2)
2363
+ ], 2),
2364
+ p("div", {
2365
+ class: l(i.question.cssClasses.switch),
2366
+ onClick: a[2] || (a[2] = (v) => e(v))
2367
+ }, [
2368
+ p("span", {
2369
+ class: l(i.question.cssClasses.slider)
2370
+ }, [
2371
+ i.question.cssClasses.sliderText && i.question.isDeterminated ? (t(), u("span", {
2372
+ key: 0,
2373
+ class: l(i.question.cssClasses.sliderText)
2374
+ }, [
2375
+ h(d, {
2376
+ locString: i.question.getCheckedLabel()
2377
+ }, null, 8, ["locString"])
2378
+ ], 2)) : m("", !0)
2379
+ ], 2)
2380
+ ], 2),
2381
+ p("div", {
2382
+ class: l(i.question.cssClasses.sliderGhost),
2383
+ onClick: a[3] || (a[3] = (v) => s(v, !0))
2384
+ }, [
2385
+ p("span", {
2386
+ class: l(i.question.getLabelCss(!0))
2387
+ }, [
2388
+ h(d, {
2389
+ locString: i.question.locLabelTrue
2390
+ }, null, 8, ["locString"])
2391
+ ], 2)
2392
+ ], 2)
2393
+ ], 2)
2394
+ ], 34);
2395
+ };
2396
+ }
2397
+ });
2398
+ G.Instance.registerRenderer(
2399
+ "boolean",
2400
+ "radio",
2401
+ "sv-boolean-radio"
2402
+ );
2403
+ const Un = /* @__PURE__ */ C({
2404
+ __name: "BooleanRadio",
2405
+ props: {
2406
+ question: {}
2407
+ },
2408
+ setup(r) {
2409
+ const o = r, n = T(null);
2410
+ return M(o, n), (s, e) => {
2411
+ const i = q("sv-boolean-radio-item");
2412
+ return t(), u("div", {
2413
+ class: l(s.question.cssClasses.rootRadio),
2414
+ ref_key: "root",
2415
+ ref: n
2416
+ }, [
2417
+ p("fieldset", {
2418
+ role: "presentation",
2419
+ class: l(s.question.cssClasses.radioFieldset)
2420
+ }, [
2421
+ (t(), y(i, {
2422
+ key: !1,
2423
+ question: s.question,
2424
+ locText: s.question.locLabelFalse,
2425
+ value: !1
2426
+ }, null, 8, ["question", "locText"])),
2427
+ (t(), y(i, {
2428
+ key: !0,
2429
+ question: s.question,
2430
+ locText: s.question.locLabelTrue,
2431
+ value: !0
2432
+ }, null, 8, ["question", "locText"]))
2433
+ ], 2)
2434
+ ], 2);
2435
+ };
2436
+ }
2437
+ }), Kn = ["name", "value", "checked", "aria-describedby", "disabled"], jn = ["xlink:href"], Qn = /* @__PURE__ */ C({
2438
+ __name: "BooleanRadioItem",
2439
+ props: {
2440
+ question: {},
2441
+ locText: {},
2442
+ value: { type: Boolean }
2443
+ },
2444
+ setup(r) {
2445
+ const o = r, n = (s) => {
2446
+ const e = o.question;
2447
+ e.booleanValue = s.target.value == "true";
2448
+ };
2449
+ return (s, e) => {
2450
+ const i = q("survey-string");
2451
+ return t(), u("div", {
2452
+ role: "presentation",
2453
+ class: l(s.question.getRadioItemClass(s.question.cssClasses, s.value))
2454
+ }, [
2455
+ p("label", {
2456
+ class: l(s.question.cssClasses.radioLabel)
2457
+ }, [
2458
+ p("input", {
2459
+ type: "radio",
2460
+ name: s.question.name,
2461
+ value: s.value,
2462
+ checked: s.value === s.question.booleanValueRendered,
2463
+ "aria-describedby": s.question.ariaDescribedBy,
2464
+ disabled: s.question.isInputReadOnly,
2465
+ class: l(s.question.cssClasses.itemRadioControl),
2466
+ onChange: n
2467
+ }, null, 42, Kn),
2468
+ s.question.cssClasses.materialRadioDecorator ? (t(), u("span", {
2469
+ key: 0,
2470
+ class: l(s.question.cssClasses.materialRadioDecorator)
2471
+ }, [
2472
+ s.question.itemSvgIcon ? (t(), u("svg", {
2473
+ key: 0,
2474
+ class: l(s.question.cssClasses.itemRadioDecorator)
2475
+ }, [
2476
+ p("use", {
2477
+ "xlink:href": s.question.itemSvgIcon
2478
+ }, null, 8, jn)
2479
+ ], 2)) : m("", !0)
2480
+ ], 2)) : m("", !0),
2481
+ p("span", {
2482
+ class: l(s.question.cssClasses.radioControlLabel)
2483
+ }, [
2484
+ h(i, { locString: s.locText }, null, 8, ["locString"])
2485
+ ], 2)
2486
+ ], 2)
2487
+ ], 2);
2488
+ };
2489
+ }
2490
+ }), Zn = ["name", "value", "id", ".indeterminate", "disabled", "aria-required", "aria-label", "aria-invalid", "aria-describedby"], Gn = ["xlink:href"], Xn = /* @__PURE__ */ p("span", { class: "check" }, null, -1), Jn = ["id"];
2491
+ G.Instance.registerRenderer(
2492
+ "boolean",
2493
+ "checkbox",
2494
+ "sv-boolean-checkbox"
2495
+ );
2496
+ const Yn = /* @__PURE__ */ C({
2497
+ __name: "BooleanCheckbox",
2498
+ props: {
2499
+ question: {},
2500
+ css: {}
2501
+ },
2502
+ setup(r) {
2503
+ const o = r, n = T(null);
2504
+ return M(o, n), (s, e) => {
2505
+ var c;
2506
+ const i = q("survey-element-title-content"), a = q("sv-title-actions"), d = q("survey-string");
2507
+ return t(), u("div", {
2508
+ class: l(s.question.cssClasses.rootCheckbox),
2509
+ ref_key: "root",
2510
+ ref: n
2511
+ }, [
2512
+ p("div", {
2513
+ class: l(s.question.getCheckboxItemCss())
2514
+ }, [
2515
+ p("label", {
2516
+ class: l(s.question.cssClasses.checkboxLabel)
2517
+ }, [
2518
+ D(p("input", {
2519
+ type: "checkbox",
2520
+ name: s.question.name,
2521
+ value: (c = s.question.booleanValue) != null ? c : "",
2522
+ "onUpdate:modelValue": e[0] || (e[0] = (v) => s.question.booleanValue = v),
2523
+ class: l(s.question.cssClasses.controlCheckbox),
2524
+ id: s.question.inputId,
2525
+ ".indeterminate": s.question.isIndeterminate,
2526
+ disabled: s.question.isInputReadOnly,
2527
+ "aria-required": s.question.ariaRequired,
2528
+ "aria-label": s.question.ariaLabel,
2529
+ "aria-invalid": s.question.ariaInvalid,
2530
+ "aria-describedby": s.question.ariaDescribedBy
2531
+ }, null, 10, Zn), [
2532
+ [z, s.question.booleanValue]
2533
+ ]),
2534
+ p("span", {
2535
+ class: l(s.question.cssClasses.checkboxMaterialDecorator)
2536
+ }, [
2537
+ s.question.svgIcon ? (t(), u("svg", {
2538
+ key: 0,
2539
+ class: l(s.question.cssClasses.checkboxItemDecorator)
2540
+ }, [
2541
+ p("use", {
2542
+ "xlink:href": s.question.svgIcon
2543
+ }, null, 8, Gn)
2544
+ ], 2)) : m("", !0),
2545
+ Xn
2546
+ ], 2),
2547
+ s.question.isLabelRendered ? (t(), u("span", {
2548
+ key: 0,
2549
+ id: s.question.labelRenderedAriaID,
2550
+ class: l(s.question.cssClasses.checkboxControlLabel)
2551
+ }, [
2552
+ s.question.hasTitleActions ? m("", !0) : (t(), y(i, {
2553
+ key: 0,
2554
+ element: s.question,
2555
+ css: s.css
2556
+ }, null, 8, ["element", "css"])),
2557
+ s.question.hasTitleActions ? (t(), y(a, {
2558
+ key: 1,
2559
+ element: s.question,
2560
+ css: s.css
2561
+ }, null, 8, ["element", "css"])) : m("", !0)
2562
+ ], 10, Jn)) : m("", !0)
2563
+ ], 2),
2564
+ s.question.canRenderLabelDescription ? (t(), u("div", {
2565
+ key: 0,
2566
+ class: l(s.question.cssDescription)
2567
+ }, [
2568
+ h(d, {
2569
+ locString: s.question.locDescription
2570
+ }, null, 8, ["locString"])
2571
+ ], 2)) : m("", !0)
2572
+ ], 2)
2573
+ ], 2);
2574
+ };
2575
+ }
2576
+ }), _n = /* @__PURE__ */ C({
2577
+ __name: "Multipletext",
2578
+ props: {
2579
+ question: {}
2580
+ },
2581
+ setup(r) {
2582
+ const o = r, n = T(null);
2583
+ return M(o, n), (s, e) => {
2584
+ const i = q("survey-multipletext-item");
2585
+ return t(), u("table", {
2586
+ class: l(s.question.cssClasses.root),
2587
+ ref_key: "root",
2588
+ ref: n
2589
+ }, [
2590
+ p("tbody", null, [
2591
+ (t(!0), u(w, null, S(s.question.getRows(), (a, d) => (t(), u("tr", {
2592
+ key: s.question.inputId + "rowkey" + d,
2593
+ class: l(s.question.cssClasses.row)
2594
+ }, [
2595
+ (t(!0), u(w, null, S(a, (c) => (t(), u("td", {
2596
+ key: "item" + c.editor.id,
2597
+ class: l(s.question.cssClasses.cell)
2598
+ }, [
2599
+ h(i, {
2600
+ question: s.question,
2601
+ item: c
2602
+ }, null, 8, ["question", "item"])
2603
+ ], 2))), 128))
2604
+ ], 2))), 128))
2605
+ ])
2606
+ ], 2);
2607
+ };
2608
+ }
2609
+ }), xn = /* @__PURE__ */ C({
2610
+ __name: "MultipletextItem",
2611
+ props: {
2612
+ question: {},
2613
+ item: {}
2614
+ },
2615
+ setup(r) {
2616
+ const o = r, n = (s) => ee(s);
2617
+ return B(() => o.item.editor), (s, e) => {
2618
+ const i = q("survey-string"), a = q("survey-errors");
2619
+ return t(), u("label", {
2620
+ class: l(s.question.getItemLabelCss(s.item))
2621
+ }, [
2622
+ p("span", {
2623
+ class: l(s.question.getItemTitleCss())
2624
+ }, [
2625
+ s.item.editor.isRequireTextBeforeTitle || s.item.editor.isRequireTextOnStart ? (t(), u("span", {
2626
+ key: 0,
2627
+ class: l(s.question.cssClasses.requiredText)
2628
+ }, I(s.item.editor.requiredText), 3)) : m("", !0),
2629
+ h(i, {
2630
+ locString: s.item.locTitle
2631
+ }, null, 8, ["locString"]),
2632
+ s.item.editor.isRequireTextAfterTitle ? (t(), u("span", {
2633
+ key: 1,
2634
+ class: l(s.question.cssClasses.requiredText)
2635
+ }, I(s.item.editor.requiredText), 3)) : m("", !0)
2636
+ ], 2),
2637
+ (t(), u("div", {
2638
+ key: s.item.editor.id,
2639
+ class: l(s.question.getItemCss())
2640
+ }, [
2641
+ s.item.editor.showErrorOnTop ? (t(), y(a, {
2642
+ key: 0,
2643
+ element: s.item.editor,
2644
+ location: "top"
2645
+ }, null, 8, ["element"])) : m("", !0),
2646
+ (t(), y(N(n(s.item.editor)), {
2647
+ question: s.item.editor
2648
+ }, null, 8, ["question"])),
2649
+ s.item.editor.showErrorOnBottom ? (t(), y(a, {
2650
+ key: 1,
2651
+ element: s.item.editor,
2652
+ location: "bottom"
2653
+ }, null, 8, ["element"])) : m("", !0)
2654
+ ], 2)),
2655
+ s.item.editor.isErrorsModeTooltip ? (t(), y(a, {
2656
+ key: 0,
2657
+ element: s.item.editor,
2658
+ location: "tooltip"
2659
+ }, null, 8, ["element"])) : m("", !0)
2660
+ ], 2);
2661
+ };
2662
+ }
2663
+ }), eo = ["aria-label"], so = { key: 0 }, no = { key: 0 }, oo = ["onClick"], to = ["data-responsive-title", "onClick"], io = ["name", "onUpdate:modelValue", "value", "disabled", "id", "aria-required", "aria-label", "aria-invalid", "aria-describedby"], lo = ["xlink:href"], ro = /* @__PURE__ */ C({
2664
+ __name: "Matrix",
2665
+ props: {
2666
+ question: {}
2667
+ },
2668
+ setup(r) {
2669
+ const o = r, n = T(null), s = F();
2670
+ M(
2671
+ o,
2672
+ n,
2673
+ (i) => {
2674
+ s.value = i.visibleRows, i.visibleRowsChangedCallback = () => {
2675
+ s.value = i.visibleRows;
2676
+ };
2677
+ },
2678
+ (i) => {
2679
+ i.visibleRowsChangedCallback = () => {
2680
+ };
2681
+ }
2682
+ );
2683
+ const e = (i, a) => {
2684
+ o.question.isInputReadOnly || (i.value = a.value);
2685
+ };
2686
+ return (i, a) => {
2687
+ const d = q("survey-string");
2688
+ return t(), u("div", {
2689
+ class: l(i.question.cssClasses.tableWrapper),
2690
+ ref_key: "root",
2691
+ ref: n
2692
+ }, [
2693
+ p("fieldset", null, [
2694
+ p("legend", {
2695
+ "aria-label": i.question.locTitle.renderedHtml
2696
+ }, null, 8, eo),
2697
+ p("table", {
2698
+ class: l(i.question.getTableCss())
2699
+ }, [
2700
+ i.question.showHeader ? (t(), u("thead", so, [
2701
+ p("tr", null, [
2702
+ i.question.hasRows ? (t(), u("td", no)) : m("", !0),
2703
+ (t(!0), u(w, null, S(i.question.visibleColumns, (c, v) => (t(), u("th", {
2704
+ key: v,
2705
+ class: l(i.question.cssClasses.headerCell),
2706
+ style: $({
2707
+ minWidth: i.question.columnMinWidth,
2708
+ width: i.question.columnMinWidth
2709
+ })
2710
+ }, [
2711
+ h(d, {
2712
+ locString: c.locText
2713
+ }, null, 8, ["locString"])
2714
+ ], 6))), 128))
2715
+ ])
2716
+ ])) : m("", !0),
2717
+ p("tbody", null, [
2718
+ (t(!0), u(w, null, S(s.value, (c, v) => (t(), u("tr", {
2719
+ key: "row_" + c.name + "_" + v,
2720
+ class: l(c.rowClasses || void 0)
2721
+ }, [
2722
+ D(p("td", {
2723
+ class: l(i.question.cssClasses.rowTextCell),
2724
+ style: $({
2725
+ minWidth: i.question.rowTitleWidth,
2726
+ width: i.question.rowTitleWidth
2727
+ })
2728
+ }, [
2729
+ h(d, {
2730
+ locString: c.locText
2731
+ }, null, 8, ["locString"])
2732
+ ], 6), [
2733
+ [H, i.question.hasRows]
2734
+ ]),
2735
+ i.question.hasCellText ? (t(!0), u(w, { key: 0 }, S(i.question.visibleColumns, (f, g) => (t(), u("td", {
2736
+ key: g,
2737
+ class: l(i.question.getItemClass(c, f)),
2738
+ onClick: (k) => e(c, f)
2739
+ }, [
2740
+ h(d, {
2741
+ locString: i.question.getCellDisplayLocText(c.name, f)
2742
+ }, null, 8, ["locString"])
2743
+ ], 10, oo))), 128)) : m("", !0),
2744
+ i.question.hasCellText ? m("", !0) : (t(!0), u(w, { key: 1 }, S(i.question.visibleColumns, (f, g) => (t(), u("td", {
2745
+ key: g,
2746
+ "data-responsive-title": f.locText.renderedHtml,
2747
+ class: l(i.question.cssClasses.cell),
2748
+ onClick: (k) => e(c, f)
2749
+ }, [
2750
+ p("label", {
2751
+ onMousedown: a[0] || (a[0] = (k) => i.question.onMouseDown()),
2752
+ class: l(i.question.getItemClass(c, f))
2753
+ }, [
2754
+ D(p("input", {
2755
+ type: "radio",
2756
+ class: l(i.question.cssClasses.itemValue),
2757
+ name: c.fullName,
2758
+ "onUpdate:modelValue": (k) => c.value = k,
2759
+ value: f.value,
2760
+ disabled: i.question.isInputReadOnly,
2761
+ id: i.question.inputId + "_" + c.name + "_" + g,
2762
+ "aria-required": i.question.ariaRequired,
2763
+ "aria-label": f.locText.renderedHtml,
2764
+ "aria-invalid": i.question.ariaInvalid,
2765
+ "aria-describedby": i.question.ariaDescribedBy
2766
+ }, null, 10, io), [
2767
+ [Y, c.value]
2768
+ ]),
2769
+ p("span", {
2770
+ class: l(i.question.cssClasses.materialDecorator)
2771
+ }, [
2772
+ i.question.itemSvgIcon ? (t(), u("svg", {
2773
+ key: 0,
2774
+ class: l(i.question.cssClasses.itemDecorator)
2775
+ }, [
2776
+ p("use", {
2777
+ "xlink:href": i.question.itemSvgIcon
2778
+ }, null, 8, lo)
2779
+ ], 2)) : m("", !0)
2780
+ ], 2),
2781
+ D(p("span", {
2782
+ class: l(i.question.cssClasses.cellResponsiveTitle)
2783
+ }, [
2784
+ h(d, {
2785
+ locString: f.locText
2786
+ }, null, 8, ["locString"])
2787
+ ], 2), [
2788
+ [H, i.question.isMobile]
2789
+ ])
2790
+ ], 34)
2791
+ ], 10, to))), 128))
2792
+ ], 2))), 128))
2793
+ ])
2794
+ ], 2)
2795
+ ])
2796
+ ], 2);
2797
+ };
2798
+ }
2799
+ }), ao = /* @__PURE__ */ C({
2800
+ __name: "MatrixDropdown",
2801
+ props: {
2802
+ question: {}
2803
+ },
2804
+ setup(r) {
2805
+ const o = r, n = T(null);
2806
+ return M(o, n), (s, e) => {
2807
+ const i = q("survey-matrixtable");
2808
+ return t(), y(i, {
2809
+ question: s.question,
2810
+ ref_key: "root",
2811
+ ref: n
2812
+ }, null, 8, ["question"]);
2813
+ };
2814
+ }
2815
+ }), uo = { key: 0 }, mo = ["data-sv-drop-target-matrix-row"], co = { key: 1 }, po = /* @__PURE__ */ C({
2816
+ __name: "MatrixTable",
2817
+ props: {
2818
+ question: {}
2819
+ },
2820
+ setup(r) {
2821
+ const o = r, n = R(() => o.question.renderedTable);
2822
+ return B(
2823
+ () => n.value,
2824
+ (s) => {
2825
+ const e = x();
2826
+ s.renderedRowsChangedCallback = () => {
2827
+ var i;
2828
+ (i = e == null ? void 0 : e.proxy) == null || i.$forceUpdate();
2829
+ };
2830
+ },
2831
+ (s) => {
2832
+ s.renderedRowsChangedCallback = () => {
2833
+ };
2834
+ }
2835
+ ), (s, e) => {
2836
+ const i = q("survey-string"), a = q("survey-matrixheaderrequired"), d = q("survey-matrixcell");
2837
+ return t(), u("div", {
2838
+ style: $({ overflowX: s.question.showHorizontalScroll ? "scroll" : "" }),
2839
+ class: l(s.question.cssClasses.tableWrapper)
2840
+ }, [
2841
+ p("table", {
2842
+ class: l(s.question.getTableCss())
2843
+ }, [
2844
+ n.value.showHeader ? (t(), u("thead", uo, [
2845
+ p("tr", null, [
2846
+ (t(!0), u(w, null, S(n.value.headerRow.cells, (c) => (t(), u(w, null, [
2847
+ c.hasTitle ? (t(), u("th", {
2848
+ class: l(c.className),
2849
+ key: "header_" + c.id,
2850
+ style: $({ minWidth: c.minWidth, width: c.width })
2851
+ }, [
2852
+ h(i, {
2853
+ locString: c.locTitle
2854
+ }, null, 8, ["locString"]),
2855
+ c.column ? (t(), y(a, {
2856
+ key: 0,
2857
+ column: c.column,
2858
+ question: s.question
2859
+ }, null, 8, ["column", "question"])) : m("", !0)
2860
+ ], 6)) : m("", !0),
2861
+ c.hasTitle ? m("", !0) : (t(), u("td", {
2862
+ class: l(c.className),
2863
+ key: "header_" + c.id,
2864
+ style: $({ minWidth: c.minWidth, width: c.width })
2865
+ }, null, 6))
2866
+ ], 64))), 256))
2867
+ ])
2868
+ ])) : m("", !0),
2869
+ p("tbody", null, [
2870
+ (t(!0), u(w, null, S(n.value.rows, (c) => (t(), u("tr", {
2871
+ "data-sv-drop-target-matrix-row": c.row && c.row.id,
2872
+ class: l(c.className),
2873
+ key: s.question.inputId + "_" + c.id
2874
+ }, [
2875
+ (t(!0), u(w, null, S(c.cells, (v, f) => (t(), y(d, {
2876
+ cell: v,
2877
+ question: s.question,
2878
+ key: c.id + "_" + f
2879
+ }, null, 8, ["cell", "question"]))), 128))
2880
+ ], 10, mo))), 128))
2881
+ ]),
2882
+ n.value.showFooter ? (t(), u("tfoot", co, [
2883
+ p("tr", null, [
2884
+ (t(!0), u(w, null, S(n.value.footerRow.cells, (c, v) => (t(), y(d, {
2885
+ cell: c,
2886
+ question: s.question,
2887
+ key: "footer_" + v
2888
+ }, null, 8, ["cell", "question"]))), 128))
2889
+ ])
2890
+ ])) : m("", !0)
2891
+ ], 2)
2892
+ ], 6);
2893
+ };
2894
+ }
2895
+ }), vo = /* @__PURE__ */ C({
2896
+ __name: "MatrixHeaderRequired",
2897
+ props: {
2898
+ question: {},
2899
+ column: {}
2900
+ },
2901
+ setup(r) {
2902
+ const o = r;
2903
+ return B(() => o.column), (n, s) => n.column.isRenderedRequired ? (t(), u("span", {
2904
+ key: 0,
2905
+ class: l(n.question.cssClasses.cellRequiredText)
2906
+ }, I(n.column.requiredText), 3)) : m("", !0);
2907
+ }
2908
+ }), qo = ["data-responsive-title", "title", "colspan"], yo = /* @__PURE__ */ C({
2909
+ __name: "MatrixCell",
2910
+ props: {
2911
+ question: {},
2912
+ cell: {}
2913
+ },
2914
+ setup(r) {
2915
+ const o = r, n = T(!1), s = T(), e = () => o.cell.headers, i = () => !!o.cell.width || !!o.cell.minWidth ? { width: o.cell.width, minWidth: o.cell.minWidth } : null, a = () => o.cell.index || "", d = () => n.value = o.cell.question.isVisible, c = (v) => ee(v);
2916
+ return E(() => {
2917
+ if (!(!o.cell.hasQuestion || !o.question || !o.question.survey)) {
2918
+ d(), o.cell.question.registerPropertyChangedHandlers(["isVisible"], () => {
2919
+ d();
2920
+ });
2921
+ var v = {
2922
+ cell: o.cell.cell,
2923
+ cellQuestion: o.cell.question,
2924
+ htmlElement: s.value,
2925
+ row: o.cell.row,
2926
+ column: o.cell.cell.column
2927
+ };
2928
+ o.question.survey.matrixAfterCellRender(o.question, v);
2929
+ }
2930
+ }), (v, f) => {
2931
+ const g = q("sv-matrix-drag-drop-icon"), k = q("sv-action-bar"), P = q("survey-errors"), L = q("survey-radiogroup-item"), A = q("survey-checkbox-item"), j = q("survey-other-choice"), X = q("survey-string");
2932
+ return t(), u("td", {
2933
+ class: l(v.cell.className),
2934
+ "data-responsive-title": e(),
2935
+ title: v.cell.getTitle(),
2936
+ style: $(i()),
2937
+ colspan: v.cell.colSpans,
2938
+ ref_key: "root",
2939
+ ref: s
2940
+ }, [
2941
+ v.cell.isDragHandlerCell ? (t(), y(g, {
2942
+ key: 0,
2943
+ item: { data: { row: v.cell.row, question: v.question } }
2944
+ }, null, 8, ["item"])) : m("", !0),
2945
+ v.cell.isActionsCell ? (t(), y(k, {
2946
+ key: 1,
2947
+ model: v.cell.item.getData(),
2948
+ handleClick: !1
2949
+ }, null, 8, ["model"])) : m("", !0),
2950
+ v.cell.hasPanel ? (t(), y(N(c(v.cell.panel)), {
2951
+ key: 2,
2952
+ question: v.cell.panel,
2953
+ css: v.question.cssClasses
2954
+ }, null, 8, ["question", "css"])) : m("", !0),
2955
+ v.cell.hasQuestion ? (t(), u("div", {
2956
+ key: 3,
2957
+ class: l(v.question.cssClasses.cellQuestionWrapper)
2958
+ }, [
2959
+ v.cell.showErrorOnTop ? (t(), y(P, {
2960
+ key: 0,
2961
+ element: v.cell.question,
2962
+ location: "top"
2963
+ }, null, 8, ["element"])) : m("", !0),
2964
+ !v.cell.isChoice && v.cell.question.isDefaultRendering() ? D((t(), y(N(c(v.cell.question)), {
2965
+ key: 1,
2966
+ question: v.cell.question
2967
+ }, null, 8, ["question"])), [
2968
+ [H, n.value]
2969
+ ]) : m("", !0),
2970
+ !v.cell.isChoice && !v.cell.question.isDefaultRendering() ? D((t(), y(N(v.cell.question.getComponentName()), {
2971
+ key: 2,
2972
+ question: v.cell.question
2973
+ }, null, 8, ["question"])), [
2974
+ [H, n.value]
2975
+ ]) : m("", !0),
2976
+ v.cell.isRadio ? (t(), y(L, {
2977
+ key: v.cell.item.value,
2978
+ class: l(v.cell.question.getItemClass(v.cell.item)),
2979
+ question: v.cell.question,
2980
+ item: v.cell.item,
2981
+ index: a(),
2982
+ hideLabel: !0
2983
+ }, null, 8, ["class", "question", "item", "index"])) : m("", !0),
2984
+ v.cell.isCheckbox ? (t(), y(A, {
2985
+ key: v.cell.item.value,
2986
+ class: l(v.cell.question.getItemClass(v.cell.item)),
2987
+ question: v.cell.question,
2988
+ item: v.cell.item,
2989
+ index: a(),
2990
+ hideLabel: !0
2991
+ }, null, 8, ["class", "question", "item", "index"])) : m("", !0),
2992
+ v.cell.isOtherChoice ? (t(), y(j, {
2993
+ key: 5,
2994
+ question: v.cell.question
2995
+ }, null, 8, ["question"])) : m("", !0),
2996
+ v.cell.showErrorOnBottom ? (t(), y(P, {
2997
+ key: 6,
2998
+ element: v.cell.question,
2999
+ location: "bottom"
3000
+ }, null, 8, ["element"])) : m("", !0),
3001
+ v.cell.question.isErrorsModeTooltip ? (t(), y(P, {
3002
+ key: 7,
3003
+ element: v.cell.question,
3004
+ location: "tooltip"
3005
+ }, null, 8, ["element"])) : m("", !0)
3006
+ ], 2)) : m("", !0),
3007
+ v.cell.hasTitle ? (t(), y(X, {
3008
+ key: 4,
3009
+ locString: v.cell.locTitle
3010
+ }, null, 8, ["locString"])) : m("", !0),
3011
+ v.cell.requiredText ? (t(), u("span", {
3012
+ key: 5,
3013
+ class: l(v.question.cssClasses.cellRequiredText)
3014
+ }, I(v.cell.requiredText), 3)) : m("", !0)
3015
+ ], 14, qo);
3016
+ };
3017
+ }
3018
+ }), go = /* @__PURE__ */ C({
3019
+ __name: "MatrixDynamic",
3020
+ props: {
3021
+ question: {}
3022
+ },
3023
+ setup(r) {
3024
+ const o = r, n = T(null);
3025
+ M(o, n);
3026
+ const s = () => {
3027
+ o.question.addRowUI();
3028
+ };
3029
+ return (e, i) => {
3030
+ const a = q("survey-string"), d = q("survey-matrixtable");
3031
+ return t(), u("div", {
3032
+ ref_key: "root",
3033
+ ref: n
3034
+ }, [
3035
+ e.question.renderedTable.showAddRowOnTop ? (t(), u("div", {
3036
+ key: 0,
3037
+ class: l(e.question.cssClasses.footer)
3038
+ }, [
3039
+ p("button", {
3040
+ type: "button",
3041
+ class: l(e.question.getAddRowButtonCss()),
3042
+ onClick: s
3043
+ }, [
3044
+ h(a, {
3045
+ locString: e.question.locAddRowText
3046
+ }, null, 8, ["locString"]),
3047
+ p("span", {
3048
+ class: l(e.question.cssClasses.iconAdd)
3049
+ }, null, 2)
3050
+ ], 2)
3051
+ ], 2)) : m("", !0),
3052
+ e.question.renderedTable.showTable ? (t(), y(d, {
3053
+ key: 1,
3054
+ question: e.question
3055
+ }, null, 8, ["question"])) : m("", !0),
3056
+ e.question.renderedTable.showTable ? m("", !0) : (t(), u("div", {
3057
+ key: 2,
3058
+ class: l(e.question.cssClasses.emptyRowsSection)
3059
+ }, [
3060
+ p("div", {
3061
+ class: l(e.question.cssClasses.emptyRowsText)
3062
+ }, [
3063
+ h(a, {
3064
+ locString: e.question.locEmptyRowsText
3065
+ }, null, 8, ["locString"])
3066
+ ], 2),
3067
+ p("button", {
3068
+ type: "button",
3069
+ class: l(e.question.getAddRowButtonCss(!0)),
3070
+ onClick: s
3071
+ }, [
3072
+ h(a, {
3073
+ locString: e.question.locAddRowText
3074
+ }, null, 8, ["locString"]),
3075
+ p("span", {
3076
+ class: l(e.question.cssClasses.iconAdd)
3077
+ }, null, 2)
3078
+ ], 2)
3079
+ ], 2)),
3080
+ e.question.renderedTable.showAddRowOnBottom ? (t(), u("div", {
3081
+ key: 3,
3082
+ class: l(e.question.cssClasses.footer)
3083
+ }, [
3084
+ p("button", {
3085
+ type: "button",
3086
+ class: l(e.question.getAddRowButtonCss()),
3087
+ onClick: s
3088
+ }, [
3089
+ h(a, {
3090
+ locString: e.question.locAddRowText
3091
+ }, null, 8, ["locString"]),
3092
+ p("span", {
3093
+ class: l(e.question.cssClasses.iconAdd)
3094
+ }, null, 2)
3095
+ ], 2)
3096
+ ], 2)) : m("", !0)
3097
+ ], 512);
3098
+ };
3099
+ }
3100
+ });
3101
+ function se(r, o = !0) {
3102
+ return {
3103
+ question: R(() => r.item.data.question),
3104
+ row: o ? R(() => r.item.data.row) : void 0
3105
+ };
3106
+ }
3107
+ const Co = ["disabled"], ho = /* @__PURE__ */ C({
3108
+ __name: "RemoveButton",
3109
+ props: {
3110
+ item: {}
3111
+ },
3112
+ setup(r) {
3113
+ const o = r, { question: n, row: s } = se(o);
3114
+ return (e, i) => {
3115
+ const a = q("survey-string");
3116
+ return t(), u("button", {
3117
+ type: "button",
3118
+ class: l(b(n).getRemoveRowButtonCss()),
3119
+ disabled: b(n).isInputReadOnly,
3120
+ onClick: i[0] || (i[0] = () => b(n).removeRowUI(b(s)))
3121
+ }, [
3122
+ h(a, {
3123
+ locString: b(n).locRemoveRowText
3124
+ }, null, 8, ["locString"]),
3125
+ p("span", {
3126
+ class: l(b(n).cssClasses.iconRemove)
3127
+ }, null, 2)
3128
+ ], 10, Co);
3129
+ };
3130
+ }
3131
+ }), bo = ["xlink:href"], ko = /* @__PURE__ */ C({
3132
+ __name: "DragDropIcon",
3133
+ props: {
3134
+ item: {}
3135
+ },
3136
+ setup(r) {
3137
+ const o = r, { question: n } = se(o, !1);
3138
+ return (s, e) => b(n).iconDragElement ? (t(), u("svg", {
3139
+ key: 0,
3140
+ class: l(b(n).cssClasses.dragElementDecorator)
3141
+ }, [
3142
+ p("use", {
3143
+ "xlink:href": b(n).iconDragElement
3144
+ }, null, 8, bo)
3145
+ ], 2)) : (t(), u("span", {
3146
+ key: 1,
3147
+ class: l(b(n).cssClasses.iconDrag)
3148
+ }, null, 2));
3149
+ }
3150
+ }), fo = ["aria-expanded", "aria-controls"], Io = /* @__PURE__ */ C({
3151
+ __name: "DetailButton",
3152
+ props: {
3153
+ item: {}
3154
+ },
3155
+ setup(r) {
3156
+ const o = r, { question: n, row: s } = se(o);
3157
+ return (e, i) => {
3158
+ const a = q("sv-svg-icon");
3159
+ return t(), u("button", {
3160
+ type: "button",
3161
+ class: l(b(n).getDetailPanelButtonCss(b(s))),
3162
+ onClick: i[0] || (i[0] = () => b(s).showHideDetailPanelClick()),
3163
+ "aria-expanded": b(n).getIsDetailPanelShowing(b(s)) ? "true" : "false",
3164
+ "aria-controls": b(n).getIsDetailPanelShowing(b(s)) ? b(s).detailPanelId : null
3165
+ }, [
3166
+ h(a, {
3167
+ class: l(b(n).getDetailPanelIconCss(b(s))),
3168
+ iconName: b(n).getDetailPanelIconId(b(s)),
3169
+ size: "auto"
3170
+ }, null, 8, ["class", "iconName"])
3171
+ ], 10, fo);
3172
+ };
3173
+ }
3174
+ }), wo = /* @__PURE__ */ C({
3175
+ __name: "PanelDynamic",
3176
+ props: {
3177
+ question: {},
3178
+ css: {}
3179
+ },
3180
+ setup(r) {
3181
+ const o = r, n = T(null), s = x();
3182
+ M(
3183
+ o,
3184
+ n,
3185
+ (a) => {
3186
+ a.panelCountChangedCallback = () => {
3187
+ var d;
3188
+ (d = s == null ? void 0 : s.proxy) == null || d.$forceUpdate();
3189
+ }, a.currentIndexChangedCallback = () => {
3190
+ var d;
3191
+ (d = s == null ? void 0 : s.proxy) == null || d.$forceUpdate();
3192
+ }, a.renderModeChangedCallback = () => {
3193
+ var d;
3194
+ (d = s == null ? void 0 : s.proxy) == null || d.$forceUpdate();
3195
+ };
3196
+ },
3197
+ (a) => {
3198
+ a.panelCountChangedCallback = () => {
3199
+ }, a.currentIndexChangedCallback = () => {
3200
+ }, a.renderModeChangedCallback = () => {
3201
+ };
3202
+ }
3203
+ );
3204
+ const e = R(() => {
3205
+ if (o.question.isRenderModeList)
3206
+ return o.question.panels;
3207
+ const a = [];
3208
+ return o.question.currentPanel && a.push(o.question.currentPanel), a;
3209
+ }), i = () => o.question.showLegacyNavigation;
3210
+ return (a, d) => {
3211
+ const c = q("survey-string"), v = q("sv-paneldynamic-add-btn"), f = q("survey-paneldynamicprogress"), g = q("survey-panel"), k = q("sv-paneldynamic-remove-btn"), P = q("survey-paneldynamicprogress-v2");
3212
+ return t(), u("div", {
3213
+ class: l(a.question.cssClasses.root),
3214
+ ref_key: "root",
3215
+ ref: n
3216
+ }, [
3217
+ a.question.getShowNoEntriesPlaceholder() ? (t(), u("div", {
3218
+ key: 0,
3219
+ class: l(a.question.cssClasses.noEntriesPlaceholder)
3220
+ }, [
3221
+ p("span", null, [
3222
+ h(c, {
3223
+ locString: a.question.locNoEntriesText
3224
+ }, null, 8, ["locString"])
3225
+ ]),
3226
+ h(v, {
3227
+ data: { question: a.question }
3228
+ }, null, 8, ["data"])
3229
+ ], 2)) : m("", !0),
3230
+ !i() && a.question.isProgressTopShowing && a.question.isRangeShowing ? (t(), u("div", {
3231
+ key: 1,
3232
+ class: l(a.question.cssClasses.progress)
3233
+ }, [
3234
+ p("div", {
3235
+ class: l(a.question.cssClasses.progressBar),
3236
+ style: $({ width: a.question.progress }),
3237
+ role: "progressbar"
3238
+ }, null, 6)
3239
+ ], 2)) : m("", !0),
3240
+ i() && a.question.isProgressTopShowing ? (t(), y(f, {
3241
+ key: 2,
3242
+ question: a.question
3243
+ }, null, 8, ["question"])) : m("", !0),
3244
+ (t(!0), u(w, null, S(e.value, (L, A) => (t(), u(w, {
3245
+ key: L.id
3246
+ }, [
3247
+ p("div", {
3248
+ class: l(a.question.getPanelWrapperCss())
3249
+ }, [
3250
+ h(g, {
3251
+ question: L,
3252
+ css: a.css
3253
+ }, null, 8, ["question", "css"]),
3254
+ a.question.panelRemoveButtonLocation === "right" && a.question.canRemovePanel && L.state !== "collapsed" ? (t(), y(k, {
3255
+ key: 0,
3256
+ data: { question: a.question, panel: L }
3257
+ }, null, 8, ["data"])) : m("", !0)
3258
+ ], 2),
3259
+ a.question.isRenderModeList && A < a.question.visiblePanelCount - 1 ? (t(), u("hr", {
3260
+ class: l(a.question.cssClasses.separator),
3261
+ key: "separator" + L.id
3262
+ }, null, 2)) : m("", !0)
3263
+ ], 64))), 128)),
3264
+ i() && a.question.isProgressBottomShowing ? (t(), y(f, {
3265
+ key: 3,
3266
+ question: a.question
3267
+ }, null, 8, ["question"])) : m("", !0),
3268
+ i() && a.question.isRenderModeList ? (t(), y(v, {
3269
+ key: 4,
3270
+ data: { question: a.question }
3271
+ }, null, 8, ["data"])) : m("", !0),
3272
+ a.question.showNavigation ? (t(), y(P, {
3273
+ key: 5,
3274
+ question: a.question
3275
+ }, null, 8, ["question"])) : m("", !0)
3276
+ ], 2);
3277
+ };
3278
+ }
3279
+ }), To = /* @__PURE__ */ C({
3280
+ __name: "PanelDynamicProgress",
3281
+ props: {
3282
+ question: {}
3283
+ },
3284
+ setup(r) {
3285
+ const o = r, n = () => o.question.isProgressTopShowing ? o.question.cssClasses.progressTop : o.question.cssClasses.progressBottom;
3286
+ return (s, e) => {
3287
+ const i = q("sv-paneldynamic-prev-btn"), a = q("sv-paneldynamic-next-btn"), d = q("sv-paneldynamic-add-btn"), c = q("sv-paneldynamic-progress-text");
3288
+ return t(), u("div", {
3289
+ class: l(n())
3290
+ }, [
3291
+ p("div", {
3292
+ style: { clear: "both" },
3293
+ class: l(n())
3294
+ }, [
3295
+ p("div", {
3296
+ class: l(s.question.cssClasses.progressContainer)
3297
+ }, [
3298
+ h(i, {
3299
+ data: { question: s.question }
3300
+ }, null, 8, ["data"]),
3301
+ s.question.isRangeShowing ? (t(), u("div", {
3302
+ key: 0,
3303
+ class: l(s.question.cssClasses.progress)
3304
+ }, [
3305
+ p("div", {
3306
+ class: l(s.question.cssClasses.progressBar),
3307
+ style: $({ width: s.question.progress }),
3308
+ role: "progressbar"
3309
+ }, null, 6)
3310
+ ], 2)) : m("", !0),
3311
+ h(a, {
3312
+ data: { question: s.question }
3313
+ }, null, 8, ["data"])
3314
+ ], 2),
3315
+ h(d, {
3316
+ data: { question: s.question }
3317
+ }, null, 8, ["data"]),
3318
+ h(c, {
3319
+ data: { question: s.question }
3320
+ }, null, 8, ["data"])
3321
+ ], 2)
3322
+ ], 2);
3323
+ };
3324
+ }
3325
+ }), So = /* @__PURE__ */ C({
3326
+ __name: "PanelDynamicProgressV2",
3327
+ props: {
3328
+ question: {}
3329
+ },
3330
+ setup(r) {
3331
+ return (o, n) => {
3332
+ const s = q("sv-action-bar");
3333
+ return o.question.cssClasses.footer ? (t(), u("div", {
3334
+ key: 0,
3335
+ class: l(o.question.cssClasses.footer)
3336
+ }, [
3337
+ p("hr", {
3338
+ class: l(o.question.cssClasses.separator)
3339
+ }, null, 2),
3340
+ o.question.isRangeShowing && o.question.isProgressBottomShowing ? (t(), u("div", {
3341
+ key: 0,
3342
+ class: l(o.question.cssClasses.progress)
3343
+ }, [
3344
+ p("div", {
3345
+ class: l(o.question.cssClasses.progressBar),
3346
+ style: $({ width: o.question.progress }),
3347
+ role: "progressbar"
3348
+ }, null, 6)
3349
+ ], 2)) : m("", !0),
3350
+ o.question.footerToolbar.visibleActions.length ? (t(), u("div", {
3351
+ key: 1,
3352
+ class: l(o.question.cssClasses.footerButtonsContainer)
3353
+ }, [
3354
+ h(s, {
3355
+ model: o.question.footerToolbar
3356
+ }, null, 8, ["model"])
3357
+ ], 2)) : m("", !0)
3358
+ ], 2)) : m("", !0);
3359
+ };
3360
+ }
3361
+ });
3362
+ function K(r) {
3363
+ return R(
3364
+ () => r.item && r.item.data.question || r.data.question
3365
+ );
3366
+ }
3367
+ const Ro = /* @__PURE__ */ C({
3368
+ __name: "PaneldynamicAddBtn",
3369
+ props: {
3370
+ item: {},
3371
+ data: {}
3372
+ },
3373
+ setup(r) {
3374
+ const n = K(r), s = () => {
3375
+ n.value.addPanelUI();
3376
+ };
3377
+ return (e, i) => b(n).canAddPanel ? (t(), u("button", {
3378
+ key: 0,
3379
+ type: "button",
3380
+ class: l(b(n).getAddButtonCss()),
3381
+ onClick: s
3382
+ }, [
3383
+ p("span", {
3384
+ class: l(b(n).cssClasses.buttonAddText)
3385
+ }, I(b(n).panelAddText), 3)
3386
+ ], 2)) : m("", !0);
3387
+ }
3388
+ }), $o = ["title"], Bo = /* @__PURE__ */ C({
3389
+ __name: "PaneldynamicNextBtn",
3390
+ props: {
3391
+ item: {},
3392
+ data: {}
3393
+ },
3394
+ setup(r) {
3395
+ const n = K(r), s = () => {
3396
+ n.value.goToNextPanel();
3397
+ };
3398
+ return (e, i) => {
3399
+ const a = q("sv-svg-icon");
3400
+ return t(), u("div", {
3401
+ title: b(n).panelNextText,
3402
+ onClick: s,
3403
+ class: l(b(n).getNextButtonCss())
3404
+ }, [
3405
+ h(a, {
3406
+ iconName: b(n).cssClasses.progressBtnIcon,
3407
+ size: "auto"
3408
+ }, null, 8, ["iconName"])
3409
+ ], 10, $o);
3410
+ };
3411
+ }
3412
+ }), Lo = ["title"], Do = /* @__PURE__ */ C({
3413
+ __name: "PaneldynamicPrevBtn",
3414
+ props: {
3415
+ item: {},
3416
+ data: {}
3417
+ },
3418
+ setup(r) {
3419
+ const n = K(r), s = () => {
3420
+ n.value.goToPrevPanel();
3421
+ };
3422
+ return (e, i) => {
3423
+ const a = q("sv-svg-icon");
3424
+ return t(), u("div", {
3425
+ title: b(n).panelPrevText,
3426
+ onClick: s,
3427
+ class: l(b(n).getPrevButtonCss())
3428
+ }, [
3429
+ h(a, {
3430
+ iconName: b(n).cssClasses.progressBtnIcon,
3431
+ size: "auto"
3432
+ }, null, 8, ["iconName"])
3433
+ ], 10, Lo);
3434
+ };
3435
+ }
3436
+ }), Po = /* @__PURE__ */ C({
3437
+ __name: "PaneldynamicRemoveBtn",
3438
+ props: {
3439
+ item: {},
3440
+ data: {}
3441
+ },
3442
+ setup(r) {
3443
+ const o = r, n = K(o), s = R(
3444
+ () => o.item && o.item.data.panel || o.data.panel
3445
+ ), e = (i) => {
3446
+ n.value.isInputReadOnly || n.value.removePanelUI(i);
3447
+ };
3448
+ return (i, a) => (t(), u("button", {
3449
+ type: "button",
3450
+ class: l(b(n).getPanelRemoveButtonCss()),
3451
+ onClick: a[0] || (a[0] = (d) => e(s.value))
3452
+ }, [
3453
+ p("span", {
3454
+ class: l(b(n).cssClasses.buttonRemoveText)
3455
+ }, I(b(n).panelRemoveText), 3),
3456
+ p("span", {
3457
+ class: l(b(n).cssClasses.iconRemove)
3458
+ }, null, 2)
3459
+ ], 2));
3460
+ }
3461
+ }), Mo = /* @__PURE__ */ C({
3462
+ __name: "PaneldynamicProgressText",
3463
+ props: {
3464
+ item: {},
3465
+ data: {}
3466
+ },
3467
+ setup(r) {
3468
+ const n = K(r);
3469
+ return (s, e) => (t(), u("div", {
3470
+ class: l(b(n).cssClasses.progressText)
3471
+ }, I(b(n).progressText), 3));
3472
+ }
3473
+ }), No = ["id"], Ho = /* @__PURE__ */ C({
3474
+ __name: "Errors",
3475
+ props: {
3476
+ element: {},
3477
+ location: {}
3478
+ },
3479
+ setup(r) {
3480
+ const o = r, n = T();
3481
+ let s;
3482
+ return U(() => {
3483
+ o.location == "tooltip" && n.value instanceof HTMLElement && (!s || n.value !== s.tooltipElement) && (s = new we(n.value)), !(n.value instanceof HTMLElement) && !!s && s.dispose();
3484
+ }), O(() => {
3485
+ s && s.dispose();
3486
+ }), (e, i) => {
3487
+ const a = q("survey-string");
3488
+ return e.element.hasVisibleErrors ? (t(), u("div", {
3489
+ key: 0,
3490
+ role: "alert",
3491
+ "aria-live": "polite",
3492
+ class: l(e.element.cssError),
3493
+ id: e.element.id + "_errors",
3494
+ ref_key: "root",
3495
+ ref: n
3496
+ }, [
3497
+ (t(!0), u(w, null, S(e.element.errors, (d, c) => (t(), u("div", {
3498
+ key: "error_" + c
3499
+ }, [
3500
+ p("span", {
3501
+ class: l(
3502
+ e.element.cssClasses ? e.element.cssClasses.error.icon || void 0 : "panel-error-icon"
3503
+ ),
3504
+ "aria-hidden": "true"
3505
+ }, null, 2),
3506
+ p("span", {
3507
+ class: l(
3508
+ e.element.cssClasses ? e.element.cssClasses.error.item || void 0 : "panel-error-item"
3509
+ )
3510
+ }, [
3511
+ h(a, {
3512
+ locString: d.locText
3513
+ }, null, 8, ["locString"])
3514
+ ], 2)
3515
+ ]))), 128))
3516
+ ], 10, No)) : m("", !0);
3517
+ };
3518
+ }
3519
+ }), Eo = { key: 0 }, Ao = ["id", "readonly", "disabled", "value", "maxlength", "placeholder", "aria-label", "aria-required"], Oo = /* @__PURE__ */ C({
3520
+ __name: "QuestionComment",
3521
+ props: {
3522
+ question: {},
3523
+ commentClass: {}
3524
+ },
3525
+ setup(r) {
3526
+ return (o, n) => o.question.isReadOnlyRenderDiv() ? (t(), u("div", Eo, I(o.question.comment), 1)) : (t(), u("textarea", {
3527
+ key: 1,
3528
+ id: o.question.commentId,
3529
+ readonly: o.question.isInputReadOnly,
3530
+ disabled: o.question.isInputReadOnly,
3531
+ class: l(o.question.cssClasses.other || o.commentClass),
3532
+ value: o.question.comment,
3533
+ maxlength: o.question.getOthersMaxLength(),
3534
+ placeholder: o.question.commentPlaceholder,
3535
+ "aria-label": o.question.ariaLabel,
3536
+ "aria-required": o.question.ariaRequired,
3537
+ style: $({ resize: o.question.resizeStyle }),
3538
+ onChange: n[0] || (n[0] = (s) => {
3539
+ o.question.onCommentChange(s);
3540
+ }),
3541
+ onInput: n[1] || (n[1] = (s) => {
3542
+ o.question.onCommentInput(s);
3543
+ })
3544
+ }, null, 46, Ao));
3545
+ }
3546
+ }), Vo = /* @__PURE__ */ C({
3547
+ __name: "TitleElement",
3548
+ props: {
3549
+ element: {},
3550
+ css: {}
3551
+ },
3552
+ setup(r) {
3553
+ const o = (n) => {
3554
+ ae(n);
3555
+ };
3556
+ return (n, s) => {
3557
+ const e = q("survey-element-title-content"), i = q("sv-title-actions");
3558
+ return n.element.hasTitle ? (t(), y(N(n.element.titleTagName), {
3559
+ key: 0,
3560
+ class: l(n.element.cssTitle),
3561
+ "aria-label": n.element.titleAriaLabel,
3562
+ id: n.element.ariaTitleId,
3563
+ tabindex: n.element.titleTabIndex,
3564
+ "aria-expanded": n.element.titleAriaExpanded,
3565
+ role: n.element.titleAriaRole,
3566
+ onKeyup: s[0] || (s[0] = (a) => {
3567
+ o(a);
3568
+ })
3569
+ }, {
3570
+ default: ve(() => [
3571
+ n.element.hasTitleActions ? m("", !0) : (t(), y(e, {
3572
+ key: 0,
3573
+ element: n.element,
3574
+ css: n.css
3575
+ }, null, 8, ["element", "css"])),
3576
+ n.element.hasTitleActions ? (t(), y(i, {
3577
+ key: 1,
3578
+ element: n.element,
3579
+ css: n.css
3580
+ }, null, 8, ["element", "css"])) : m("", !0)
3581
+ ]),
3582
+ _: 1
3583
+ }, 40, ["class", "aria-label", "id", "tabindex", "aria-expanded", "role"])) : m("", !0);
3584
+ };
3585
+ }
3586
+ }), Fo = { class: "sv-vue-title-additional-div" }, Wo = { key: 3 }, zo = { key: 5 }, Uo = { key: 7 }, Ko = /* @__PURE__ */ C({
3587
+ __name: "TitleContent",
3588
+ props: {
3589
+ element: {},
3590
+ css: {}
3591
+ },
3592
+ setup(r) {
3593
+ return (o, n) => {
3594
+ const s = q("survey-string");
3595
+ return t(), u("div", Fo, [
3596
+ o.element.isTitleRenderedAsString ? (t(), y(s, {
3597
+ key: 0,
3598
+ locString: o.element.locTitle
3599
+ }, null, 8, ["locString"])) : m("", !0),
3600
+ !o.element.isTitleRenderedAsString && o.element.isRequireTextOnStart ? (t(), u("span", {
3601
+ key: 1,
3602
+ class: l(o.element.cssClasses.requiredText),
3603
+ "aria-hidden": !0
3604
+ }, I(o.element.requiredText), 3)) : m("", !0),
3605
+ !o.element.isTitleRenderedAsString && o.element.no ? (t(), u("span", {
3606
+ key: 2,
3607
+ style: { position: "static" },
3608
+ class: l(o.element.cssTitleNumber),
3609
+ "aria-hidden": !0
3610
+ }, I(o.element.no), 3)) : m("", !0),
3611
+ !o.element.isTitleRenderedAsString && o.element.no ? (t(), u("span", Wo, "\xA0")) : m("", !0),
3612
+ !o.element.isTitleRenderedAsString && o.element.isRequireTextBeforeTitle ? (t(), u("span", {
3613
+ key: 4,
3614
+ class: l(o.element.cssClasses.requiredText),
3615
+ "aria-hidden": !0
3616
+ }, I(o.element.requiredText), 3)) : m("", !0),
3617
+ !o.element.isTitleRenderedAsString && o.element.isRequireTextBeforeTitle ? (t(), u("span", zo, "\xA0")) : m("", !0),
3618
+ o.element.isTitleRenderedAsString ? m("", !0) : (t(), y(s, {
3619
+ key: 6,
3620
+ locString: o.element.locTitle
3621
+ }, null, 8, ["locString"])),
3622
+ !o.element.isTitleRenderedAsString && o.element.isRequireTextAfterTitle ? (t(), u("span", Uo, "\xA0")) : m("", !0),
3623
+ !o.element.isTitleRenderedAsString && o.element.isRequireTextAfterTitle ? (t(), u("span", {
3624
+ key: 8,
3625
+ class: l(o.element.cssClasses.requiredText),
3626
+ "aria-hidden": !0
3627
+ }, I(o.element.requiredText), 3)) : m("", !0)
3628
+ ]);
3629
+ };
3630
+ }
3631
+ }), jo = { class: "sv-title-actions" }, Qo = { class: "sv-title-actions__title" }, Zo = /* @__PURE__ */ C({
3632
+ __name: "TitleActions",
3633
+ props: {
3634
+ element: {},
3635
+ css: {}
3636
+ },
3637
+ setup(r) {
3638
+ const o = r, n = R(() => o.element.getTitleToolbar());
3639
+ return (s, e) => {
3640
+ const i = q("survey-string"), a = q("survey-element-title-content"), d = q("sv-action-bar");
3641
+ return t(), u("div", jo, [
3642
+ p("span", Qo, [
3643
+ s.element.isPage ? (t(), y(i, {
3644
+ key: 0,
3645
+ locString: s.element.locTitle
3646
+ }, null, 8, ["locString"])) : m("", !0),
3647
+ s.element.isPage ? m("", !0) : (t(), y(a, {
3648
+ key: 1,
3649
+ element: s.element,
3650
+ css: s.css
3651
+ }, null, 8, ["element", "css"]))
3652
+ ]),
3653
+ h(d, { model: n.value }, null, 8, ["model"])
3654
+ ]);
3655
+ };
3656
+ }
3657
+ }), Go = (r, o) => {
3658
+ const n = r.__vccOpts || r;
3659
+ for (const [s, e] of o)
3660
+ n[s] = e;
3661
+ return n;
3662
+ }, Xo = {}, Jo = { class: "sv-brand-info" }, Yo = /* @__PURE__ */ qe('<a class="sv-brand-info__logo" href="https://surveyjs.io/?utm_source=built-in_links&amp;utm_medium=online_survey_tool&amp;utm_campaign=landing_page"><img src="https://surveyjs.io/Content/Images/poweredby.svg"></a><div class="sv-brand-info__text"> Try and see how easy it is to <a href="https://surveyjs.io/create-survey?utm_source=built-in_links&amp;utm_medium=online_survey_tool&amp;utm_campaign=create_survey">create a survey</a></div><div class="sv-brand-info__terms"><a href="https://surveyjs.io/TermsOfUse">Terms of Use &amp; Privacy Statement</a></div>', 3), _o = [
3663
+ Yo
3664
+ ];
3665
+ function xo(r, o) {
3666
+ return t(), u("div", Jo, _o);
3667
+ }
3668
+ const et = /* @__PURE__ */ Go(Xo, [["render", xo]]), st = ["aria-label"], nt = /* @__PURE__ */ p("use", null, null, -1), ot = [
3669
+ nt
3670
+ ], tt = /* @__PURE__ */ C({
3671
+ __name: "SvgIcon",
3672
+ props: {
3673
+ size: {},
3674
+ width: {},
3675
+ height: {},
3676
+ iconName: {},
3677
+ title: {}
3678
+ },
3679
+ setup(r) {
3680
+ const o = r, n = T(), s = () => {
3681
+ Te(
3682
+ o.size,
3683
+ o.width,
3684
+ o.height,
3685
+ o.iconName,
3686
+ n.value,
3687
+ o.title
3688
+ );
3689
+ };
3690
+ return U(() => {
3691
+ s();
3692
+ }), E(() => {
3693
+ s();
3694
+ }), (e, i) => (t(), u("svg", {
3695
+ ref_key: "svgIconElement",
3696
+ ref: n,
3697
+ class: "sv-svg-icon",
3698
+ role: "img",
3699
+ "aria-label": e.title
3700
+ }, ot, 8, st));
3701
+ }
3702
+ }), it = /* @__PURE__ */ C({
3703
+ __name: "ActionBar",
3704
+ props: {
3705
+ model: {},
3706
+ handleClick: { type: Boolean }
3707
+ },
3708
+ setup(r) {
3709
+ const o = r, n = T(null);
3710
+ return B(() => o.model), E(() => {
3711
+ !o.model.hasActions || o.model.initResponsivityManager(n.value);
3712
+ }), O(() => {
3713
+ o.model.resetResponsivityManager();
3714
+ }), (s, e) => {
3715
+ const i = q("sv-action");
3716
+ return s.model.hasActions ? (t(), u("div", {
3717
+ key: 0,
3718
+ ref_key: "root",
3719
+ ref: n,
3720
+ class: l(s.model.getRootCss()),
3721
+ onClick: e[0] || (e[0] = (a) => {
3722
+ a.stopPropagation();
3723
+ })
3724
+ }, [
3725
+ (t(!0), u(w, null, S(s.model.renderedActions, (a) => (t(), y(i, {
3726
+ key: a.id,
3727
+ item: a
3728
+ }, null, 8, ["item"]))), 128))
3729
+ ], 2)) : m("", !0);
3730
+ };
3731
+ }
3732
+ }), lt = ["id"], rt = { class: "sv-action__content" }, at = /* @__PURE__ */ C({
3733
+ __name: "Action",
3734
+ props: {
3735
+ item: {}
3736
+ },
3737
+ setup(r) {
3738
+ const o = r, n = R(
3739
+ () => o.item.component || "sv-action-bar-item"
3740
+ );
3741
+ return B(() => o.item), (s, e) => {
3742
+ const i = q("sv-action-bar-separator");
3743
+ return t(), u("div", {
3744
+ class: l(s.item.getActionRootCss()),
3745
+ id: s.item.id
3746
+ }, [
3747
+ p("div", rt, [
3748
+ s.item.needSeparator ? (t(), y(i, { key: 0 })) : m("", !0),
3749
+ (t(), y(N(n.value), { item: s.item }, null, 8, ["item"]))
3750
+ ])
3751
+ ], 10, lt);
3752
+ };
3753
+ }
3754
+ }), ut = ["disabled", "title", "aria-checked", "aria-expanded", "role", "tabindex"], dt = /* @__PURE__ */ C({
3755
+ __name: "ActionBarItem",
3756
+ props: {
3757
+ item: {}
3758
+ },
3759
+ setup(r) {
3760
+ const o = r;
3761
+ return B(() => o.item), (n, s) => {
3762
+ const e = q("sv-svg-icon");
3763
+ return t(), u("button", {
3764
+ class: l(n.item.getActionBarItemCss()),
3765
+ type: "button",
3766
+ onClick: s[0] || (s[0] = () => {
3767
+ n.item.action();
3768
+ }),
3769
+ onKeyup: s[1] || (s[1] = (i) => {
3770
+ i.stopPropagation();
3771
+ }),
3772
+ disabled: n.item.enabled !== void 0 && !n.item.enabled,
3773
+ title: n.item.tooltip || n.item.title,
3774
+ "aria-checked": n.item.ariaChecked,
3775
+ "aria-expanded": n.item.ariaExpanded,
3776
+ role: n.item.ariaRole,
3777
+ tabindex: n.item.disableTabStop ? -1 : 0
3778
+ }, [
3779
+ n.item.iconName ? (t(), y(e, {
3780
+ key: 0,
3781
+ class: l(n.item.cssClasses.itemIcon),
3782
+ iconName: n.item.iconName,
3783
+ size: n.item.iconSize,
3784
+ title: n.item.tooltip || n.item.title
3785
+ }, null, 8, ["class", "iconName", "size", "title"])) : m("", !0),
3786
+ n.item.hasTitle ? (t(), u("span", {
3787
+ key: 1,
3788
+ class: l(n.item.getActionBarItemTitleCss())
3789
+ }, I(n.item.title), 3)) : m("", !0)
3790
+ ], 42, ut);
3791
+ };
3792
+ }
3793
+ }), mt = ["disabled", "title", "role", "tabindex"], ct = /* @__PURE__ */ C({
3794
+ __name: "ActionBarItemDropdown",
3795
+ props: {
3796
+ item: {}
3797
+ },
3798
+ setup(r) {
3799
+ const o = r, n = Re;
3800
+ let s;
3801
+ return B(
3802
+ () => o.item,
3803
+ (e) => {
3804
+ s = new Se(e);
3805
+ },
3806
+ () => {
3807
+ s.dispose();
3808
+ }
3809
+ ), (e, i) => {
3810
+ const a = q("sv-svg-icon"), d = q("sv-popup");
3811
+ return t(), u(w, null, [
3812
+ p("button", {
3813
+ type: "button",
3814
+ class: l(e.item.getActionBarItemCss()),
3815
+ onClick: i[0] || (i[0] = (c) => {
3816
+ e.item.action(e.item, !!c.pointerType);
3817
+ }),
3818
+ onKeyup: i[1] || (i[1] = (c) => {
3819
+ c.stopPropagation();
3820
+ }),
3821
+ disabled: e.item.enabled !== void 0 && e.item.enabled,
3822
+ title: e.item.tooltip || e.item.title,
3823
+ role: e.item.ariaRole,
3824
+ tabindex: e.item.disableTabStop ? -1 : 0
3825
+ }, [
3826
+ e.item.iconName ? (t(), y(a, {
3827
+ key: 0,
3828
+ class: l(e.item.cssClasses.itemIcon),
3829
+ iconName: e.item.iconName,
3830
+ size: e.item.iconSize,
3831
+ title: e.item.tooltip || e.item.title
3832
+ }, null, 8, ["class", "iconName", "size", "title"])) : m("", !0),
3833
+ e.item.hasTitle ? (t(), u("span", {
3834
+ key: 1,
3835
+ class: l(e.item.getActionBarItemTitleCss())
3836
+ }, I(e.item.title), 3)) : m("", !0)
3837
+ ], 42, mt),
3838
+ h(d, {
3839
+ model: e.item.popupModel,
3840
+ getTarget: b(n)
3841
+ }, null, 8, ["model", "getTarget"])
3842
+ ], 64);
3843
+ };
3844
+ }
3845
+ }), pt = /* @__PURE__ */ C({
3846
+ __name: "ActionBarSeparator",
3847
+ props: {
3848
+ item: {}
3849
+ },
3850
+ setup(r) {
3851
+ const o = r, n = R(() => o.item && o.item.innerCss);
3852
+ return (s, e) => (t(), u("div", {
3853
+ class: l(["sv-action-bar-separator", n.value])
3854
+ }, null, 2));
3855
+ }
3856
+ }), vt = ["aria-label", "placeholder", "value"], qt = ["aria-label"], yt = ["id"], gt = /* @__PURE__ */ C({
3857
+ __name: "List",
3858
+ props: {
3859
+ model: {}
3860
+ },
3861
+ setup(r) {
3862
+ const o = r, n = T(null), s = (a) => {
3863
+ const d = o.model;
3864
+ d.filterString = a.target.value;
3865
+ }, e = (a) => {
3866
+ const d = o.model;
3867
+ d.filterString = a.target.value, o.model.goToItems(a);
3868
+ }, i = (a) => {
3869
+ o.model.onMouseMove(a);
3870
+ };
3871
+ return B(() => o.model), E(() => {
3872
+ o.model.initListContainerHtmlElement(n.value);
3873
+ }), (a, d) => {
3874
+ const c = q("sv-svg-icon"), v = q("sv-list-item");
3875
+ return t(), u("div", {
3876
+ class: l(a.model.cssClasses.root),
3877
+ ref_key: "listContainerElement",
3878
+ ref: n
3879
+ }, [
3880
+ a.model.showFilter ? (t(), u("div", {
3881
+ key: 0,
3882
+ class: l(a.model.cssClasses.filter)
3883
+ }, [
3884
+ p("div", {
3885
+ class: l(a.model.cssClasses.filterIcon)
3886
+ }, [
3887
+ h(c, {
3888
+ iconName: "icon-search",
3889
+ size: "auto"
3890
+ })
3891
+ ], 2),
3892
+ p("input", {
3893
+ type: "text",
3894
+ class: l(a.model.cssClasses.filterInput),
3895
+ "aria-label": a.model.filterStringPlaceholder,
3896
+ placeholder: a.model.filterStringPlaceholder,
3897
+ value: a.model.filterString,
3898
+ onChange: s,
3899
+ onKeyup: e
3900
+ }, null, 42, vt),
3901
+ a.model.showSearchClearButton && !!a.model.filterString ? (t(), u("button", {
3902
+ key: 0,
3903
+ onClick: d[0] || (d[0] = (f) => {
3904
+ a.model.onClickSearchClearButton(f);
3905
+ }),
3906
+ class: l(a.model.cssClasses.searchClearButtonIcon)
3907
+ }, [
3908
+ h(c, {
3909
+ iconName: "icon-searchclear",
3910
+ size: "auto"
3911
+ })
3912
+ ], 2)) : m("", !0)
3913
+ ], 2)) : m("", !0),
3914
+ D(p("div", {
3915
+ class: l(a.model.cssClasses.emptyContainer)
3916
+ }, [
3917
+ p("div", {
3918
+ class: l(a.model.cssClasses.emptyText),
3919
+ "aria-label": a.model.emptyMessage
3920
+ }, I(a.model.emptyMessage), 11, qt)
3921
+ ], 2), [
3922
+ [H, a.model.isEmpty]
3923
+ ]),
3924
+ a.model.renderElements ? D((t(), u("ul", {
3925
+ key: 1,
3926
+ class: l(a.model.getListClass()),
3927
+ role: "listbox",
3928
+ id: a.model.elementId,
3929
+ onMousedown: d[1] || (d[1] = (f) => {
3930
+ f.preventDefault();
3931
+ }),
3932
+ onMousemove: i,
3933
+ onKeydown: d[2] || (d[2] = (f) => {
3934
+ a.model.onKeyDown(f);
3935
+ })
3936
+ }, [
3937
+ (t(!0), u(w, null, S(a.model.renderedActions, (f) => (t(), y(v, {
3938
+ item: f,
3939
+ model: a.model,
3940
+ key: f.id
3941
+ }, null, 8, ["item", "model"]))), 128))
3942
+ ], 42, yt)), [
3943
+ [H, !a.model.isEmpty]
3944
+ ]) : m("", !0)
3945
+ ], 2);
3946
+ };
3947
+ }
3948
+ }), Ct = ["aria-selected", "id"], ht = /* @__PURE__ */ C({
3949
+ __name: "ListItem",
3950
+ props: {
3951
+ model: {},
3952
+ item: {}
3953
+ },
3954
+ setup(r) {
3955
+ const o = r, n = R(() => o.item.elementId), s = (e) => {
3956
+ o.model.onItemClick(o.item), e.stopPropagation();
3957
+ };
3958
+ return B(() => o.item), E(() => {
3959
+ setTimeout(() => {
3960
+ o.model.onLastItemRended(o.item);
3961
+ });
3962
+ }), (e, i) => {
3963
+ const a = q("sv-svg-icon"), d = q("survey-string"), c = _("key2click");
3964
+ return D((t(), u("li", {
3965
+ tabindex: "0",
3966
+ role: "option",
3967
+ "aria-selected": e.model.isItemSelected(e.item),
3968
+ key: e.item.id,
3969
+ id: n.value,
3970
+ class: l(e.model.getItemClass(e.item)),
3971
+ onClick: s
3972
+ }, [
3973
+ e.item.needSeparator ? (t(), u("div", {
3974
+ key: 0,
3975
+ class: l(e.model.cssClasses.itemSeparator)
3976
+ }, null, 2)) : m("", !0),
3977
+ p("div", {
3978
+ style: $({ paddingInlineStart: e.model.getItemIndent(e.item) }),
3979
+ class: l(e.model.cssClasses.itemBody)
3980
+ }, [
3981
+ e.item.iconName && !e.item.component ? (t(), y(a, {
3982
+ key: 0,
3983
+ class: l(e.model.cssClasses.itemIcon),
3984
+ iconName: e.item.iconName,
3985
+ size: e.item.iconSize
3986
+ }, null, 8, ["class", "iconName", "size"])) : m("", !0),
3987
+ e.item.component ? m("", !0) : (t(), y(d, {
3988
+ key: 1,
3989
+ locString: e.item.locTitle
3990
+ }, null, 8, ["locString"])),
3991
+ e.item.component ? (t(), y(N(e.item.component), {
3992
+ key: 2,
3993
+ item: e.item
3994
+ }, null, 8, ["item"])) : m("", !0)
3995
+ ], 6)
3996
+ ], 10, Ct)), [
3997
+ [H, e.model.isItemVisible(e.item)],
3998
+ [c]
3999
+ ]);
4000
+ };
4001
+ }
4002
+ }), bt = /* @__PURE__ */ C({
4003
+ __name: "Popup",
4004
+ props: {
4005
+ getTarget: { type: Function },
4006
+ model: {}
4007
+ },
4008
+ setup(r) {
4009
+ const o = r, n = F(
4010
+ oe(o.model, void 0)
4011
+ ), s = T(null);
4012
+ return Z(
4013
+ () => o.model,
4014
+ (e) => {
4015
+ n.value.dispose(), n.value = oe(e, void 0);
4016
+ },
4017
+ { immediate: !0 }
4018
+ ), B(() => n.value), E(() => {
4019
+ const e = s.value;
4020
+ n.value.setComponentElement(
4021
+ e,
4022
+ o.getTarget ? o.getTarget(e) : void 0
4023
+ );
4024
+ }), O(() => {
4025
+ n.value.dispose();
4026
+ }), (e, i) => {
4027
+ const a = q("sv-popup-container");
4028
+ return t(), u("div", {
4029
+ ref_key: "root",
4030
+ ref: s
4031
+ }, [
4032
+ h(a, { model: n.value }, null, 8, ["model"])
4033
+ ], 512);
4034
+ };
4035
+ }
4036
+ }), kt = { class: "sv-popup__shadow" }, ft = { class: "sv-popup__body-content" }, It = {
4037
+ key: 0,
4038
+ class: "sv-popup__body-header"
4039
+ }, wt = { class: "sv-popup__scrolling-content" }, Tt = { class: "sv-popup__content" }, St = {
4040
+ key: 1,
4041
+ class: "sv-popup__body-footer"
4042
+ }, Rt = /* @__PURE__ */ C({
4043
+ __name: "PopupContainer",
4044
+ props: {
4045
+ model: {}
4046
+ },
4047
+ setup(r) {
4048
+ const o = r;
4049
+ let n = !1;
4050
+ const s = (e) => {
4051
+ e.stopPropagation();
4052
+ };
4053
+ return B(() => o.model), U(() => {
4054
+ const e = o.model;
4055
+ !n && e.isVisible && o.model.updateOnShowing(), n = e.isVisible;
4056
+ }), (e, i) => {
4057
+ const a = q("sv-action-bar");
4058
+ return D((t(), u("div", {
4059
+ tabindex: "-1",
4060
+ class: l(["sv-popup", e.model.styleClass]),
4061
+ onKeydown: i[0] || (i[0] = (d) => {
4062
+ e.model.onKeyDown(d);
4063
+ }),
4064
+ onClick: i[1] || (i[1] = (d) => {
4065
+ e.model.clickOutside(d);
4066
+ })
4067
+ }, [
4068
+ p("div", {
4069
+ class: "sv-popup__container",
4070
+ style: $({
4071
+ left: e.model.left,
4072
+ top: e.model.top,
4073
+ height: e.model.height,
4074
+ width: e.model.width,
4075
+ minWidth: e.model.minWidth
4076
+ }),
4077
+ onClick: s
4078
+ }, [
4079
+ p("div", kt, [
4080
+ e.model.showHeader ? (t(), y(N(e.model.popupHeaderTemplate), {
4081
+ key: 0,
4082
+ model: e.model
4083
+ }, null, 8, ["model"])) : m("", !0),
4084
+ p("div", ft, [
4085
+ e.model.title ? (t(), u("div", It, I(e.model.title), 1)) : m("", !0),
4086
+ p("div", wt, [
4087
+ p("div", Tt, [
4088
+ (t(), y(N(e.model.contentComponentName), ye(ge(e.model.contentComponentData)), null, 16))
4089
+ ])
4090
+ ]),
4091
+ e.model.showFooter ? (t(), u("div", St, [
4092
+ h(a, {
4093
+ model: e.model.footerToolbar
4094
+ }, null, 8, ["model"])
4095
+ ])) : m("", !0)
4096
+ ])
4097
+ ])
4098
+ ], 4)
4099
+ ], 34)), [
4100
+ [H, e.model.isVisible]
4101
+ ]);
4102
+ };
4103
+ }
4104
+ }), $t = /* @__PURE__ */ C({
4105
+ __name: "PopupPointer",
4106
+ props: {
4107
+ model: {}
4108
+ },
4109
+ setup(r) {
4110
+ return (o, n) => (t(), u("span", {
4111
+ class: "sv-popup__pointer",
4112
+ style: $({
4113
+ left: o.model.pointerTarget.left,
4114
+ top: o.model.pointerTarget.top
4115
+ })
4116
+ }, null, 4));
4117
+ }
4118
+ }), Bt = {
4119
+ key: 0,
4120
+ class: "sv-components-column"
4121
+ }, Lt = /* @__PURE__ */ C({
4122
+ __name: "Container",
4123
+ props: {
4124
+ survey: {},
4125
+ container: {},
4126
+ needRenderWrapper: {}
4127
+ },
4128
+ setup(r) {
4129
+ const o = r, n = R(
4130
+ () => o.survey.getContainerContent(o.container)
4131
+ );
4132
+ return (s, e) => n.value.length > 0 ? (t(), u(w, { key: 0 }, [
4133
+ s.needRenderWrapper ? (t(), u("div", Bt, [
4134
+ (t(!0), u(w, null, S(n.value, (i, a) => (t(), y(N(i.component), {
4135
+ survey: s.survey,
4136
+ model: i.data
4137
+ }, null, 8, ["survey", "model"]))), 256))
4138
+ ])) : (t(!0), u(w, { key: 1 }, S(n.value, (i, a) => (t(), y(N(i.component), {
4139
+ survey: s.survey,
4140
+ model: i.data
4141
+ }, null, 8, ["survey", "model"]))), 256))
4142
+ ], 64)) : m("", !0);
4143
+ }
4144
+ }), Q = /* @__PURE__ */ C({
4145
+ __name: "Progress",
4146
+ props: {
4147
+ survey: {},
4148
+ css: {}
4149
+ },
4150
+ setup(r) {
4151
+ const o = r, n = R(() => o.survey.progressValue + "%"), s = (i) => te.getProgressTextInBarCss(i), e = (i) => te.getProgressTextUnderBarCss(i);
4152
+ return (i, a) => (t(), u("div", {
4153
+ class: l(i.survey.getProgressCssClasses())
4154
+ }, [
4155
+ p("div", {
4156
+ class: l(i.survey.css.progressBar),
4157
+ style: $({ width: n.value }),
4158
+ role: "progressbar",
4159
+ "aria-valuemin": "0",
4160
+ "aria-valuemax": "100"
4161
+ }, [
4162
+ p("span", {
4163
+ class: l(s(i.survey.css))
4164
+ }, I(i.survey.progressText), 3)
4165
+ ], 6),
4166
+ p("span", {
4167
+ class: l(e(i.survey.css))
4168
+ }, I(i.survey.progressText), 3)
4169
+ ], 2));
4170
+ }
4171
+ }), Dt = ["onClick"], Pt = ["title"], Mt = ["title"], Nt = /* @__PURE__ */ C({
4172
+ __name: "ProgressButtons",
4173
+ props: {
4174
+ survey: {}
4175
+ },
4176
+ setup(r) {
4177
+ const o = r, n = new $e(o.survey), s = T(!1), e = T(), i = R(() => o.survey.css);
4178
+ let a;
4179
+ const d = (k) => n.isListElementClickable(k), c = (k) => n.getListElementCss(k), v = (k) => {
4180
+ n.clickListElement(k);
4181
+ }, f = (k, P) => n.getScrollButtonCss(k, P), g = (k) => {
4182
+ let P = e.value;
4183
+ P.scrollLeft += (k ? -1 : 1) * 70;
4184
+ };
4185
+ return E(() => {
4186
+ const k = e.value;
4187
+ a = setInterval(() => {
4188
+ s.value = k.scrollWidth > k.offsetWidth;
4189
+ }, 100);
4190
+ }), J(() => {
4191
+ typeof a < "u" && (clearInterval(a), a = void 0);
4192
+ }), (k, P) => (t(), u("div", {
4193
+ class: l(i.value.progressButtonsContainerCenter)
4194
+ }, [
4195
+ p("div", {
4196
+ class: l(i.value.progressButtonsContainer)
4197
+ }, [
4198
+ p("div", {
4199
+ class: l(f(s.value, !0)),
4200
+ onClick: P[0] || (P[0] = (L) => g(!0)),
4201
+ role: "button"
4202
+ }, null, 2),
4203
+ p("div", {
4204
+ class: l(i.value.progressButtonsListContainer),
4205
+ ref_key: "progressButtonsListContainer",
4206
+ ref: e
4207
+ }, [
4208
+ p("ul", {
4209
+ class: l(i.value.progressButtonsList)
4210
+ }, [
4211
+ (t(!0), u(w, null, S(k.survey.visiblePages, (L, A) => (t(), u("li", {
4212
+ key: "listelement" + A,
4213
+ class: l(c(A)),
4214
+ onClick: (j) => d(A) ? v(A) : null
4215
+ }, [
4216
+ p("div", {
4217
+ class: l(i.value.progressButtonsPageTitle),
4218
+ title: L.locNavigationTitle.renderedHtml || L.name
4219
+ }, I(L.locNavigationTitle.renderedHtml || L.name), 11, Pt),
4220
+ p("div", {
4221
+ class: l(i.value.progressButtonsPageDescription),
4222
+ title: L.locNavigationDescription.renderedHtml
4223
+ }, I(L.locNavigationDescription.renderedHtml), 11, Mt)
4224
+ ], 10, Dt))), 128))
4225
+ ], 2)
4226
+ ], 2),
4227
+ p("div", {
4228
+ class: l(f(s.value, !1)),
4229
+ onClick: P[1] || (P[1] = (L) => g(!1)),
4230
+ role: "button"
4231
+ }, null, 2)
4232
+ ], 2)
4233
+ ], 2));
4234
+ }
4235
+ }), Ht = /* @__PURE__ */ C({
4236
+ __name: "ProgressToc",
4237
+ props: {
4238
+ survey: {}
4239
+ },
4240
+ setup(r) {
4241
+ const o = r, n = new Be(o.survey);
4242
+ return (s, e) => {
4243
+ const i = q("sv-svg-icon"), a = q("sv-popup"), d = q("sv-list"), c = _("key2click");
4244
+ return t(), u("div", {
4245
+ class: l(b(n).containerCss)
4246
+ }, [
4247
+ b(n).isMobile ? D((t(), u("div", {
4248
+ key: 0,
4249
+ onClick: e[0] || (e[0] = (...v) => b(n).togglePopup && b(n).togglePopup(...v))
4250
+ }, [
4251
+ h(i, {
4252
+ iconName: b(n).icon,
4253
+ size: 24
4254
+ }, null, 8, ["iconName"]),
4255
+ h(a, {
4256
+ model: b(n).popupModel
4257
+ }, null, 8, ["model"])
4258
+ ])), [
4259
+ [c]
4260
+ ]) : (t(), y(d, {
4261
+ key: 1,
4262
+ model: b(n).listModel
4263
+ }, null, 8, ["model"]))
4264
+ ], 2);
4265
+ };
4266
+ }
4267
+ }), Et = { onsubmit: "return false;" }, At = {
4268
+ key: 0,
4269
+ class: "sv_custom_header"
4270
+ }, Ot = ["id"], Vt = { key: 1 }, Ft = ["innerHTML"], Wt = ["innerHTML"], zt = ["innerHTML"], le = /* @__PURE__ */ C({
4271
+ __name: "Survey",
4272
+ props: {
4273
+ model: {},
4274
+ survey: {}
4275
+ },
4276
+ setup(r) {
4277
+ const o = r, n = T(), s = T(""), e = T(1), i = R(() => {
4278
+ const k = o.survey ? o.survey : o.model;
4279
+ return Ce(k);
4280
+ }), a = R(() => i.value.activePage ? i.value.activePage.id : ""), d = () => {
4281
+ const k = a.value;
4282
+ return !!i.value && k + e.value.toString();
4283
+ }, c = R(
4284
+ () => i.value.showCompletedPage && i.value.state === "completed"
4285
+ ), v = R(() => i.value.css), f = R(() => "page" + d()), g = () => c.value ? (s.value || (s.value = i.value.processedCompletedHtml), s.value) : "";
4286
+ return B(() => i.value), E(() => {
4287
+ if (!!i.value) {
4288
+ i.value.needRenderIcons && Le.renderIcons();
4289
+ var k = n.value;
4290
+ k && i.value.afterRenderSurvey(k), i.value.renderCallback = () => {
4291
+ var P, L;
4292
+ e.value++, (L = (P = x()) == null ? void 0 : P.proxy) == null || L.$forceUpdate();
4293
+ }, i.value.startTimerFromUI();
4294
+ }
4295
+ }), O(() => {
4296
+ i.value.stopTimer(), i.value.renderCallback = void 0;
4297
+ }), (k, P) => {
4298
+ const L = q("survey-popup-modal"), A = q("survey-header"), j = q("survey-page"), X = q("sv-brand-info"), ue = q("sv-notifier");
4299
+ return t(), u("div", {
4300
+ class: l(i.value.getRootCss()),
4301
+ style: $(i.value.themeVariables),
4302
+ ref_key: "root",
4303
+ ref: n
4304
+ }, [
4305
+ h(L),
4306
+ i.value.renderBackgroundImage ? (t(), u("div", {
4307
+ key: 0,
4308
+ class: l(v.value.rootBackgroundImage),
4309
+ style: $(i.value.backgroundImageStyle)
4310
+ }, null, 6)) : m("", !0),
4311
+ p("form", Et, [
4312
+ i.value.hasLogo ? m("", !0) : (t(), u("div", At)),
4313
+ p("div", {
4314
+ class: l(v.value.container)
4315
+ }, [
4316
+ h(A, { survey: i.value }, null, 8, ["survey"]),
4317
+ (t(), y(N("sv-components-container"), {
4318
+ survey: i.value,
4319
+ container: "header",
4320
+ needRenderWrapper: !1
4321
+ }, null, 8, ["survey"])),
4322
+ i.value.isShowingPage ? (t(), u("div", {
4323
+ key: 0,
4324
+ class: l(i.value.bodyContainerCss)
4325
+ }, [
4326
+ (t(), y(N("sv-components-container"), {
4327
+ survey: i.value,
4328
+ container: "left",
4329
+ needRenderWrapper: !0
4330
+ }, null, 8, ["survey"])),
4331
+ p("div", {
4332
+ class: l(i.value.bodyCss),
4333
+ style: $({ maxWidth: i.value.renderedWidth }),
4334
+ id: a.value
4335
+ }, [
4336
+ (t(), y(N("sv-components-container"), {
4337
+ survey: i.value,
4338
+ container: "contentTop",
4339
+ needRenderWrapper: !0
4340
+ }, null, 8, ["survey"])),
4341
+ (t(), y(j, {
4342
+ key: f.value,
4343
+ survey: i.value,
4344
+ page: i.value.activePage,
4345
+ css: v.value
4346
+ }, null, 8, ["survey", "page", "css"])),
4347
+ (t(), y(N("sv-components-container"), {
4348
+ survey: i.value,
4349
+ container: "contentBottom",
4350
+ needRenderWrapper: !0
4351
+ }, null, 8, ["survey"]))
4352
+ ], 14, Ot),
4353
+ (t(), y(N("sv-components-container"), {
4354
+ survey: i.value,
4355
+ container: "right",
4356
+ needRenderWrapper: !0
4357
+ }, null, 8, ["survey"]))
4358
+ ], 2)) : m("", !0),
4359
+ (t(), y(N("sv-components-container"), {
4360
+ survey: i.value,
4361
+ container: "footer",
4362
+ needRenderWrapper: !1
4363
+ }, null, 8, ["survey"])),
4364
+ c.value ? (t(), u("div", Vt, [
4365
+ p("div", {
4366
+ innerHTML: g(),
4367
+ class: l(i.value.completedCss)
4368
+ }, null, 10, Ft)
4369
+ ])) : m("", !0),
4370
+ i.value.state === "completedbefore" ? (t(), u("div", {
4371
+ key: 2,
4372
+ class: l(v.value.body),
4373
+ innerHTML: i.value.processedCompletedBeforeHtml
4374
+ }, null, 10, Wt)) : m("", !0),
4375
+ i.value.state === "loading" ? (t(), u("div", {
4376
+ key: 3,
4377
+ class: l(v.value.body),
4378
+ innerHTML: i.value.processedLoadingHtml
4379
+ }, null, 10, zt)) : m("", !0),
4380
+ i.value.state === "empty" ? (t(), u("div", {
4381
+ key: 4,
4382
+ class: l(v.value.bodyEmpty)
4383
+ }, I(i.value.emptySurveyText), 3)) : m("", !0)
4384
+ ], 2)
4385
+ ]),
4386
+ i.value.showBrandInfo ? (t(), y(X, { key: 1 })) : m("", !0),
4387
+ h(ue, {
4388
+ model: i.value.notifier
4389
+ }, null, 8, ["model"])
4390
+ ], 6);
4391
+ };
4392
+ }
4393
+ }), Ut = /* @__PURE__ */ C({
4394
+ __name: "Notifier",
4395
+ props: {
4396
+ model: {}
4397
+ },
4398
+ setup(r) {
4399
+ const o = r;
4400
+ return B(() => o.model), (n, s) => {
4401
+ const e = q("sv-action-bar");
4402
+ return D((t(), u("div", {
4403
+ class: l(n.model.css),
4404
+ style: $({ visibility: n.model.active ? "visible" : "hidden" }),
4405
+ role: "alert",
4406
+ "aria-live": "polite"
4407
+ }, [
4408
+ p("span", null, I(n.model.message), 1),
4409
+ h(e, {
4410
+ model: n.model.actionBar
4411
+ }, null, 8, ["model"])
4412
+ ], 6)), [
4413
+ [H, n.model.isDisplayed]
4414
+ ]);
4415
+ };
4416
+ }
4417
+ }), Kt = ["id", "readonly", "disabled", "value", "maxlength", "placeholder", "aria-label", "aria-required"], jt = { key: 1 }, Qt = /* @__PURE__ */ C({
4418
+ __name: "QuestionOther",
4419
+ props: {
4420
+ question: {},
4421
+ commentClass: {}
4422
+ },
4423
+ setup(r) {
4424
+ return (o, n) => (t(), u("div", {
4425
+ class: l(o.question.getCommentAreaCss(!0))
4426
+ }, [
4427
+ o.question.isReadOnlyRenderDiv() ? m("", !0) : (t(), u("textarea", {
4428
+ key: 0,
4429
+ id: o.question.otherId,
4430
+ readonly: o.question.isInputReadOnly,
4431
+ disabled: o.question.isInputReadOnly,
4432
+ class: l(o.question.cssClasses.other || o.commentClass),
4433
+ value: o.question.otherValue,
4434
+ maxlength: o.question.getOthersMaxLength(),
4435
+ placeholder: o.question.otherPlaceholder,
4436
+ "aria-label": o.question.ariaLabel,
4437
+ "aria-required": o.question.ariaRequired,
4438
+ style: $({ resize: o.question.resizeStyle }),
4439
+ onChange: n[0] || (n[0] = (s) => {
4440
+ o.question.onOtherValueChange(s);
4441
+ }),
4442
+ onInput: n[1] || (n[1] = (s) => {
4443
+ o.question.onOtherValueInput(s);
4444
+ })
4445
+ }, null, 46, Kt)),
4446
+ o.question.isReadOnlyRenderDiv() ? (t(), u("div", jt, I(o.question.otherValue), 1)) : m("", !0)
4447
+ ], 2));
4448
+ }
4449
+ }), Zt = ["disabled", "value", "title"], Gt = /* @__PURE__ */ C({
4450
+ __name: "SurveyNavigationButton",
4451
+ props: {
4452
+ item: {}
4453
+ },
4454
+ setup(r) {
4455
+ const o = r, n = () => o.item.data && o.item.data.mouseDown();
4456
+ return B(() => o.item), (s, e) => s.item.visible ? (t(), u("input", {
4457
+ key: 0,
4458
+ type: "button",
4459
+ disabled: s.item.disabled,
4460
+ value: s.item.title,
4461
+ class: l(s.item.innerCss),
4462
+ title: s.item.getTooltip(),
4463
+ onMousedown: n,
4464
+ onClick: e[0] || (e[0] = (...i) => s.item.action && s.item.action(...i))
4465
+ }, null, 42, Zt)) : m("", !0);
4466
+ }
4467
+ }), Xt = /* @__PURE__ */ C({
4468
+ __name: "PopupSurvey",
4469
+ props: {
4470
+ survey: {},
4471
+ isExpanded: { type: Boolean },
4472
+ closeOnCompleteTimeout: {}
4473
+ },
4474
+ setup(r) {
4475
+ const o = r, n = F(), s = R(() => o.survey ? o.survey.getCss() : {}), e = R(() => {
4476
+ var g;
4477
+ return (g = n.value) != null && g.isExpanded ? s.value.window.header.buttonCollapsed : s.value.window.header.buttonExpanded;
4478
+ }), i = R(() => {
4479
+ var g;
4480
+ return (g = n.value) == null ? void 0 : g.isExpanded;
4481
+ }), a = () => {
4482
+ n.value.changeExpandCollapse();
4483
+ }, d = () => {
4484
+ n.value.hide();
4485
+ }, c = () => "SurveyRoot", v = () => {
4486
+ n.value.onScroll();
4487
+ };
4488
+ B(() => n.value);
4489
+ const f = Z(
4490
+ () => o.survey,
4491
+ (g) => {
4492
+ const k = new De(null, g);
4493
+ o.isExpanded !== void 0 && (k.isExpanded = o.isExpanded), o.closeOnCompleteTimeout !== void 0 && (k.closeOnCompleteTimeout = o.closeOnCompleteTimeout), k.isShowing = !0, n.value = k;
4494
+ },
4495
+ {
4496
+ immediate: !0
4497
+ }
4498
+ );
4499
+ return O(() => {
4500
+ f();
4501
+ }), (g, k) => {
4502
+ const P = q("survey-string"), L = q("sv-svg-icon");
4503
+ return n.value.isShowing ? (t(), u("div", {
4504
+ key: 0,
4505
+ style: $([{ position: "fixed", bottom: "3px", right: "10px" }, {
4506
+ maxWidth: n.value.renderedWidth,
4507
+ width: n.value.renderedWidth
4508
+ }]),
4509
+ class: l(n.value.cssRoot)
4510
+ }, [
4511
+ p("div", {
4512
+ class: l(n.value.cssHeaderRoot)
4513
+ }, [
4514
+ p("span", {
4515
+ onClick: a,
4516
+ style: { width: "100%", cursor: "pointer", "user-select": "none" }
4517
+ }, [
4518
+ p("span", {
4519
+ style: { "padding-right": "10px" },
4520
+ class: l(n.value.cssHeaderTitle)
4521
+ }, [
4522
+ h(P, {
4523
+ locString: g.survey.locTitle
4524
+ }, null, 8, ["locString"])
4525
+ ], 2),
4526
+ p("span", {
4527
+ "aria-hidden": "true",
4528
+ class: l(e.value)
4529
+ }, null, 2)
4530
+ ]),
4531
+ n.value.allowClose ? (t(), u("span", {
4532
+ key: 0,
4533
+ class: l(n.value.cssHeaderButton),
4534
+ onClick: d,
4535
+ style: { transform: "rotate(45deg)", float: "right", cursor: "pointer", "user-select": "none", width: "24px", height: "24px" }
4536
+ }, [
4537
+ h(L, {
4538
+ iconName: "icon-expanddetail",
4539
+ size: 16
4540
+ })
4541
+ ], 2)) : m("", !0),
4542
+ i.value ? (t(), u("span", {
4543
+ key: 1,
4544
+ class: l(n.value.cssHeaderButton),
4545
+ onClick: a,
4546
+ style: { float: "right", cursor: "pointer", "user-select": "none", width: "24px", height: "24px" }
4547
+ }, [
4548
+ h(L, {
4549
+ iconName: "icon-collapsedetail",
4550
+ size: 16
4551
+ })
4552
+ ], 2)) : m("", !0)
4553
+ ], 2),
4554
+ i.value ? (t(), u("div", {
4555
+ key: 0,
4556
+ class: l(n.value.cssBody),
4557
+ onScroll: v
4558
+ }, [
4559
+ (t(), y(N(c()), { survey: g.survey }, null, 8, ["survey"]))
4560
+ ], 34)) : m("", !0)
4561
+ ], 6)) : m("", !0);
4562
+ };
4563
+ }
4564
+ }), Jt = ["innerHTML"], Yt = /* @__PURE__ */ C({
4565
+ __name: "CustomWidget",
4566
+ props: {
4567
+ question: {},
4568
+ css: {}
4569
+ },
4570
+ setup(r) {
4571
+ const o = r, n = T(), s = R(
4572
+ () => o.question.customWidget.isDefaultRender
4573
+ ), e = R(
4574
+ () => !!o.question.customWidget.htmlTemplate
4575
+ ), i = R(() => o.question.customWidget.htmlTemplate), a = R(() => "survey-" + o.question.getTemplate());
4576
+ return E(() => {
4577
+ o.question.customWidget.afterRender(o.question, n.value);
4578
+ }), J(() => {
4579
+ o.question.customWidget.willUnmount(o.question, n.value);
4580
+ }), (d, c) => (t(), u("div", {
4581
+ ref_key: "root",
4582
+ ref: n
4583
+ }, [
4584
+ e.value ? (t(), u("div", {
4585
+ key: 0,
4586
+ innerHTML: i.value
4587
+ }, null, 8, Jt)) : m("", !0),
4588
+ s.value ? (t(), y(N(a.value), {
4589
+ key: 1,
4590
+ question: d.question,
4591
+ css: d.css
4592
+ }, null, 8, ["question", "css"])) : m("", !0)
4593
+ ], 512));
4594
+ }
4595
+ }), _t = /* @__PURE__ */ C({
4596
+ __name: "PopupModal",
4597
+ setup(r) {
4598
+ const o = F();
4599
+ function n(e, i, a, d, c, v, f = "popup") {
4600
+ const g = Pe(
4601
+ e,
4602
+ i,
4603
+ a,
4604
+ d,
4605
+ void 0,
4606
+ void 0,
4607
+ c,
4608
+ v,
4609
+ f
4610
+ );
4611
+ return s(g);
4612
+ }
4613
+ function s(e, i) {
4614
+ e.onHide = () => {
4615
+ o.value = void 0, a.dispose();
4616
+ };
4617
+ const a = Me(
4618
+ e,
4619
+ i
4620
+ );
4621
+ return a.model.isVisible = !0, o.value = a, a;
4622
+ }
4623
+ return V.showModal || (V.showModal = n, O(() => {
4624
+ V.showModal = void 0;
4625
+ })), V.showDialog || (V.showDialog = s, O(() => {
4626
+ V.showDialog = void 0;
4627
+ })), (e, i) => {
4628
+ const a = q("sv-popup-container");
4629
+ return o.value ? (t(), y(he, {
4630
+ key: 0,
4631
+ to: o.value.container
4632
+ }, [
4633
+ h(a, { model: o.value }, null, 8, ["model"])
4634
+ ], 8, ["to"])) : m("", !0);
4635
+ };
4636
+ }
4637
+ }), xt = /* @__PURE__ */ C({
4638
+ __name: "CharacterCounter",
4639
+ props: {
4640
+ counter: {},
4641
+ remainingCharacterCounter: {}
4642
+ },
4643
+ setup(r) {
4644
+ const o = r;
4645
+ return B(() => o.counter), (n, s) => (t(), u("div", {
4646
+ class: l(n.remainingCharacterCounter)
4647
+ }, I(n.counter.remainingCharacterCounter), 3));
4648
+ }
4649
+ }), ei = /* @__PURE__ */ C({
4650
+ __name: "Composite",
4651
+ props: {
4652
+ question: {},
4653
+ css: {}
4654
+ },
4655
+ setup(r) {
4656
+ const o = r, n = T(null);
4657
+ M(o, n);
4658
+ const s = R(() => o.question.contentPanel);
4659
+ return (e, i) => {
4660
+ const a = q("survey-panel");
4661
+ return t(), y(a, {
4662
+ ref_key: "root",
4663
+ ref: n,
4664
+ question: s.value,
4665
+ css: e.css
4666
+ }, null, 8, ["question", "css"]);
4667
+ };
4668
+ }
4669
+ }), si = /* @__PURE__ */ C({
4670
+ __name: "Custom",
4671
+ props: {
4672
+ question: {},
4673
+ css: {}
4674
+ },
4675
+ setup(r) {
4676
+ const o = r, n = T(null);
4677
+ M(o, n);
4678
+ const s = R(() => o.question.contentQuestion), e = (i) => ee(i);
4679
+ return (i, a) => (t(), y(N(e(s.value)), {
4680
+ ref: n.value,
4681
+ question: s.value,
4682
+ css: i.css
4683
+ }, null, 8, ["question", "css"]));
4684
+ }
4685
+ }), ni = /* @__PURE__ */ p("use", { "xlink:href": "#icon-timercircle" }, null, -1), oi = [
4686
+ ni
4687
+ ], re = 440, ti = /* @__PURE__ */ C({
4688
+ __name: "TimerPanel",
4689
+ props: {
4690
+ model: {},
4691
+ css: {}
4692
+ },
4693
+ setup(r) {
4694
+ const o = r, n = R(() => re * o.model.progress), s = R(() => o.model.text);
4695
+ return B(() => o.model), (e, i) => e.model.isRunning && e.model.showTimerAsClock ? (t(), u("div", {
4696
+ key: 0,
4697
+ class: l(e.model.rootCss)
4698
+ }, [
4699
+ e.model.showProgress ? (t(), u("svg", {
4700
+ key: 0,
4701
+ class: l(e.model.getProgressCss()),
4702
+ style: $({ strokeDasharray: re, strokeDashoffset: n.value })
4703
+ }, oi, 6)) : m("", !0),
4704
+ p("div", {
4705
+ class: l(e.model.textContainerCss)
4706
+ }, [
4707
+ p("span", {
4708
+ class: l(e.model.majorTextCss)
4709
+ }, I(e.model.clockMajorText), 3),
4710
+ e.model.clockMinorText ? (t(), u("span", {
4711
+ key: 0,
4712
+ class: l(e.model.minorTextCss)
4713
+ }, I(e.model.clockMinorText), 3)) : m("", !0)
4714
+ ], 2)
4715
+ ], 2)) : D((t(), u("div", {
4716
+ key: 1,
4717
+ class: l(e.model.survey.getCss().timerRoot)
4718
+ }, I(s.value), 3)), [
4719
+ [H, e.model.isRunning && !e.model.showTimerAsClock]
4720
+ ]);
4721
+ }
4722
+ });
4723
+ function ii(r) {
4724
+ r.component("SurveyRoot", le), r.component("survey", le), r.component("survey-header", Fe), r.component("survey-page", Ae), r.component("survey-row", We), r.component("survey-element", Ue), r.component("survey-panel", Qe), r.component("survey-element-header", Ze), r.component("survey-string", Ge), r.component("sv-string-viewer", Ye), r.component("sv-string-editor", xe), r.component("sv-skeleton", ss), r.component("survey-text", ts), r.component("survey-text-input", as), r.component("survey-checkbox", ds), r.component("survey-checkbox-item", ys), r.component("survey-radiogroup", hs), r.component("survey-radiogroup-item", ws), r.component("survey-signaturepad", $s), r.component("survey-html", Ls), r.component("survey-image", Ns), r.component("survey-expression", Hs), r.component("survey-file", Us), r.component("survey-imagepicker", js), r.component("survey-imagepicker-item", Js), r.component("survey-comment", xs), r.component("survey-dropdown", en), r.component("sv-dropdown-select", tn), r.component("sv-dropdown-option-item", rn), r.component("sv-dropdown", cn), r.component("survey-tagbox", pn), r.component("sv-tagbox", yn), r.component("sv-tagbox-item", kn), r.component("sv-tagbox-filter", hn), r.component("survey-ranking", fn), r.component("survey-ranking-item", Ln), r.component("survey-rating", Mn), r.component("sv-rating-item", Hn), r.component("sv-rating-item-smiley", An), r.component("sv-rating-item-star", Vn), r.component("sv-rating-dropdown", Fn), r.component("survey-boolean", zn), r.component("sv-boolean-radio", Un), r.component("sv-boolean-radio-item", Qn), r.component("sv-boolean-checkbox", Yn), r.component("survey-multipletext", _n), r.component("survey-multipletext-item", xn), r.component("survey-matrix", ro), r.component("survey-matrixdropdown", ao), r.component("survey-matrixtable", po), r.component("survey-matrixheaderrequired", vo), r.component("survey-matrixcell", yo), r.component("survey-matrixdynamic", go), r.component("sv-matrix-remove-button", ho), r.component("sv-matrix-drag-drop-icon", ko), r.component("sv-matrix-detail-button", Io), r.component("survey-paneldynamic", wo), r.component("survey-paneldynamicprogress", To), r.component("survey-paneldynamicprogress-v2", So), r.component("sv-paneldynamic-add-btn", Ro), r.component("sv-paneldynamic-next-btn", Bo), r.component("sv-paneldynamic-prev-btn", Do), r.component("sv-paneldynamic-remove-btn", Po), r.component("sv-paneldynamic-progress-text", Mo), r.component("sv-components-container", Lt), r.component("sv-progress-buttons", Nt), r.component("sv-progress-toc", Ht), r.component("sv-progress-pages", Q), r.component("sv-progress-questions", Q), r.component("sv-progress-correctquestions", Q), r.component("sv-progress-requiredquestions", Q), r.component("survey-errors", Ho), r.component("survey-question-comment", Oo), r.component("survey-element-title", Vo), r.component("survey-element-title-content", Ko), r.component("sv-title-actions", Zo), r.component("sv-brand-info", et), r.component("sv-svg-icon", tt), r.component("sv-action-bar", it), r.component("sv-action", at), r.component("sv-action-bar-item", dt), r.component("sv-action-bar-item-dropdown", ct), r.component("sv-action-bar-separator", pt), r.component("sv-list", gt), r.component("sv-list-item", ht), r.component("sv-popup", bt), r.component("sv-popup-container", Rt), r.component("popup-pointer", $t), r.component("sv-notifier", Ut), r.component("survey-other-choice", Qt), r.component("sv-nav-btn", Gt), r.component("popup-survey", Xt), r.component("survey-customwidget", Yt), r.component("survey-popup-modal", _t), r.component("sv-character-counter", xt), r.component("survey-composite", ei), r.component("survey-custom", si), r.component("sv-timerpanel", ti), r.directive("key2click", {
4725
+ mounted: function(o, n) {
4726
+ const s = { ...n.value };
4727
+ s.disableTabStop || (o.tabIndex = 0), o.addEventListener("keyup", (e) => (e.preventDefault(), e.stopPropagation(), ae(e, s), !1)), o.addEventListener("keydown", (e) => {
4728
+ Ne(e, s);
4729
+ }), o.addEventListener("blur", (e) => {
4730
+ He(e);
4731
+ });
4732
+ }
4733
+ });
4734
+ }
4735
+ const ai = {
4736
+ install(r) {
4737
+ ii(r);
4738
+ }
4739
+ };
4740
+ export {
4741
+ ai as surveyPlugin,
4742
+ B as useBase,
4743
+ W as useLocString,
4744
+ M as useQuestion
4745
+ };