@knime/jsonforms 1.21.13 → 1.21.15

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 (97) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/{AnyOfTwinlist-RYrVJHV_.js → AnyOfTwinlist-CV39JeCp.js} +1 -1
  3. package/dist/{CheckboxControl-BZQzU-Kr.js → CheckboxControl-CS4nuJTP.js} +1 -1
  4. package/dist/{CheckboxesControl-BwtY2fOR.js → CheckboxesControl-DXJMkZ49.js} +2 -2
  5. package/dist/{ColorControl-CpETHjy6.js → ColorControl-CpBVJh38.js} +1 -1
  6. package/dist/{ColorPreviewControl-3_H8I1ri.js → ColorPreviewControl-0VK3OqwY.js} +1 -1
  7. package/dist/{ComboBoxControl-DqRfhSYY.js → ComboBoxControl-avfNedsG.js} +4 -4
  8. package/dist/DateControl-B8E0JEIV.js +42 -0
  9. package/dist/DateTimeControl-DPjGzRqg.js +78 -0
  10. package/dist/{DateTimeFormatPickerControl-8pdgRAZx.js → DateTimeFormatPickerControl-Cx3yfT3O.js} +1 -1
  11. package/dist/DateTimeFormatPickerWithTypeControl-CodEVQG_.js +586 -0
  12. package/dist/{DropdownControl-BRwJh-oy.js → DropdownControl-DEggcwK1.js} +2 -2
  13. package/dist/{ExecutorCoresControl-iOlO4K2q.js → ExecutorCoresControl-CvCVcaHM.js} +1 -1
  14. package/dist/{ExecutorMemoryControl-BtEuJKmI.js → ExecutorMemoryControl-CpbVJNq4.js} +1 -1
  15. package/dist/{FileUploadControl-Bo7spGQA.js → FileUploadControl-CNUi9QfR.js} +21 -21
  16. package/dist/{GridSelectionControl-N52hhlRg.js → GridSelectionControl-HV2yNE4R.js} +14 -14
  17. package/dist/{HorizontalLayout-CdU7c7fd.js → HorizontalLayout-Cqf3hzxv.js} +1 -1
  18. package/dist/{IntegerControl-CZVvT_hf.js → IntegerControl-Ba5QkLCa.js} +1 -1
  19. package/dist/IntervalControl-DlLV8RQr.js +48 -0
  20. package/dist/{LinkControl-CMeBPEW1.js → LinkControl-COH9jvPg.js} +4 -4
  21. package/dist/{LoadingDropdown.vue_vue_type_script_setup_true_lang-l_tRM6I-.js → LoadingDropdown.vue_vue_type_script_setup_true_lang-Cir2ym2M.js} +5 -5
  22. package/dist/{ManualTwinlistControl-Lq5T8rQ5.js → ManualTwinlistControl-jJGxlq9j.js} +3 -3
  23. package/dist/{MultiSelectListBoxControl-CzeR-Wbl.js → MultiSelectListBoxControl-DcWDraNF.js} +12 -12
  24. package/dist/{MultimodeTwinlistControl-Co2COblq.js → MultimodeTwinlistControl-B-rEhgKQ.js} +1 -1
  25. package/dist/{MultimodeTwinlistControl.vue_vue_type_script_setup_true_lang-BFrN-w7G.js → MultimodeTwinlistControl.vue_vue_type_script_setup_true_lang-yhmiIg95.js} +5 -5
  26. package/dist/{NameFilter-BfYUOZX-.js → NameFilter-BFKNf9cO.js} +1 -1
  27. package/dist/{NumberControl-D5LeZR7g.js → NumberControl-BAxGZy_4.js} +1 -1
  28. package/dist/{NumberControlBase.vue_vue_type_script_setup_true_lang-yBfQ2lTo.js → NumberControlBase.vue_vue_type_script_setup_true_lang-Dlxx71hk.js} +2 -2
  29. package/dist/{OneOfDropdown-DkXPGVGA.js → OneOfDropdown-DcetHKT5.js} +4 -4
  30. package/dist/{RadioButtonsWithDescriptionControl-BZEiPIT7.js → RadioButtonsWithDescriptionControl-pZ0gJ6iz.js} +4 -4
  31. package/dist/{RadioControl-BM8jzumR.js → RadioControl-B8-nxddP.js} +1 -1
  32. package/dist/{RadioControlBase.vue_vue_type_script_setup_true_lang-DEZ-BDbe.js → RadioControlBase.vue_vue_type_script_setup_true_lang-8xWE-iQR.js} +8 -8
  33. package/dist/ResourceControlBase-ZMTuwwL2.js +86 -0
  34. package/dist/{RichTextControl-BSDuXS-r.js → RichTextControl-kptCYz2A.js} +5874 -4964
  35. package/dist/{SectionHeading-CQPP2Ldw.js → SectionHeading-MlqCj5BS.js} +1 -1
  36. package/dist/{SectionLayout-DVSBUJWh.js → SectionLayout-nV1GnghP.js} +3 -3
  37. package/dist/SettingsSubPanel-Z6urYwz1.js +5 -0
  38. package/dist/{SettingsSubPanelLayout-BGGUILX0.js → SettingsSubPanelLayout-BNMJbUsL.js} +4 -4
  39. package/dist/{SimpleButtonControl-CrZYDy2d.js → SimpleButtonControl-DZFYl2H3.js} +8 -8
  40. package/dist/SimpleButtonControl.vue_vue_type_style_index_0_scoped_17a4a240_lang-zrzBlOHh.js +27089 -0
  41. package/dist/{SimpleTwinlistControl-DNXi9aTL.js → SimpleTwinlistControl-Ds2BQOoO.js} +2 -2
  42. package/dist/{SingleSelectControl-UgYnjUWO.js → SingleSelectControl-CLv_Mah-.js} +2 -2
  43. package/dist/{SingleSelectListBoxControl-CxkgaK13.js → SingleSelectListBoxControl-DM_5t3Nv.js} +3 -3
  44. package/dist/{SortListControl-C_ov2UWK.js → SortListControl-COd0WHwd.js} +1 -1
  45. package/dist/{StyledListItem-CzxxmMCV.js → StyledListItem-D3NbpWl3.js} +1 -1
  46. package/dist/{TeamAndSpacesControl-D7oS2zYV.js → TeamAndSpacesControl-A8mWrSE4.js} +1 -1
  47. package/dist/{TeamResourceControl-CYobSLvC.js → TeamResourceControl-CAgwzjRZ.js} +1 -1
  48. package/dist/{TextAreaControl-AG_b-Z5X.js → TextAreaControl-DRBGqA7a.js} +1 -1
  49. package/dist/{TextControl-BSEmxN5j.js → TextControl--Tw-AE3y.js} +1 -1
  50. package/dist/{TextControl.vue_vue_type_script_setup_true_lang-CadH1IKc.js → TextControl.vue_vue_type_script_setup_true_lang-PdbUWJUv.js} +2 -2
  51. package/dist/TimeControl-D_hEPt2Z.js +69 -0
  52. package/dist/TimeframesControl-EKcriaC8.js +345 -0
  53. package/dist/{TwinlistControlBase.vue_vue_type_script_setup_true_lang-SsKJamsg.js → TwinlistControlBase.vue_vue_type_script_setup_true_lang-BRq0ANwm.js} +2 -2
  54. package/dist/{TypedStringFilter-DAcGj5q1.js → TypedStringFilter-UUuSnJNk.js} +1 -1
  55. package/dist/{ValueSwitchControl-CXrI8Yl-.js → ValueSwitchControl-BwERUIyr.js} +1 -1
  56. package/dist/{VerticalLayout-eL6w0Hg9.js → VerticalLayout-BET3pZ_K.js} +2 -2
  57. package/dist/{VerticalLayoutBase-B9SsD2_6.js → VerticalLayoutBase-HYtDwVLA.js} +1 -1
  58. package/dist/ZonedDateTimeControl-CsbZwGMX.js +77 -0
  59. package/dist/{_Uint8Array-Du4fEgNS.js → _Uint8Array-DJimCh8a.js} +5 -7
  60. package/dist/classApi-CHpAZrj3.js +3328 -0
  61. package/dist/knime-jsonforms.css +1 -1
  62. package/dist/knime-jsonforms.js +7 -7
  63. package/dist/plainDateTimeUtils-CR0UhpkD.js +52 -0
  64. package/dist/src/composables/usePlainDateTimeBatch.d.ts +31 -0
  65. package/dist/src/index.d.ts +2 -0
  66. package/dist/src/uiComponents/DateControl.vue.d.ts +1 -1
  67. package/dist/src/uiComponents/DateTimeControl.vue.d.ts +1 -1
  68. package/dist/src/uiComponents/TimeControl.vue.d.ts +1 -1
  69. package/dist/src/utils/plainDateTimeUtils.d.ts +66 -0
  70. package/dist/testing.js +11136 -10284
  71. package/dist/{toString-Cng8dMI8.js → toString-B8vqfiDe.js} +3 -4
  72. package/dist/{useBuiltinValidations-CT2mv4JV.js → useBuiltinValidations-CzYsm8oq.js} +1 -1
  73. package/dist/useDropdownNavigation-CdrbT-CQ.js +2003 -0
  74. package/dist/usePlainDateTimeBatch-Bd2G-GY9.js +34 -0
  75. package/dist/{usePossibleValues-DlVd3QMh.js → usePossibleValues-CGt7yrJ6.js} +1 -1
  76. package/dist/{useUnknownValuesInTwinlist-UbVZb8Wt.js → useUnknownValuesInTwinlist-Bez1tY4_.js} +1 -1
  77. package/package.json +5 -8
  78. package/dist/DateControl-Cg1q7qVH.js +0 -35
  79. package/dist/DateTimeControl-C7EwnT5D.js +0 -44
  80. package/dist/DateTimeFormatPickerWithTypeControl-oBFnJRkM.js +0 -464
  81. package/dist/IntervalControl-DW-jmzYH.js +0 -751
  82. package/dist/ResourceControlBase-Djv2vDNo.js +0 -69
  83. package/dist/SettingsSubPanel-DKVUGp-Q.js +0 -5
  84. package/dist/SimpleButtonControl.vue_vue_type_style_index_0_scoped_17a4a240_lang-3pf9Mad5.js +0 -28295
  85. package/dist/TimeControl-GY-l_p55.js +0 -35
  86. package/dist/TimePartInput-BGCbCcks.js +0 -254
  87. package/dist/TimeframesControl-BT_-Fm_A.js +0 -87
  88. package/dist/Tooltip-Bc8zeqxg.js +0 -24
  89. package/dist/ValueSwitch-DnpLqjm_.js +0 -130
  90. package/dist/ZonedDateTimeControl-y5IsH4g_.js +0 -66
  91. package/dist/_baseIteratee-echQG1Gb.js +0 -308
  92. package/dist/arrow-dropdown-DMFBPPcK.js +0 -17
  93. package/dist/floating-ui.vue-Bk6u3tWN.js +0 -1060
  94. package/dist/localTimeUtils-DlStha9G.js +0 -12315
  95. package/dist/popper-iehk3xNV.js +0 -923
  96. package/dist/src/utils/localTimeUtils.d.ts +0 -18
  97. package/dist/useDropdownNavigation-EOwf_fL0.js +0 -946
@@ -1,11 +1,11 @@
1
1
  import { defineComponent as u, ref as y, onMounted as $, openBlock as c, createElementBlock as F, createVNode as n, unref as i, createElementVNode as j, createCommentVNode as A, provide as B, computed as d, watch as x, createBlock as D, Suspense as I, withCtx as g, renderSlot as L, mergeProps as O, nextTick as J } from "vue";
2
- import { K as h, _ as k, p as M, F as R, s as V, U, i as z, a as q } from "./SimpleButtonControl.vue_vue_type_style_index_0_scoped_17a4a240_lang-3pf9Mad5.js";
3
- import { E as le, L as ce, S as de, c as ue, b as me, d as pe, e as fe, f as he, g as ve, h as ge, j as ye, l as De, k as _e, m as be, n as Se, o as we, t as Pe, u as xe, w as Le, q as Ce } from "./SimpleButtonControl.vue_vue_type_style_index_0_scoped_17a4a240_lang-3pf9Mad5.js";
4
- import { default as je } from "./SimpleButtonControl-CrZYDy2d.js";
5
- import { _ as Ee } from "./TextControl.vue_vue_type_script_setup_true_lang-CadH1IKc.js";
6
- import { V as Ne } from "./VerticalLayoutBase-B9SsD2_6.js";
7
- import { S as Ae } from "./SectionHeading-CQPP2Ldw.js";
8
- import { S as Ie } from "./SettingsSubPanel-DKVUGp-Q.js";
2
+ import { K as h, _ as k, p as M, F as R, s as V, U, i as z, a as q } from "./SimpleButtonControl.vue_vue_type_style_index_0_scoped_17a4a240_lang-zrzBlOHh.js";
3
+ import { E as le, L as ce, S as de, c as ue, b as me, d as pe, e as fe, f as he, g as ve, h as ge, j as ye, l as De, k as _e, m as be, n as Se, o as we, t as Pe, u as xe, w as Le, q as Ce } from "./SimpleButtonControl.vue_vue_type_style_index_0_scoped_17a4a240_lang-zrzBlOHh.js";
4
+ import { default as je } from "./SimpleButtonControl-DZFYl2H3.js";
5
+ import { _ as Ee } from "./TextControl.vue_vue_type_script_setup_true_lang-PdbUWJUv.js";
6
+ import { V as Ne } from "./VerticalLayoutBase-HYtDwVLA.js";
7
+ import { S as Ae } from "./SectionHeading-MlqCj5BS.js";
8
+ import { S as Ie } from "./SettingsSubPanel-Z6urYwz1.js";
9
9
  const G = {
10
10
  key: 0,
11
11
  class: "loading-dialog"
@@ -0,0 +1,52 @@
1
+ import { U as r } from "./classApi-CHpAZrj3.js";
2
+ const l = (t, n = {}) => {
3
+ const e = t?.showSeconds ?? n.showSeconds ?? !0, i = t?.showMilliseconds ?? n.showMilliseconds ?? !0;
4
+ return e ? i ? "millisecond" : "second" : "minute";
5
+ }, c = (t) => {
6
+ if (t == null || t === "")
7
+ return { date: null, time: null };
8
+ if (/(Z|[+-]\d{2}:?\d{2})$/.test(t))
9
+ try {
10
+ const n = r.Instant.from(t).toZonedDateTimeISO("UTC").toPlainDateTime();
11
+ return {
12
+ date: n.toPlainDate(),
13
+ time: n.toPlainTime()
14
+ };
15
+ } catch {
16
+ return { date: null, time: null };
17
+ }
18
+ try {
19
+ const n = r.PlainDateTime.from(t);
20
+ return {
21
+ date: n.toPlainDate(),
22
+ time: n.toPlainTime()
23
+ };
24
+ } catch {
25
+ try {
26
+ return { date: r.PlainDate.from(t), time: null };
27
+ } catch {
28
+ return { date: null, time: null };
29
+ }
30
+ }
31
+ }, m = (t, n, e = "millisecond") => {
32
+ if (t === null && n === null)
33
+ return "";
34
+ const i = t ?? r.PlainDate.from("1970-01-01"), s = n ?? r.PlainTime.from("00:00:00"), o = i.toPlainDateTime(s);
35
+ return e === "minute" ? o.toString({ smallestUnit: "minute" }) : e === "second" ? o.toString({ smallestUnit: "second" }) : o.toString({ fractionalSecondDigits: 3 });
36
+ }, a = (t) => {
37
+ if (!t)
38
+ return "minute";
39
+ const n = /(\d{2}):(\d{2})(?::(\d{2})(\.\d+)?)?/.exec(t);
40
+ if (!n)
41
+ return "minute";
42
+ const e = n[3], i = n[4];
43
+ return i && Number(i) !== 0 ? "millisecond" : e && Number(e) !== 0 ? "second" : "minute";
44
+ }, u = {
45
+ fromString: c,
46
+ toString: m,
47
+ detectGranularity: a,
48
+ getMaxGranularity: l
49
+ };
50
+ export {
51
+ u as p
52
+ };
@@ -0,0 +1,31 @@
1
+ import { ComputedRef, Ref } from 'vue';
2
+ import { Temporal } from 'temporal-polyfill';
3
+ import { KdsTimeInputGranularity } from '@knime/kds-components';
4
+ /**
5
+ * Shared batching logic for date / time / granularity edits used by
6
+ * `DateTimeControl` and `ZonedDateTimeControl`.
7
+ *
8
+ * Parses the wire string into `datePart` / `timePart` computeds, tracks
9
+ * `granularity` as internal state (initialized via `detectGranularity`), and
10
+ * exposes `onDateChange` / `onTimeChange` / `onGranularityChange` handlers
11
+ * which batch all emits in the same microtask into a single `commit` call.
12
+ *
13
+ * Without batching, handling each emit separately would serialize with stale
14
+ * sibling values.
15
+ */
16
+ export declare const usePlainDateTimeBatch: (options: {
17
+ /** Reactive accessor for the current wire string. */
18
+ getDateTime: () => string;
19
+ /**
20
+ * Called once per microtask with the resolved date / time / granularity.
21
+ * Implementations should serialize and propagate the change.
22
+ */
23
+ commit: (date: Temporal.PlainDate | null, time: Temporal.PlainTime | null, granularity: KdsTimeInputGranularity) => void;
24
+ }) => {
25
+ datePart: ComputedRef<Temporal.PlainDate | null>;
26
+ timePart: ComputedRef<Temporal.PlainTime | null>;
27
+ granularity: Ref<KdsTimeInputGranularity>;
28
+ onDateChange: (value: Temporal.PlainDate | null) => void;
29
+ onTimeChange: (value: Temporal.PlainTime | null) => void;
30
+ onGranularityChange: (g: KdsTimeInputGranularity) => void;
31
+ };
@@ -2,6 +2,8 @@ import { default as JsonFormsDialog } from './JsonFormsDialog.vue';
2
2
  import { AlertParams } from './types/alert';
3
3
  import { Provided } from './types/provided';
4
4
  import { UiSchemaWithProvidedOptions } from './uiComponents/composables/useProvidedState';
5
+ export type { JsonSchema, UISchemaElement } from '@jsonforms/core';
6
+ export type { Ajv } from 'ajv';
5
7
  export { JsonFormsDialog, type Provided, type AlertParams, type UiSchemaWithProvidedOptions, };
6
8
  export * from './higherOrderComponents';
7
9
  export * from './renderers';
@@ -1,4 +1,4 @@
1
- import { VueControlPropsForLabelContent } from '../higherOrderComponents/control/withLabel';
1
+ import { VueControlPropsForLabelContent } from '../higherOrderComponents';
2
2
  type __VLS_Props = VueControlPropsForLabelContent<string>;
3
3
  declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
4
4
  export default _default;
@@ -1,4 +1,4 @@
1
- import { VueControlPropsForLabelContent } from '../higherOrderComponents/control/withLabel';
1
+ import { VueControlPropsForLabelContent } from '../higherOrderComponents';
2
2
  type __VLS_Props = VueControlPropsForLabelContent<string>;
3
3
  declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
4
4
  export default _default;
@@ -1,4 +1,4 @@
1
- import { VueControlPropsForLabelContent } from '../higherOrderComponents/control/withLabel';
1
+ import { VueControlPropsForLabelContent } from '../higherOrderComponents';
2
2
  type __VLS_Props = VueControlPropsForLabelContent<string>;
3
3
  declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
4
4
  export default _default;
@@ -0,0 +1,66 @@
1
+ import { Temporal } from 'temporal-polyfill';
2
+ export type PlainDateTimeGranularity = "minute" | "second" | "millisecond";
3
+ /**
4
+ * Resolves the max granularity for a `KdsTimeInput` from JSONForms uischema
5
+ * options. When `showSeconds` / `showMilliseconds` are not present in
6
+ * `options`, the values from `defaults` are used; if those are also absent,
7
+ * both fall back to `true`.
8
+ *
9
+ * Different controls have historically defaulted differently — e.g. the
10
+ * legacy `DateTimeInput` defaulted milliseconds to `false`, while
11
+ * `TimeControl` exposed milliseconds by default — so callers should pass the
12
+ * appropriate per-control defaults explicitly.
13
+ */
14
+ export declare const getMaxGranularity: (options: {
15
+ showSeconds?: boolean;
16
+ showMilliseconds?: boolean;
17
+ } | null | undefined, defaults?: {
18
+ showSeconds?: boolean;
19
+ showMilliseconds?: boolean;
20
+ }) => PlainDateTimeGranularity;
21
+ /**
22
+ * Parses a backend-provided datetime string into separate
23
+ * {@link Temporal.PlainDate} and {@link Temporal.PlainTime} components.
24
+ *
25
+ * Accepts full ISO datetime strings (with or without trailing offset/`Z`) as
26
+ * well as plain date strings (`YYYY-MM-DD`) — in the latter case `time` will
27
+ * be `null`. Returns `{ date: null, time: null }` for empty / unparsable
28
+ * input so the controls render as empty and the user can correct the value.
29
+ */
30
+ export declare const fromString: (value: string | null | undefined) => {
31
+ date: Temporal.PlainDate | null;
32
+ time: Temporal.PlainTime | null;
33
+ };
34
+ /**
35
+ * Serializes a date + time pair into the canonical
36
+ * `YYYY-MM-DDTHH:mm[:ss[.SSS]]` string the KNIME backend expects.
37
+ *
38
+ * Missing parts default to `1970-01-01` / `00:00:00` so the user can edit
39
+ * one field while the other is still empty.
40
+ */
41
+ export declare const toString: (date: Temporal.PlainDate | null, time: Temporal.PlainTime | null, granularity?: PlainDateTimeGranularity) => string;
42
+ /**
43
+ * Detects the granularity from the raw wire string. Matches the time portion
44
+ * of ISO strings like `HH:mm`, `HH:mm:ss`, `HH:mm:ss.SSS` (optionally prefixed
45
+ * by a date + `T`).
46
+ *
47
+ * When the finer-grained components are all zero we coarsen the result so the
48
+ * UI doesn't surface noisy `:00` / `.000` fields by default. E.g. `20:22:00`
49
+ * → `minute`, `20:22:22.000` → `second`.
50
+ */
51
+ export declare const detectGranularity: (value: string | null | undefined) => PlainDateTimeGranularity;
52
+ export declare const plainDateTimeUtils: {
53
+ fromString: (value: string | null | undefined) => {
54
+ date: Temporal.PlainDate | null;
55
+ time: Temporal.PlainTime | null;
56
+ };
57
+ toString: (date: Temporal.PlainDate | null, time: Temporal.PlainTime | null, granularity?: PlainDateTimeGranularity) => string;
58
+ detectGranularity: (value: string | null | undefined) => PlainDateTimeGranularity;
59
+ getMaxGranularity: (options: {
60
+ showSeconds?: boolean;
61
+ showMilliseconds?: boolean;
62
+ } | null | undefined, defaults?: {
63
+ showSeconds?: boolean;
64
+ showMilliseconds?: boolean;
65
+ }) => PlainDateTimeGranularity;
66
+ };