@knime/jsonforms 1.15.29 → 1.15.31

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 (71) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/{AnyOfTwinlist-CFgltfrj.js → AnyOfTwinlist-BITKC1ir.js} +1 -1
  3. package/dist/{Button-DljIEXUS.js → Button-CLCXlXlU.js} +1 -1
  4. package/dist/{CheckboxControl-D6ue5q1t.js → CheckboxControl-CeX08p6o.js} +1 -1
  5. package/dist/{Checkboxes-BYxDMEkQ.js → Checkboxes-CJlksBqR.js} +1 -1
  6. package/dist/{CheckboxesControl-B9wAPzM0.js → CheckboxesControl-Dz5U8CnW.js} +3 -3
  7. package/dist/{ComboBoxControl-CdVFcZ0-.js → ComboBoxControl-DIhqV4UM.js} +2 -2
  8. package/dist/{DateControl-CPvPa3gx.js → DateControl-B0h0tymw.js} +1 -1
  9. package/dist/{DateTimeControl-BKwY3AoI.js → DateTimeControl-BRFLDSD7.js} +1 -1
  10. package/dist/{DateTimeFormatInput-DgrF3Do-.js → DateTimeFormatInput-CmIo143j.js} +3 -3
  11. package/dist/{DateTimeFormatPickerControl-GEl353xQ.js → DateTimeFormatPickerControl-SpcijHzt.js} +2 -2
  12. package/dist/{DateTimeFormatPickerWithTypeControl-C3qjuXoq.js → DateTimeFormatPickerWithTypeControl-o7eyZc78.js} +3 -3
  13. package/dist/{Dropdown-9O5Kn4WZ.js → Dropdown-DkiVG5Wt.js} +2 -2
  14. package/dist/{DropdownControl-Bf4J9Fp2.js → DropdownControl-CjTR98U-.js} +2 -2
  15. package/dist/{HorizontalLayout-B-PSAl0F.js → HorizontalLayout-CgZ9vAea.js} +1 -1
  16. package/dist/{InputField-CtCSu5db.js → InputField-CFrsR-Zy.js} +1 -1
  17. package/dist/{IntegerControl-C-xyVfn_.js → IntegerControl-B8AbhGS4.js} +1 -1
  18. package/dist/{IntervalControl-C11ygMMN.js → IntervalControl-BkoDlR2z.js} +3 -3
  19. package/dist/{LoadingDropdown-BfcO1z5I.js → LoadingDropdown-D1-PN4i7.js} +3 -3
  20. package/dist/{LoadingIcon-DQFomvyo.js → LoadingIcon-fJdZB-g4.js} +1 -1
  21. package/dist/{ManualTwinlistControl-UbDfbDSV.js → ManualTwinlistControl-DLw7X1or.js} +4 -4
  22. package/dist/{MultiSelectListBoxControl-Bdrj8ymp.js → MultiSelectListBoxControl-BmSk-78C.js} +2 -2
  23. package/dist/{MultimodeTwinlistControl-mD0_Pg_7.js → MultimodeTwinlistControl-DrbQbT3B.js} +6 -6
  24. package/dist/{MultimodeTwinlistControl.vue_vue_type_style_index_0_scoped_a6fd4504_lang-D_krlx5O.js → MultimodeTwinlistControl.vue_vue_type_style_index_0_scoped_a6fd4504_lang-B7nZk0hm.js} +1 -1
  25. package/dist/{MultiselectListBox-BJlvLcE5.js → MultiselectListBox-Bk9mFFFQ.js} +2 -2
  26. package/dist/{NameFilter-CF-CANmM.js → NameFilter-BLHKvVE4.js} +1 -1
  27. package/dist/{NumberControl-CayCEFYQ.js → NumberControl-CT3Er0ok.js} +1 -1
  28. package/dist/{NumberControlBase.vue_vue_type_script_setup_true_lang-DttoUcZe.js → NumberControlBase.vue_vue_type_script_setup_true_lang-HhSAisyB.js} +2 -2
  29. package/dist/{NumberInput-DlAGaclB.js → NumberInput-Ie52yHLy.js} +1 -1
  30. package/dist/{OneOfDropdown-CTZC22D0.js → OneOfDropdown-mbh-qM8a.js} +1 -1
  31. package/dist/{RadioControl-D3GBXULR.js → RadioControl-Dj5ekDRR.js} +2 -2
  32. package/dist/{RadioControlBase.vue_vue_type_script_setup_true_lang-C2-DhdVU.js → RadioControlBase.vue_vue_type_script_setup_true_lang-DSFxVFfU.js} +3 -3
  33. package/dist/{RichTextControl-Df4k74nF.js → RichTextControl--7Q_WwmO.js} +4 -4
  34. package/dist/{SectionHeading-CavTlRnT.js → SectionHeading-BOOzX8E2.js} +1 -1
  35. package/dist/{SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-58jgxWu9.js → SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-D1GNHDfC.js} +6760 -6720
  36. package/dist/{SectionLayout-DsQ9e9PG.js → SectionLayout-ChtJD3oY.js} +3 -3
  37. package/dist/{SettingsSubPanel-B6JeOq8q.js → SettingsSubPanel-RVBeOifp.js} +1 -1
  38. package/dist/{SettingsSubPanelLayout-fYu-xY8j.js → SettingsSubPanelLayout-B1OWK4UV.js} +4 -4
  39. package/dist/{SimpleButtonControl-Bgte_grX.js → SimpleButtonControl-Se7MegSc.js} +2 -2
  40. package/dist/{SimpleTwinlistControl-D06G7ka1.js → SimpleTwinlistControl-DgAl6R0c.js} +2 -2
  41. package/dist/{SingleSelectControl-DYFimHhJ.js → SingleSelectControl-CBaxSWkD.js} +2 -2
  42. package/dist/{SingleSelectListBoxControl-BvhqOzT0.js → SingleSelectListBoxControl-C5kKBvq6.js} +3 -3
  43. package/dist/{SortListControl-DMli1ilS.js → SortListControl-DqXZD9dc.js} +6 -6
  44. package/dist/{StyledListItem-C8Ie7acK.js → StyledListItem-C5fHlToG.js} +1 -1
  45. package/dist/{TextAreaControl-C4fWmsb-.js → TextAreaControl-DOmgGSq8.js} +1 -1
  46. package/dist/{TextControl-m2B7YFcW.js → TextControl-BZtN5NIE.js} +1 -1
  47. package/dist/{TextControl.vue_vue_type_script_setup_true_lang-B3j-d5-o.js → TextControl.vue_vue_type_script_setup_true_lang-BLcIlvlT.js} +3 -3
  48. package/dist/{TimeControl-C-CH_Os4.js → TimeControl-BqTSpzn1.js} +1 -1
  49. package/dist/{TwinlistControlBase-DCp9KQcw.js → TwinlistControlBase-B8wwmLTA.js} +3 -3
  50. package/dist/{TwinlistLoadingInfo-DAoV6uL6.js → TwinlistLoadingInfo-GmsYHwpe.js} +4 -4
  51. package/dist/{TypedStringFilter-B7R9ch3S.js → TypedStringFilter-CYoWNVIg.js} +1 -1
  52. package/dist/{ValueSwitch-CRe-0y-C.js → ValueSwitch-zRfgHh88.js} +1 -1
  53. package/dist/{ValueSwitchControl-HoUaD-y8.js → ValueSwitchControl-C2KF-LsQ.js} +1 -1
  54. package/dist/{VerticalLayout-B5_fGkZ4.js → VerticalLayout-D7QXrz3m.js} +2 -2
  55. package/dist/{VerticalLayoutBase-DeqPvWih.js → VerticalLayoutBase-BEpKgIX6.js} +1 -1
  56. package/dist/{ZonedDateTimeControl-7rrR6p1n.js → ZonedDateTimeControl-p8i6qSA1.js} +3 -3
  57. package/dist/{_baseEach-C9Qiw0TY.js → _baseEach-B7QB_jnn.js} +2 -2
  58. package/dist/{_baseIteratee-DYAeGHSm.js → _baseIteratee-CXHHEkuI.js} +3 -3
  59. package/dist/{_getTag-BRqfxqHQ.js → _getTag-CoxSvmX9.js} +1 -1
  60. package/dist/knime-jsonforms.css +1 -1
  61. package/dist/knime-jsonforms.js +90 -80
  62. package/dist/{localTimeUtils-CuTc1DHe.js → localTimeUtils-BQ0OaRp7.js} +6 -6
  63. package/dist/src/higherOrderComponents/control/validation/useCustomValidation.d.ts +13 -0
  64. package/dist/src/higherOrderComponents/control/validation/useValidation.d.ts +2 -1
  65. package/dist/src/types/provided.d.ts +10 -0
  66. package/dist/src/uiComponents/composables/useProvidedState.d.ts +9 -0
  67. package/dist/testing.js +2 -2
  68. package/dist/{toString-D1UhfJ93.js → toString-jIuLAUYj.js} +1 -1
  69. package/dist/{useBuiltinValidations-CICeEML6.js → useBuiltinValidations-Cmgfm1jZ.js} +1 -1
  70. package/dist/{usePossibleValues-Qq-WELsv.js → usePossibleValues-C2k3aJbk.js} +1 -1
  71. package/package.json +3 -3
@@ -1,87 +1,97 @@
1
- import { defineComponent as u, ref as i, onMounted as P, createElementBlock as v, createCommentVNode as T, openBlock as c, createElementVNode as D, provide as x, computed as C, watch as E, createBlock as b, Suspense as A, withCtx as d, createVNode as l, renderSlot as g, unref as w, nextTick as B } from "vue";
2
- import { _ as y, p as j, F, s as M, U as O, i as I } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-58jgxWu9.js";
3
- import { E as W, L as Z, a as ee, c as te, f as oe, e as se, d as ae, g as re, h as ne, k as de, l as le, j as ie, m as ce, b as ue, n as pe, t as me, u as fe, w as _e } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-58jgxWu9.js";
4
- import { default as he } from "./SimpleButtonControl-Bgte_grX.js";
5
- import { _ as De } from "./TextControl.vue_vue_type_script_setup_true_lang-B3j-d5-o.js";
6
- import { V as Se } from "./VerticalLayoutBase-DeqPvWih.js";
7
- import { S as ke } from "./SectionHeading-CavTlRnT.js";
8
- import { S as Te } from "./SettingsSubPanel-B6JeOq8q.js";
9
- const R = {
1
+ import { defineComponent as p, ref as u, onMounted as P, createElementBlock as D, createCommentVNode as T, openBlock as c, createElementVNode as y, provide as b, computed as w, watch as x, createBlock as C, Suspense as A, withCtx as l, createVNode as i, renderSlot as v, unref as F, nextTick as B } from "vue";
2
+ import { _ as S, p as O, F as j, s as M, U as N, i as $ } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-D1GNHDfC.js";
3
+ import { E as Z, L as ee, a as te, c as oe, f as ae, e as se, d as re, g as ne, h as de, k as le, l as ie, j as ue, m as ce, b as pe, n as me, t as fe, u as ge, w as he } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-D1GNHDfC.js";
4
+ import { default as _e } from "./SimpleButtonControl-Se7MegSc.js";
5
+ import { _ as ye } from "./TextControl.vue_vue_type_script_setup_true_lang-BLcIlvlT.js";
6
+ import { V as Le } from "./VerticalLayoutBase-BEpKgIX6.js";
7
+ import { S as Ee } from "./SectionHeading-BOOzX8E2.js";
8
+ import { S as Te } from "./SettingsSubPanel-RVBeOifp.js";
9
+ const I = {
10
10
  key: 0,
11
11
  class: "loading-dialog skeleton-wrapper"
12
- }, V = 200, $ = /* @__PURE__ */ u({
12
+ }, J = 200, R = /* @__PURE__ */ p({
13
13
  __name: "LoadingDialog",
14
- setup(r) {
15
- const s = i(!1);
14
+ setup(s) {
15
+ const r = u(!1);
16
16
  return P(() => {
17
17
  setTimeout(() => {
18
- s.value = !0;
19
- }, V);
20
- }), (p, o) => s.value ? (c(), v("div", R, o[0] || (o[0] = [
21
- D("div", { class: "loading-dialog-content skeleton" }, null, -1)
18
+ r.value = !0;
19
+ }, J);
20
+ }), (m, o) => r.value ? (c(), D("div", I, o[0] || (o[0] = [
21
+ y("div", { class: "loading-dialog-content skeleton" }, null, -1)
22
22
  ]))) : T("", !0);
23
23
  }
24
- }), N = /* @__PURE__ */ y($, [["__scopeId", "data-v-9c94592d"]]), U = { class: "dialog" }, h = "EXPOSED_METHOD", J = /* @__PURE__ */ u({
24
+ }), V = /* @__PURE__ */ S(R, [["__scopeId", "data-v-9c94592d"]]), U = { class: "dialog" }, _ = "EXPOSED_METHOD", G = /* @__PURE__ */ p({
25
25
  __name: "JsonFormsDialog",
26
26
  props: {
27
27
  schema: {},
28
28
  uischema: {},
29
29
  data: {},
30
- renderers: {}
30
+ renderers: {},
31
+ validate: { type: Function }
31
32
  },
32
33
  emits: ["updateData", "trigger", "change", "alert", "stateProviderListener"],
33
- setup(r, { expose: s, emit: p }) {
34
- const o = p, S = (e, t, n) => (t.type === O && // @ts-expect-error source doesn't exist on type object
35
- t.context?.source !== h && setTimeout(() => B(() => o("updateData", t.path))), n(e, t)), L = (e) => {
36
- o("change", e);
34
+ setup(s, { expose: r, emit: m }) {
35
+ const o = s, a = m, L = (e, t, d) => (t.type === N && // @ts-expect-error source doesn't exist on type object
36
+ t.context?.source !== _ && setTimeout(() => B(() => a("updateData", t.path))), d(e, t)), k = (e) => {
37
+ a("change", e);
37
38
  };
38
39
  Object.entries({
39
- trigger: (e) => o("trigger", e),
40
- addStateProviderListener: (e, t) => o("stateProviderListener", e, t),
41
- sendAlert: (e) => o("alert", e)
42
- }).forEach(([e, t]) => x(e, t));
43
- const a = i(null), m = [], f = (e, t) => {
44
- a.value.dispatch(
45
- I.update(e, () => t, {
46
- source: h
40
+ trigger: (e) => a("trigger", e),
41
+ addStateProviderListener: (e, t) => a("stateProviderListener", e, t),
42
+ sendAlert: (e) => a("alert", e),
43
+ validate: (e, t) => {
44
+ if (!o.validate)
45
+ throw new Error(
46
+ `No validate function provided to JsonFormsDialog but validate called with arguments ${JSON.stringify(
47
+ { id: e, data: t }
48
+ )}`
49
+ );
50
+ return o.validate(e, t);
51
+ }
52
+ }).forEach(([e, t]) => b(e, t));
53
+ const n = u(null), f = [], g = (e, t) => {
54
+ n.value.dispatch(
55
+ $.update(e, () => t, {
56
+ source: _
47
57
  })
48
58
  );
49
- }, k = C(() => a.value !== null);
50
- E(
51
- () => k.value,
52
- (e) => e && m.forEach(
53
- ({ path: t, value: n }) => f(t, n)
59
+ }, E = w(() => n.value !== null);
60
+ x(
61
+ () => E.value,
62
+ (e) => e && f.forEach(
63
+ ({ path: t, value: d }) => g(t, d)
54
64
  )
55
- ), s({
65
+ ), r({
56
66
  updateData: (e, t) => {
57
- a.value ? f(e, t) : m.push({ path: e, value: t });
67
+ n.value ? g(e, t) : f.push({ path: e, value: t });
58
68
  }
59
69
  });
60
- const _ = i(null);
61
- return j(_), (e, t) => (c(), v("div", U, [
62
- D("div", {
70
+ const h = u(null);
71
+ return O(h), (e, t) => (c(), D("div", U, [
72
+ y("div", {
63
73
  ref_key: "subPanelTeleportDest",
64
- ref: _
74
+ ref: h
65
75
  }, null, 512),
66
- (c(), b(A, null, {
67
- fallback: d(() => [
68
- l(N)
76
+ (c(), C(A, null, {
77
+ fallback: l(() => [
78
+ i(V)
69
79
  ]),
70
- default: d(() => [
71
- l(F, null, {
72
- default: d(() => [
73
- g(e.$slots, "top", {}, void 0, !0),
74
- l(w(M), {
80
+ default: l(() => [
81
+ i(j, null, {
82
+ default: l(() => [
83
+ v(e.$slots, "top", {}, void 0, !0),
84
+ i(F(M), {
75
85
  ref_key: "jsonforms",
76
- ref: a,
86
+ ref: n,
77
87
  data: e.data,
78
88
  schema: e.schema,
79
89
  uischema: e.uischema,
80
90
  renderers: e.renderers,
81
- middleware: S,
82
- onChange: L
91
+ middleware: L,
92
+ onChange: k
83
93
  }, null, 8, ["data", "schema", "uischema", "renderers"]),
84
- g(e.$slots, "bottom", {}, void 0, !0)
94
+ v(e.$slots, "bottom", {}, void 0, !0)
85
95
  ]),
86
96
  _: 3
87
97
  })
@@ -90,40 +100,40 @@ const R = {
90
100
  }))
91
101
  ]));
92
102
  }
93
- }), Y = /* @__PURE__ */ y(J, [["__scopeId", "data-v-35942d4d"]]), G = {
103
+ }), z = /* @__PURE__ */ S(G, [["__scopeId", "data-v-961e9905"]]), H = {
94
104
  layout: {
95
105
  type: Object,
96
106
  required: !0
97
107
  }
98
- }, z = (r) => u(r, {
99
- props: G
108
+ }, K = (s) => p(s, {
109
+ props: H
100
110
  });
101
111
  export {
102
- W as ErrorMessages,
103
- F as Form,
104
- Y as JsonFormsDialog,
105
- Z as LabeledControl,
106
- ke as SectionHeading,
112
+ Z as ErrorMessages,
113
+ j as Form,
114
+ z as JsonFormsDialog,
115
+ ee as LabeledControl,
116
+ Ee as SectionHeading,
107
117
  Te as SettingsSubPanel,
108
- he as SimpleButtonControl,
109
- De as TextControl,
110
- Se as VerticalLayoutBase,
111
- ee as controlProps,
112
- te as controlToRenderer,
113
- oe as controls,
118
+ _e as SimpleButtonControl,
119
+ ye as TextControl,
120
+ Le as VerticalLayoutBase,
121
+ te as controlProps,
122
+ oe as controlToRenderer,
123
+ ae as controls,
114
124
  se as defaultRenderers,
115
- ae as defineControl,
116
- z as defineLayout,
117
- re as getAsyncSetupMethod,
118
- ne as handleAsyncComponents,
119
- de as inputFormats,
120
- G as layoutProps,
121
- le as layoutToRenderer,
122
- ie as layouts,
125
+ re as defineControl,
126
+ K as defineLayout,
127
+ ne as getAsyncSetupMethod,
128
+ de as handleAsyncComponents,
129
+ le as inputFormats,
130
+ H as layoutProps,
131
+ ie as layoutToRenderer,
132
+ ue as layouts,
123
133
  ce as mapControls,
124
- ue as mapLayouts,
125
- pe as priorityRanks,
126
- me as toRenderers,
127
- fe as useProvidedState,
128
- _e as withLabel
134
+ pe as mapLayouts,
135
+ me as priorityRanks,
136
+ fe as toRenderers,
137
+ ge as useProvidedState,
138
+ he as withLabel
129
139
  };
@@ -1,13 +1,13 @@
1
1
  import { resolveComponent as Ve, createElementBlock as A, openBlock as k, normalizeClass as oe, createElementVNode as q, createCommentVNode as ie, withModifiers as Wt, createVNode as V, reactive as za, computed as T, defineComponent as xe, ref as De, watch as Ue, onMounted as Rn, onUnmounted as Ga, toRefs as ql, nextTick as gr, useAttrs as jl, createBlock as Oe, renderSlot as Mr, unref as O, resolveDynamicComponent as Za, normalizeProps as br, mergeProps as Ot, inject as $r, toRef as Dn, withCtx as Me, toDisplayString as He, Fragment as ke, renderList as Ke, normalizeStyle as Dr, withKeys as $n, withDirectives as Bs, watchEffect as zs, provide as Cr, guardReactiveProps as xa, createTextVNode as Ka, isRef as lr, Transition as Gs, resolveDirective as Vl, toHandlers as Zs } from "vue";
2
2
  import { c as Bl } from "./popper-LGjf7Wza.js";
3
- import { _ as Ks, q as qn, N as zl } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-58jgxWu9.js";
4
- import { D as Gl } from "./Dropdown-9O5Kn4WZ.js";
3
+ import { _ as Ks, q as qn, N as zl } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-D1GNHDfC.js";
4
+ import { D as Gl } from "./Dropdown-DkiVG5Wt.js";
5
5
  import { A as Zl } from "./arrow-dropdown-BAFsD8Su.js";
6
6
  /* empty css */
7
- import { a as Kl } from "./toString-D1UhfJ93.js";
8
- import { b as Xl } from "./_baseIteratee-DYAeGHSm.js";
9
- import { b as Ql } from "./_baseEach-C9Qiw0TY.js";
10
- import { d as Jl } from "./_getTag-BRqfxqHQ.js";
7
+ import { a as Kl } from "./toString-jIuLAUYj.js";
8
+ import { b as Xl } from "./_baseIteratee-CXHHEkuI.js";
9
+ import { b as Ql } from "./_baseEach-B7QB_jnn.js";
10
+ import { d as Jl } from "./_getTag-CoxSvmX9.js";
11
11
  import { i as ec } from "./isArray-WzO_os3q.js";
12
12
  function st(e) {
13
13
  "@babel/helpers - typeof";
@@ -0,0 +1,13 @@
1
+ import { MaybeRef, Ref } from 'vue';
2
+ declare const _default: ({ data, uischema, }: {
3
+ data: Ref<unknown>;
4
+ uischema: MaybeRef<{
5
+ id: string;
6
+ } | {
7
+ scope: string;
8
+ }>;
9
+ }) => {
10
+ customValidationMessage: Ref<string | null, string | null>;
11
+ performCustomValidationDebounced: import('lodash-es').DebouncedFunc<(data: unknown) => void>;
12
+ };
13
+ export default _default;
@@ -1,9 +1,10 @@
1
1
  import { Ref } from 'vue';
2
2
  import { Messages, PerformExternalValidation, ValidationMethod } from './types';
3
- export declare const useValidation: <T = unknown>({ data, options, performExternalValidation, }: {
3
+ export declare const useValidation: <T = unknown>({ data, options, performExternalValidation, customValidationMessage, }: {
4
4
  data: Ref<T>;
5
5
  options: Ref<Record<string, any>>;
6
6
  performExternalValidation?: PerformExternalValidation<unknown>;
7
+ customValidationMessage?: Ref<string | null>;
7
8
  }) => {
8
9
  messages: import('vue').ComputedRef<Messages>;
9
10
  isValid: import('vue').ComputedRef<boolean>;
@@ -31,6 +31,16 @@ export interface Provided {
31
31
  addStateProviderListener: addStateProviderListener<unknown>;
32
32
  trigger: (triggerId: unknown) => void;
33
33
  sendAlert: (params: AlertParams) => void;
34
+ /**
35
+ * Called by elements who have custom validation needs.
36
+ * Calling this method on every value change (debounced) starts when the ui option
37
+ * `validatorId` is provided with a non-`null` value and stops when `null` is provided
38
+ * as id. Also one call is issued when the `validatorId` is provided.
39
+ *
40
+ * @param id the id of the validator
41
+ * @param data the current data to validate
42
+ */
43
+ validate: (id: string, data: unknown) => Promise<string | null>;
34
44
  registerWatcher: registerWatcher;
35
45
  getData: getData;
36
46
  }
@@ -16,3 +16,12 @@ export type Paths<T, D extends number = 2> = [D] extends [never] ? never : T ext
16
16
  export type ExtractNestedValue<T, P extends string> = P extends `${infer Key}.${infer Rest}` ? Key extends keyof T ? ExtractNestedValue<T[Key], Rest> : never : P extends keyof T ? T[P] : never;
17
17
  declare const _default: <U extends UiSchemaWithProvidedOptions<Record<string, unknown>>, K extends Paths<NonUndefined<U["options"]>>, D = ExtractNestedValue<NonUndefined<U["options"]>, K> | null>(uischema: Ref<U>, providedOptionName: K, defaultValue?: D | null) => Ref<NonUndefined<D>, NonUndefined<D>>;
18
18
  export default _default;
19
+ /**
20
+ * For accessing state providers that are not registered in the uischema
21
+ * (e.g. custom validation messages)
22
+ */
23
+ export declare const useInternalProvidedState: <D = unknown>(uischema: {
24
+ scope: string;
25
+ } | {
26
+ id: string;
27
+ }, providedOptionName: string, defaultValue?: D | null) => Ref<D | null, D | null>;
package/dist/testing.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import * as yh from "vue";
2
2
  import { ssrUtils as zi, initDirectivesForSSR as Z_, nextTick as wo, defineComponent as wi, computed as Lr, h as An, shallowReactive as em, reactive as tm, ref as vh, createApp as nm, transformVNodeArgs as rm, setDevtoolsHook as im, isRef as sm, TransitionGroup as om, Transition as am, BaseTransition as lm } from "vue";
3
- import { o as cm, q as um, r as fm, e as hm } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-58jgxWu9.js";
4
- import { b as pm } from "./_baseIteratee-DYAeGHSm.js";
3
+ import { o as cm, q as um, r as fm, e as hm } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-D1GNHDfC.js";
4
+ import { b as pm } from "./_baseIteratee-CXHHEkuI.js";
5
5
  function dm(e, t) {
6
6
  return e > t;
7
7
  }
@@ -1,4 +1,4 @@
1
- import { o as g, S as s } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-58jgxWu9.js";
1
+ import { o as g, S as s } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-D1GNHDfC.js";
2
2
  import { i as l } from "./isArray-WzO_os3q.js";
3
3
  function p(r, t) {
4
4
  for (var n = -1, i = r == null ? 0 : r.length, o = Array(i); ++n < i; )
@@ -1,5 +1,5 @@
1
1
  import { onUnmounted as u, toRef as p, computed as d } from "vue";
2
- import { u as f } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-58jgxWu9.js";
2
+ import { u as f } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-D1GNHDfC.js";
3
3
  const h = (t = {}) => t.validation || null, m = (t) => t.replace(/^validation\./, ""), v = (t) => {
4
4
  const a = (t.providedOptions ?? []).filter(
5
5
  (e) => e.startsWith("validation.")
@@ -1,5 +1,5 @@
1
1
  import { computed as u } from "vue";
2
- import { u as o } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-58jgxWu9.js";
2
+ import { u as o } from "./SectionHeading.vue_vue_type_style_index_0_scoped_c541eb08_lang-D1GNHDfC.js";
3
3
  const t = (s) => {
4
4
  const e = u(() => s.value.uischema), l = o(e, "possibleValues");
5
5
  return { possibleValues: u(() => e.value.providedOptions?.includes("possibleValues") ? l.value : e.value.options?.possibleValues ?? []) };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@knime/jsonforms",
3
- "version": "1.15.29",
3
+ "version": "1.15.31",
4
4
  "description": "Internal JSON Forms integration for frontend KNIME projects",
5
5
  "homepage": "https://knime.github.io/webapps-common/",
6
6
  "license": "GPL 3 and Additional Permissions according to Sec. 7 (SEE the file LICENSE)",
@@ -16,9 +16,9 @@
16
16
  "focus-trap-vue": "4.0.3",
17
17
  "tabbable": "6.2.0",
18
18
  "uuid": "10.0.0",
19
- "@knime/components": "1.39.3",
20
- "@knime/rich-text-editor": "1.7.25",
19
+ "@knime/components": "1.39.4",
21
20
  "@knime/styles": "1.14.2",
21
+ "@knime/rich-text-editor": "1.7.26",
22
22
  "@knime/utils": "1.6.2"
23
23
  },
24
24
  "peerDependencies": {