@knime/jsonforms 1.15.0 → 1.15.1

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 (117) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/AnyOfTwinlist-BmHETHvW.js +28 -0
  3. package/dist/{Button-Cqwayw73.js → Button-B9RSLVI2.js} +8 -7
  4. package/dist/CheckboxControl-q88fZSZD.js +58 -0
  5. package/dist/Checkboxes-Bofcg7tl.js +120 -0
  6. package/dist/CheckboxesControl-DY0R1PDD.js +47 -0
  7. package/dist/{ComboBoxControl-R0DlbAdT.js → ComboBoxControl-2r1FWcy-.js} +234 -165
  8. package/dist/DateControl-vnkppn62.js +38 -0
  9. package/dist/DateTimeControl-MkF9G3Xz.js +53 -0
  10. package/dist/DateTimeFormatInput-Ds2VLXw1.js +426 -0
  11. package/dist/DateTimeFormatPickerControl-D3OjZCj7.js +47 -0
  12. package/dist/DateTimeFormatPickerWithTypeControl-DDto-oJk.js +85 -0
  13. package/dist/{DateTimeInput-Cs0KqlOS.js → DateTimeInput-DcwhvMD2.js} +421 -377
  14. package/dist/{Dropdown-BEx-cvXH.js → Dropdown-D49sEHBa.js} +140 -85
  15. package/dist/DropdownControl-aeEqC-Yg.js +46 -0
  16. package/dist/HorizontalLayout-D0toQmVl.js +39 -0
  17. package/dist/{InputField-OkFB9VHZ.js → InputField-C_aZPs-f.js} +48 -36
  18. package/dist/IntegerControl-DAwniqjW.js +33 -0
  19. package/dist/IntervalControl-Bkuhg0Ga.js +647 -0
  20. package/dist/LoadingDropdown-B9jHjdWV.js +50 -0
  21. package/dist/LoadingIcon-RPBUjTO3.js +23 -0
  22. package/dist/ManualTwinlistControl-DGW-7a2Q.js +90 -0
  23. package/dist/MultiSelectListBoxControl-BYHuC9jL.js +48 -0
  24. package/dist/MultimodeTwinlistControl-oIvgI_FP.js +486 -0
  25. package/dist/{MultimodeTwinlistControl.vue_vue_type_style_index_0_scoped_37fe7036_lang-2fVBipAl.js → MultimodeTwinlistControl.vue_vue_type_style_index_0_scoped_bd2eaa56_lang-pnMOUiIt.js} +1 -1
  26. package/dist/{MultiselectListBox-CMTJnAWr.js → MultiselectListBox-CfdPbcn1.js} +96 -72
  27. package/dist/NameFilter-BV68t_P5.js +37 -0
  28. package/dist/NumberControl-Dm01CJW9.js +33 -0
  29. package/dist/NumberControlBase-CN5eTKEm.js +58 -0
  30. package/dist/{NumberInput-BepS3tAK.js → NumberInput-DWTImcA_.js} +72 -54
  31. package/dist/OneOfDropdown-DuXXP0Qn.js +50 -0
  32. package/dist/RadioControl-X6HLs9F1.js +36 -0
  33. package/dist/RadioControlBase-BGUHTIUl.js +111 -0
  34. package/dist/{RichTextControl-CE6whfV5.js → RichTextControl-B1mJMs1e.js} +4126 -3777
  35. package/dist/SectionHeading-B6JkPyMh.js +31 -0
  36. package/dist/{SectionHeading.vue_vue_type_style_index_0_scoped_625edfbe_lang-DR31vaIu.js → SectionHeading.vue_vue_type_style_index_0_scoped_f06e9b7d_lang-B5ALSUVO.js} +5456 -5284
  37. package/dist/SectionLayout-7pXn4OHo.js +61 -0
  38. package/dist/SettingsSubPanel-DToMRoLu.js +48 -0
  39. package/dist/SettingsSubPanelLayout-DnZnghFr.js +83 -0
  40. package/dist/SimpleButtonControl-DOSd92Kq.js +84 -0
  41. package/dist/SimpleTwinlistControl-RBfQTk47.js +31 -0
  42. package/dist/SingleSelectControl-C-GLQD-a.js +73 -0
  43. package/dist/SingleSelectListBoxControl-CDg_1QUT.js +260 -0
  44. package/dist/SortListControl-CWuxKIEb.js +445 -0
  45. package/dist/StyledListItem-NqAG7jSw.js +81 -0
  46. package/dist/TextAreaControl-Dt5ZGrae.js +122 -0
  47. package/dist/TextControl-w9vrCC1T.js +54 -0
  48. package/dist/TimeControl-DiNQSV4K.js +46 -0
  49. package/dist/TwinlistControlBase-CMFEecdr.js +47 -0
  50. package/dist/TwinlistLoadingInfo-Cy6HY-97.js +1080 -0
  51. package/dist/TypedStringFilter-FUF8sqOm.js +32 -0
  52. package/dist/ValueSwitch-Ozmr1YfK.js +162 -0
  53. package/dist/ValueSwitchControl-CdFlHo-2.js +33 -0
  54. package/dist/VerticalLayout-DY8gbasK.js +39 -0
  55. package/dist/VerticalLayoutBase-CpN-KONq.js +32 -0
  56. package/dist/ZonedDateTimeControl-Cg3dAfq5.js +79 -0
  57. package/dist/{_baseEach-DdH9cM67.js → _baseEach-CWap1NWh.js} +2 -2
  58. package/dist/{_baseIteratee-BGt-t7Os.js → _baseIteratee-D0MXvnuf.js} +3 -3
  59. package/dist/{_getTag-DAFySze4.js → _getTag-BvpAzjaz.js} +1 -1
  60. package/dist/{arrow-dropdown-BAFsD8Su.js → arrow-dropdown-eS-nVNCv.js} +7 -1
  61. package/dist/{arrow-next-BQVCxGb8.js → arrow-next-BmOStWql.js} +7 -1
  62. package/dist/{close-DGt8x-x_.js → close-0dYG2oDA.js} +7 -1
  63. package/dist/knime-jsonforms.css +1 -1
  64. package/dist/knime-jsonforms.js +134 -108
  65. package/dist/{localTimeUtils-NIKgHnIr.js → localTimeUtils-CfchSrLG.js} +1 -1
  66. package/dist/{reload-DCdbNLa2.js → reload-57Xc2t-6.js} +7 -1
  67. package/dist/testing.js +2 -2
  68. package/dist/{toString-BhubvA3m.js → toString-C-X8cE7K.js} +1 -1
  69. package/dist/{useBuiltinValidations-Boxrm71q.js → useBuiltinValidations-D0WuEacN.js} +1 -1
  70. package/dist/{usePossibleValues-DXuWWBh_.js → usePossibleValues-DTVXBGRC.js} +1 -1
  71. package/package.json +4 -4
  72. package/dist/AnyOfTwinlist-Co_sJAsc.js +0 -22
  73. package/dist/CheckboxControl-C10_DX1N.js +0 -40
  74. package/dist/Checkboxes-DWOxHiUX.js +0 -103
  75. package/dist/CheckboxesControl-BMRFgmO_.js +0 -38
  76. package/dist/DateControl-DAGAM92B.js +0 -29
  77. package/dist/DateTimeControl-DJhIb_U4.js +0 -45
  78. package/dist/DateTimeFormatInput-BhLQzC-P.js +0 -373
  79. package/dist/DateTimeFormatPickerControl-V7pxRYaW.js +0 -40
  80. package/dist/DateTimeFormatPickerWithTypeControl-3fa75rGw.js +0 -76
  81. package/dist/DropdownControl-DEIA5VD4.js +0 -31
  82. package/dist/HorizontalLayout-DCfhMNq4.js +0 -25
  83. package/dist/IntegerControl-Om8J7hch.js +0 -20
  84. package/dist/IntervalControl-B7UbyyD-.js +0 -545
  85. package/dist/LoadingDropdown-CINkq_Sw.js +0 -40
  86. package/dist/ManualTwinlistControl-BLTfr2gT.js +0 -79
  87. package/dist/MultiSelectListBoxControl-j1TaFtQj.js +0 -31
  88. package/dist/MultimodeTwinlistControl-BsFqHRFM.js +0 -459
  89. package/dist/NameFilter-d5k6rDVY.js +0 -24
  90. package/dist/NumberControl-Kc3hvVef.js +0 -20
  91. package/dist/NumberControlBase.vue_vue_type_script_setup_true_lang-BOCR1qXG.js +0 -50
  92. package/dist/OneOfDropdown-CLwVXrbC.js +0 -33
  93. package/dist/RadioControl-DpziR8nA.js +0 -24
  94. package/dist/RadioControlBase.vue_vue_type_script_setup_true_lang-DVIeg5W1.js +0 -104
  95. package/dist/SectionHeading-D7znCZXu.js +0 -19
  96. package/dist/SectionLayout-BhXDOzqB.js +0 -46
  97. package/dist/SettingsSubPanel-x9uWGoiu.js +0 -5
  98. package/dist/SettingsSubPanelLayout-BPHBM5n5.js +0 -62
  99. package/dist/SimpleButtonControl-DfCSlgZS.js +0 -61
  100. package/dist/SimpleTwinlistControl-CBalniCf.js +0 -25
  101. package/dist/SingleSelectControl-DC4w0ata.js +0 -58
  102. package/dist/SingleSelectListBoxControl-CKj-p8jZ.js +0 -232
  103. package/dist/SortListControl-BIUyPjCi.js +0 -377
  104. package/dist/StyledListItem-D-HJWfo5.js +0 -72
  105. package/dist/TextAreaControl-D28TQZEY.js +0 -108
  106. package/dist/TextControl-DUDBWcHy.js +0 -4
  107. package/dist/TextControl.vue_vue_type_script_setup_true_lang-DpAd3yOu.js +0 -47
  108. package/dist/TimeControl-HRooO_z3.js +0 -36
  109. package/dist/TwinlistControlBase-Brfh5pqZ.js +0 -40
  110. package/dist/TwinlistLoadingInfo-C4Tta00d.js +0 -946
  111. package/dist/TypedStringFilter-CdvgPKhD.js +0 -26
  112. package/dist/ValueSwitch-W4y1YvNM.js +0 -131
  113. package/dist/ValueSwitchControl-BaXH8Cjx.js +0 -20
  114. package/dist/VerticalLayout-ChAmRKNj.js +0 -30
  115. package/dist/VerticalLayoutBase-DAk4vfH5.js +0 -20
  116. package/dist/ZonedDateTimeControl-Qb57KmMT.js +0 -69
  117. package/dist/svgWithTitle-CnTmPYAB.js +0 -18
@@ -0,0 +1,445 @@
1
+ import { createElementBlock as x, openBlock as y, createElementVNode as h, defineComponent as P, computed as g, ref as E, watch as Z, nextTick as le, Fragment as H, createCommentVNode as R, createVNode as i, withKeys as C, withModifiers as L, withCtx as f, onMounted as ae, normalizeClass as se, createTextVNode as U, renderSlot as N } from "vue";
2
+ import { v as ie, _ as W, u as ce, E as de, L as ue } from "./SectionHeading.vue_vue_type_style_index_0_scoped_f06e9b7d_lang-B5ALSUVO.js";
3
+ import { i as me } from "./navigator-e30QQMkl.js";
4
+ import { M as fe } from "./MultiselectListBox-CfdPbcn1.js";
5
+ import { g as pe } from "./_getTag-BvpAzjaz.js";
6
+ import { b as we } from "./_baseEach-CWap1NWh.js";
7
+ import { b as ve } from "./_baseIteratee-D0MXvnuf.js";
8
+ import { i as be } from "./isArray-WzO_os3q.js";
9
+ import { c as ge } from "./createMissingItem-B00Kg95q.js";
10
+ import { B as he } from "./Button-B9RSLVI2.js";
11
+ const K = {
12
+ ArrowUp: "↑",
13
+ ArrowDown: "↓",
14
+ ArrowLeft: "←",
15
+ ArrowRight: "→",
16
+ Enter: "↵",
17
+ " ": "Space",
18
+ // we use event.key and there space is an actual space not the code "Space"
19
+ CtrlOrCmd: "Ctrl"
20
+ }, _e = {
21
+ Shift: "⇧",
22
+ Delete: "⌫",
23
+ CtrlOrCmd: "⌘",
24
+ Ctrl: "⌃",
25
+ Alt: "⌥",
26
+ Enter: "↩"
27
+ }, z = (o) => {
28
+ const t = (l) => (a) => l[a] ?? a, e = ((...l) => l.reduce((a, u) => (_) => u(a(_))))(
29
+ t(_e),
30
+ t(K)
31
+ ), r = t(K);
32
+ return me() ? e(o) : r(o);
33
+ }, Y = () => " ", Ve = (o, t = Y) => o.map(z).join(t()), Se = { formatHotkeys: Ve, formatHotkey: z, getDefaultSeparator: Y };
34
+ var O = function() {
35
+ try {
36
+ var o = pe(Object, "defineProperty");
37
+ return o({}, "", {}), o;
38
+ } catch {
39
+ }
40
+ }();
41
+ function xe(o, t, n, e) {
42
+ for (var r = o.length, l = n + -1; ++l < r; )
43
+ if (t(o[l], l, o))
44
+ return l;
45
+ return -1;
46
+ }
47
+ function ye(o) {
48
+ return o !== o;
49
+ }
50
+ function Ae(o, t, n) {
51
+ for (var e = n - 1, r = o.length; ++e < r; )
52
+ if (o[e] === t)
53
+ return e;
54
+ return -1;
55
+ }
56
+ function ke(o, t, n) {
57
+ return t === t ? Ae(o, t, n) : xe(o, ye, n);
58
+ }
59
+ function Ie(o, t, n) {
60
+ t == "__proto__" && O ? O(o, t, {
61
+ configurable: !0,
62
+ enumerable: !0,
63
+ value: n,
64
+ writable: !0
65
+ }) : o[t] = n;
66
+ }
67
+ function Ce(o, t, n, e) {
68
+ for (var r = -1, l = o == null ? 0 : o.length; ++r < l; ) {
69
+ var a = o[r];
70
+ t(e, a, n(a), o);
71
+ }
72
+ return e;
73
+ }
74
+ function Le(o, t, n, e) {
75
+ return we(o, function(r, l, a) {
76
+ t(e, r, n(r), a);
77
+ }), e;
78
+ }
79
+ function G(o, t) {
80
+ return function(n, e) {
81
+ var r = be(n) ? Ce : Le, l = t ? t() : {};
82
+ return r(n, o, ve(e), l);
83
+ };
84
+ }
85
+ function J(o, t, n) {
86
+ var e = o == null ? 0 : o.length;
87
+ if (!e)
88
+ return -1;
89
+ var r = 0;
90
+ return ke(o, t, r);
91
+ }
92
+ var Be = G(function(o, t, n) {
93
+ Ie(o, n, t);
94
+ }), Te = G(function(o, t, n) {
95
+ o[n ? 0 : 1].push(t);
96
+ }, function() {
97
+ return [[], []];
98
+ });
99
+ const Ue = {
100
+ xmlns: "http://www.w3.org/2000/svg",
101
+ fill: "none",
102
+ stroke: "#000",
103
+ "stroke-linejoin": "round",
104
+ viewBox: "0 0 32 32"
105
+ };
106
+ function Ee(o, t) {
107
+ return y(), x("svg", Ue, t[0] || (t[0] = [
108
+ h(
109
+ "path",
110
+ { d: "m27 17.1-11 11-11-11m11 11V3.9" },
111
+ null,
112
+ -1
113
+ /* CACHED */
114
+ )
115
+ ]));
116
+ }
117
+ const Fe = { render: Ee }, Me = {
118
+ xmlns: "http://www.w3.org/2000/svg",
119
+ fill: "none",
120
+ stroke: "#000",
121
+ viewBox: "0 0 32 32"
122
+ };
123
+ function De(o, t) {
124
+ return y(), x("svg", Me, t[0] || (t[0] = [
125
+ h(
126
+ "path",
127
+ { d: "M23.4 13.4 16 20.8l-7.4-7.4m7.4 7.4V4.5m12.5 23h-25" },
128
+ null,
129
+ -1
130
+ /* CACHED */
131
+ )
132
+ ]));
133
+ }
134
+ const qe = { render: De }, Ne = {
135
+ xmlns: "http://www.w3.org/2000/svg",
136
+ fill: "none",
137
+ stroke: "#000",
138
+ "stroke-linejoin": "round",
139
+ viewBox: "0 0 32 32"
140
+ };
141
+ function Ke(o, t) {
142
+ return y(), x("svg", Ne, t[0] || (t[0] = [
143
+ h(
144
+ "path",
145
+ { d: "m5 14.9 11-11 11 11m-11-11v24.2" },
146
+ null,
147
+ -1
148
+ /* CACHED */
149
+ )
150
+ ]));
151
+ }
152
+ const Oe = { render: Ke }, je = /* @__PURE__ */ P({
153
+ __name: "SortList",
154
+ props: {
155
+ modelValue: { type: Array, required: !0 },
156
+ id: { type: String, required: !1 },
157
+ ariaLabel: { type: String, required: !0 },
158
+ disabled: { type: Boolean, required: !1 },
159
+ possibleValues: { type: Array, required: !0 }
160
+ },
161
+ emits: ["update:modelValue"],
162
+ setup(o, { expose: t, emit: n }) {
163
+ t();
164
+ const e = o, r = n, l = g(() => Be(e.possibleValues, "id")), a = g(
165
+ () => e.modelValue.map(
166
+ (s) => l.value[s] ?? ge(s)
167
+ )
168
+ ), u = E([]);
169
+ Z(
170
+ () => e.modelValue,
171
+ (s) => {
172
+ const c = new Set(s);
173
+ u.value = u.value.filter((d) => c.has(d));
174
+ }
175
+ );
176
+ const _ = g(() => u.value.length === 0), A = (s, c, d) => [
177
+ s.slice(0, c),
178
+ s.slice(c, d),
179
+ s.slice(d)
180
+ ], V = (s) => {
181
+ let c = 0;
182
+ return (d) => s(d, c++);
183
+ }, k = (s, c) => Te(
184
+ s,
185
+ V((d, b) => c(b))
186
+ ), w = E(null), m = (s) => ({ to: c } = {}) => {
187
+ const d = u.value.map((S) => J(e.modelValue, S)).sort((S, re) => S - re), b = (s === "up" ? c : null) ?? Math.max(d[0] - 1, 0), T = (s === "down" ? c : null) ?? d[d.length - 1] + 1, [Q, X, $] = A(
188
+ e.modelValue,
189
+ b,
190
+ T + 1
191
+ ), ee = new Set(d), [D, q] = k(
192
+ X,
193
+ (S) => ee.has(S + b)
194
+ ), [te, oe] = s === "up" ? [D, q] : [q, D], ne = Q.concat(te, oe, $);
195
+ r("update:modelValue", ne), le(() => {
196
+ s === "up" ? (w.value?.scrollUpIntoView(b - 1), w.value?.setCurrentKeyNavIndex(b)) : (w.value?.scrollDownIntoView(T + 1), w.value?.setCurrentKeyNavIndex(T));
197
+ });
198
+ }, p = m("up"), I = m("down"), v = { props: e, emit: r, possibleValuesMap: l, possibleValues: a, selected: u, noneSelected: _, sliceInThreePieces: A, withIndex: V, partitionByIndices: k, listBox: w, move: m, moveUp: p, moveDown: I, moveToStart: () => p({ to: 0 }), moveToEnd: () => I({ to: e.modelValue.length }), getFormattedTooltip: (s, c) => `${s} (${Se.formatHotkeys(c)})`, get ArrowDownIcon() {
199
+ return Fe;
200
+ }, get ArrowDownloadIcon() {
201
+ return qe;
202
+ }, get ArrowUpIcon() {
203
+ return Oe;
204
+ }, FunctionButton: ie, MultiselectListBox: fe };
205
+ return Object.defineProperty(v, "__isScriptSetup", { enumerable: !1, value: !0 }), v;
206
+ }
207
+ }), Pe = { class: "buttons" };
208
+ function Ze(o, t, n, e, r, l) {
209
+ return y(), x(
210
+ H,
211
+ null,
212
+ [
213
+ R(" eslint-disable vue/attribute-hyphenation ariaLabel needs to be given like this for typescript to not complain "),
214
+ i(e.MultiselectListBox, {
215
+ id: n.id,
216
+ ref: "listBox",
217
+ modelValue: e.selected,
218
+ "onUpdate:modelValue": t[0] || (t[0] = (a) => e.selected = a),
219
+ "possible-values": e.possibleValues,
220
+ ariaLabel: `sortListBox_${n.ariaLabel}`,
221
+ "with-is-empty-state": !0,
222
+ "empty-state-label": "Empty",
223
+ size: 10,
224
+ onKeydown: [
225
+ C(L(e.moveDown, ["alt"]), ["down"]),
226
+ C(L(e.moveUp, ["alt"]), ["up"]),
227
+ C(L(e.moveToStart, ["alt"]), ["home"]),
228
+ C(L(e.moveToEnd, ["alt"]), ["end"])
229
+ ]
230
+ }, null, 8, ["id", "modelValue", "possible-values", "ariaLabel", "onKeydown"]),
231
+ h("div", Pe, [
232
+ i(e.FunctionButton, {
233
+ disabled: e.noneSelected,
234
+ title: e.getFormattedTooltip("Move to top", ["Alt", "Home"]),
235
+ compact: "",
236
+ onClick: e.moveToStart
237
+ }, {
238
+ default: f(() => [
239
+ i(e.ArrowDownloadIcon, { class: "rotated" })
240
+ ]),
241
+ _: 1
242
+ /* STABLE */
243
+ }, 8, ["disabled", "title"]),
244
+ i(e.FunctionButton, {
245
+ disabled: e.noneSelected,
246
+ title: e.getFormattedTooltip("Move to bottom", ["Alt", "End"]),
247
+ compact: "",
248
+ onClick: e.moveToEnd
249
+ }, {
250
+ default: f(() => [
251
+ i(e.ArrowDownloadIcon)
252
+ ]),
253
+ _: 1
254
+ /* STABLE */
255
+ }, 8, ["disabled", "title"]),
256
+ i(e.FunctionButton, {
257
+ disabled: e.noneSelected,
258
+ title: e.getFormattedTooltip("Move up", ["Alt", "ArrowUp"]),
259
+ compact: "",
260
+ onClick: e.moveUp
261
+ }, {
262
+ default: f(() => [
263
+ i(e.ArrowUpIcon)
264
+ ]),
265
+ _: 1
266
+ /* STABLE */
267
+ }, 8, ["disabled", "title", "onClick"]),
268
+ i(e.FunctionButton, {
269
+ disabled: e.noneSelected,
270
+ title: e.getFormattedTooltip("Move down", ["Alt", "ArrowDown"]),
271
+ compact: "",
272
+ onClick: e.moveDown
273
+ }, {
274
+ default: f(() => [
275
+ i(e.ArrowDownIcon)
276
+ ]),
277
+ _: 1
278
+ /* STABLE */
279
+ }, 8, ["disabled", "title", "onClick"])
280
+ ])
281
+ ],
282
+ 64
283
+ /* STABLE_FRAGMENT */
284
+ );
285
+ }
286
+ const He = /* @__PURE__ */ W(je, [["render", Ze], ["__scopeId", "data-v-33f0f58d"], ["__file", "/Users/albrecht/Documents/KNIME/git/webapps-common/packages/components/src/components/forms/SortList/SortList.vue"]]), j = "<any unknown new column>", Re = /* @__PURE__ */ P({
287
+ __name: "SortListControl",
288
+ props: {
289
+ control: { type: Object, required: !0 },
290
+ handleChange: { type: Function, required: !0 },
291
+ changeValue: { type: Function, required: !0 },
292
+ disabled: { type: Boolean, required: !0 },
293
+ labelForId: { type: null, required: !1 },
294
+ isValid: { type: Boolean, required: !0 },
295
+ messages: { type: Object, required: !0 },
296
+ onRegisterValidation: { type: Function, required: !0 },
297
+ anyUnknownValuesId: { type: String, required: !1, default: j },
298
+ anyUnknownValuesText: { type: String, required: !1, default: "Any unknown column" }
299
+ },
300
+ setup(o, { expose: t }) {
301
+ t();
302
+ const n = o, e = g(() => n.control.data), r = g(
303
+ () => n.control.uischema
304
+ ), l = ce(
305
+ r,
306
+ "possibleValues",
307
+ []
308
+ ), a = g(
309
+ () => l.value.concat({
310
+ id: n.anyUnknownValuesId,
311
+ text: n.anyUnknownValuesText,
312
+ special: !0
313
+ })
314
+ ), u = (m) => {
315
+ if (e.value.length === 0) {
316
+ V();
317
+ return;
318
+ }
319
+ const p = J(e.value, n.anyUnknownValuesId);
320
+ if (p === -1)
321
+ throw new Error(
322
+ `SortList data have to contain the value "${n.anyUnknownValuesId}"`
323
+ );
324
+ const I = e.value.slice(0, p + 1), F = e.value.slice(p + 1), M = new Set(e.value), B = m.map(({ id: v }) => v).filter((v) => !M.has(v));
325
+ B.length > 0 && n.changeValue(I.concat(B, F));
326
+ };
327
+ ae(() => {
328
+ u(l.value);
329
+ }), Z(() => l.value, u);
330
+ const _ = () => {
331
+ n.changeValue(e.value.toSorted((m, p) => m.localeCompare(p)));
332
+ }, A = () => {
333
+ n.changeValue(e.value.toSorted((m, p) => p.localeCompare(m)));
334
+ }, V = () => {
335
+ n.changeValue(a.value.map(({ id: m }) => m));
336
+ }, k = E(null), w = { DEFAULT_ANY_UNKNOWN_VALUES_ID: j, props: n, data: e, uischema: r, possibleValues: l, possibleValuesWithUnknownValues: a, addUnknownValuesToData: u, sortAToZ: _, sortZToA: A, resetAll: V, controlElement: k, get Button() {
337
+ return he;
338
+ }, get SortList() {
339
+ return He;
340
+ }, LabeledControl: ue, ErrorMessages: de };
341
+ return Object.defineProperty(w, "__isScriptSetup", { enumerable: !1, value: !0 }), w;
342
+ }
343
+ }), We = {
344
+ class: /* @__PURE__ */ se(["flex", "space-between"])
345
+ }, ze = { class: "flex" };
346
+ function Ye(o, t, n, e, r, l) {
347
+ return y(), x(
348
+ H,
349
+ null,
350
+ [
351
+ h("div", We, [
352
+ h("div", ze, [
353
+ i(e.Button, {
354
+ "with-border": "",
355
+ compact: "",
356
+ onClick: e.sortAToZ
357
+ }, {
358
+ default: f(() => t[0] || (t[0] = [
359
+ U(
360
+ "A - Z",
361
+ -1
362
+ /* CACHED */
363
+ )
364
+ ])),
365
+ _: 1,
366
+ __: [0]
367
+ }),
368
+ i(e.Button, {
369
+ "with-border": "",
370
+ compact: "",
371
+ onClick: e.sortZToA
372
+ }, {
373
+ default: f(() => t[1] || (t[1] = [
374
+ U(
375
+ "Z - A",
376
+ -1
377
+ /* CACHED */
378
+ )
379
+ ])),
380
+ _: 1,
381
+ __: [1]
382
+ })
383
+ ]),
384
+ i(e.Button, {
385
+ "with-border": "",
386
+ compact: "",
387
+ onClick: e.resetAll
388
+ }, {
389
+ default: f(() => t[2] || (t[2] = [
390
+ U(
391
+ "Reset all",
392
+ -1
393
+ /* CACHED */
394
+ )
395
+ ])),
396
+ _: 1,
397
+ __: [2]
398
+ })
399
+ ]),
400
+ i(e.LabeledControl, {
401
+ label: n.control.label,
402
+ onControllingFlowVariableSet: n.changeValue
403
+ }, {
404
+ default: f(({ labelForId: a }) => [
405
+ i(e.ErrorMessages, {
406
+ errors: n.messages.errors
407
+ }, {
408
+ default: f(() => [
409
+ R(" eslint-disable vue/attribute-hyphenation ariaLabel needs to be given like this for typescript to not complain "),
410
+ i(e.SortList, {
411
+ id: a ?? void 0,
412
+ ref: "controlElement",
413
+ "possible-values": e.possibleValuesWithUnknownValues,
414
+ "model-value": e.data,
415
+ ariaLabel: n.control.label,
416
+ disabled: n.disabled,
417
+ "onUpdate:modelValue": n.changeValue
418
+ }, null, 8, ["id", "possible-values", "model-value", "ariaLabel", "disabled", "onUpdate:modelValue"])
419
+ ]),
420
+ _: 2
421
+ /* DYNAMIC */
422
+ }, 1032, ["errors"])
423
+ ]),
424
+ icon: f(() => [
425
+ N(o.$slots, "icon", {}, void 0, !0)
426
+ ]),
427
+ buttons: f(({ hover: a }) => [
428
+ N(o.$slots, "buttons", {
429
+ hover: a,
430
+ controlHTMLElement: e.controlElement
431
+ }, void 0, !0)
432
+ ]),
433
+ _: 3
434
+ /* FORWARDED */
435
+ }, 8, ["label", "onControllingFlowVariableSet"])
436
+ ],
437
+ 64
438
+ /* STABLE_FRAGMENT */
439
+ );
440
+ }
441
+ const lt = /* @__PURE__ */ W(Re, [["render", Ye], ["__scopeId", "data-v-009023c4"], ["__file", "/Users/albrecht/Documents/KNIME/git/webapps-common/packages/jsonforms/src/uiComponents/SortListControl.vue"]]);
442
+ export {
443
+ j as DEFAULT_ANY_UNKNOWN_VALUES_ID,
444
+ lt as default
445
+ };
@@ -0,0 +1,81 @@
1
+ import { createElementBlock as s, openBlock as n, Fragment as a, createCommentVNode as d, createElementVNode as m, mergeProps as c, withModifiers as o, toDisplayString as f } from "vue";
2
+ import { _ as u } from "./SectionHeading.vue_vue_type_style_index_0_scoped_f06e9b7d_lang-B5ALSUVO.js";
3
+ const r = {
4
+ name: "StyledListItem",
5
+ props: {
6
+ text: {
7
+ type: String,
8
+ default: " "
9
+ },
10
+ selected: {
11
+ type: Boolean,
12
+ default: !1
13
+ },
14
+ disabled: {
15
+ type: Boolean,
16
+ default: !1
17
+ },
18
+ invalid: {
19
+ type: Boolean,
20
+ default: !1
21
+ },
22
+ /**
23
+ * Styles the item distinct to the other ones by adding a margin, adjusting the font-style and -height and
24
+ * rounding the corners
25
+ */
26
+ special: {
27
+ type: Boolean,
28
+ default: !1
29
+ },
30
+ lineHeight: {
31
+ type: Number,
32
+ default: null
33
+ }
34
+ },
35
+ emits: [
36
+ "mousedown",
37
+ "mousemove",
38
+ "dblclick-exact",
39
+ "dblclick-shift",
40
+ "click",
41
+ "focus"
42
+ ]
43
+ }, y = ["title", "aria-selected"];
44
+ function b(i, e, t, k, p, g) {
45
+ return n(), s(
46
+ a,
47
+ null,
48
+ [
49
+ d(" //NOSONAR "),
50
+ m("li", c(i.$attrs, {
51
+ role: "option",
52
+ title: t.text,
53
+ style: {
54
+ ...t.lineHeight !== null ? { lineHeight: `${t.lineHeight}px` } : {}
55
+ },
56
+ class: {
57
+ selected: t.selected,
58
+ invalid: t.invalid,
59
+ empty: !t.text.trim(),
60
+ disabled: t.disabled,
61
+ special: t.special
62
+ },
63
+ "aria-selected": t.selected,
64
+ onClick: e[0] || (e[0] = (l) => i.$emit("click", l)),
65
+ onFocus: e[1] || (e[1] = (l) => i.$emit("focus", l)),
66
+ onDblclick: [
67
+ e[2] || (e[2] = o((l) => i.$emit("dblclick-shift"), ["shift"])),
68
+ e[3] || (e[3] = o((l) => i.$emit("dblclick-exact"), ["exact"]))
69
+ ],
70
+ onMousedown: e[4] || (e[4] = (l) => i.$emit("mousedown", l)),
71
+ onMousemove: e[5] || (e[5] = (l) => i.$emit("mousemove", l))
72
+ }), f(t.text), 17, y)
73
+ ],
74
+ 2112
75
+ /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */
76
+ );
77
+ }
78
+ const B = /* @__PURE__ */ u(r, [["render", b], ["__scopeId", "data-v-44a8cfc1"], ["__file", "/Users/albrecht/Documents/KNIME/git/webapps-common/packages/components/src/components/StyleListItem/StyledListItem.vue"]]);
79
+ export {
80
+ B as S
81
+ };
@@ -0,0 +1,122 @@
1
+ import { createElementBlock as o, openBlock as n, normalizeClass as u, createElementVNode as c, createCommentVNode as m, mergeProps as p, defineComponent as _, createBlock as f } from "vue";
2
+ import { _ as d } from "./SectionHeading.vue_vue_type_style_index_0_scoped_f06e9b7d_lang-B5ALSUVO.js";
3
+ const b = {
4
+ name: "TextArea",
5
+ props: {
6
+ modelValue: {
7
+ default: "",
8
+ type: [Number, String]
9
+ },
10
+ id: {
11
+ type: String,
12
+ default: null
13
+ },
14
+ name: {
15
+ type: String,
16
+ default: null
17
+ },
18
+ /**
19
+ * Validity controlled by the parent component to be flexible.
20
+ */
21
+ isValid: {
22
+ default: !0,
23
+ type: Boolean
24
+ },
25
+ cols: {
26
+ default: 12,
27
+ type: Number
28
+ },
29
+ rows: {
30
+ default: 4,
31
+ type: Number
32
+ },
33
+ placeholder: {
34
+ default: null,
35
+ type: String
36
+ },
37
+ inputClasses: {
38
+ default: "",
39
+ type: String
40
+ },
41
+ title: {
42
+ default: null,
43
+ type: String
44
+ },
45
+ disabled: {
46
+ default: !1,
47
+ type: Boolean
48
+ }
49
+ },
50
+ emits: ["update:modelValue"],
51
+ methods: {
52
+ getValue() {
53
+ return this.$refs.input.value;
54
+ },
55
+ onInput() {
56
+ this.$emit("update:modelValue", this.getValue());
57
+ }
58
+ }
59
+ }, g = ["id", "name", "title", "value", "cols", "disabled", "rows", "placeholder"], y = {
60
+ key: 0,
61
+ class: "invalid-marker"
62
+ };
63
+ function h(a, t, e, r, i, l) {
64
+ return n(), o(
65
+ "div",
66
+ {
67
+ class: u({ disabled: e.disabled })
68
+ },
69
+ [
70
+ c("textarea", p(a.$attrs, {
71
+ id: e.id,
72
+ ref: "input",
73
+ name: e.name,
74
+ title: e.title,
75
+ value: e.modelValue,
76
+ class: e.inputClasses,
77
+ cols: e.cols,
78
+ disabled: e.disabled,
79
+ rows: e.rows,
80
+ placeholder: e.placeholder,
81
+ onInput: t[0] || (t[0] = (...s) => l.onInput && l.onInput(...s))
82
+ }), null, 16, g),
83
+ e.isValid ? m("v-if", !0) : (n(), o("span", y))
84
+ ],
85
+ 2
86
+ /* CLASS */
87
+ );
88
+ }
89
+ const V = /* @__PURE__ */ d(b, [["render", h], ["__scopeId", "data-v-d2f947cb"], ["__file", "/Users/albrecht/Documents/KNIME/git/webapps-common/packages/components/src/components/forms/TextArea/TextArea.vue"]]), v = /* @__PURE__ */ _({
90
+ __name: "TextAreaControl",
91
+ props: {
92
+ control: { type: Object, required: !0 },
93
+ handleChange: { type: Function, required: !0 },
94
+ changeValue: { type: Function, required: !0 },
95
+ disabled: { type: Boolean, required: !0 },
96
+ isValid: { type: Boolean, required: !0 },
97
+ onRegisterValidation: { type: Function, required: !0 },
98
+ labelForId: { type: String, required: !0 }
99
+ },
100
+ setup(a, { expose: t }) {
101
+ t();
102
+ const e = { get TextArea() {
103
+ return V;
104
+ } };
105
+ return Object.defineProperty(e, "__isScriptSetup", { enumerable: !1, value: !0 }), e;
106
+ }
107
+ });
108
+ function x(a, t, e, r, i, l) {
109
+ return n(), f(r.TextArea, {
110
+ id: e.labelForId,
111
+ class: "text-area-input",
112
+ "model-value": e.control.data,
113
+ disabled: e.disabled,
114
+ rows: e.control.uischema.options?.rows,
115
+ "is-valid": e.isValid,
116
+ "onUpdate:modelValue": e.changeValue
117
+ }, null, 8, ["id", "model-value", "disabled", "rows", "is-valid", "onUpdate:modelValue"]);
118
+ }
119
+ const w = /* @__PURE__ */ d(v, [["render", x], ["__scopeId", "data-v-769a0844"], ["__file", "/Users/albrecht/Documents/KNIME/git/webapps-common/packages/jsonforms/src/uiComponents/TextAreaControl.vue"]]);
120
+ export {
121
+ w as default
122
+ };
@@ -0,0 +1,54 @@
1
+ import { defineComponent as c, computed as s, ref as p, createBlock as m, openBlock as _ } from "vue";
2
+ import { u as f } from "./useBuiltinValidations-D0WuEacN.js";
3
+ import { u as h, _ as g } from "./SectionHeading.vue_vue_type_style_index_0_scoped_f06e9b7d_lang-B5ALSUVO.js";
4
+ import { I as b } from "./InputField-C_aZPs-f.js";
5
+ const x = /* @__PURE__ */ c({
6
+ __name: "TextControl",
7
+ props: {
8
+ control: { type: Object, required: !0 },
9
+ handleChange: { type: Function, required: !0 },
10
+ changeValue: { type: Function, required: !0 },
11
+ disabled: { type: Boolean, required: !0 },
12
+ isValid: { type: Boolean, required: !0 },
13
+ onRegisterValidation: { type: Function, required: !0 },
14
+ labelForId: { type: String, required: !0 }
15
+ },
16
+ setup(l, { expose: a }) {
17
+ const e = l;
18
+ f(
19
+ {
20
+ pattern: ({ pattern: o }) => {
21
+ const r = new RegExp(`^(${o})$`);
22
+ return (d) => r.test(d ?? "");
23
+ },
24
+ minLength: ({ minLength: o }) => (r) => (r?.length ?? 0) >= o,
25
+ maxLength: ({ maxLength: o }) => (r) => (r?.length ?? 0) <= o
26
+ },
27
+ e
28
+ );
29
+ const t = s(() => e.control.uischema), i = h(t, "placeholder", ""), n = p(null);
30
+ a({
31
+ focus: () => n.value?.focus()
32
+ });
33
+ const u = { props: e, uischema: t, placeholder: i, inputField: n, get InputField() {
34
+ return b;
35
+ } };
36
+ return Object.defineProperty(u, "__isScriptSetup", { enumerable: !1, value: !0 }), u;
37
+ }
38
+ });
39
+ function F(l, a, e, t, i, n) {
40
+ return _(), m(t.InputField, {
41
+ id: e.labelForId,
42
+ ref: "inputField",
43
+ placeholder: t.placeholder,
44
+ "model-value": e.control.data,
45
+ disabled: e.disabled,
46
+ "is-valid": e.isValid,
47
+ compact: "",
48
+ "onUpdate:modelValue": e.changeValue
49
+ }, null, 8, ["id", "placeholder", "model-value", "disabled", "is-valid", "onUpdate:modelValue"]);
50
+ }
51
+ const I = /* @__PURE__ */ g(x, [["render", F], ["__file", "/Users/albrecht/Documents/KNIME/git/webapps-common/packages/jsonforms/src/uiComponents/TextControl.vue"]]);
52
+ export {
53
+ I as default
54
+ };