@knime/jsonforms 1.21.12 → 1.21.14

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 (96) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/{AnyOfTwinlist-okh3acrL.js → AnyOfTwinlist-CV39JeCp.js} +1 -1
  3. package/dist/{CheckboxControl-WvUWHssa.js → CheckboxControl-CS4nuJTP.js} +1 -1
  4. package/dist/{CheckboxesControl-FdF0BBj6.js → CheckboxesControl-DXJMkZ49.js} +2 -2
  5. package/dist/{ColorControl-DoojVQVN.js → ColorControl-CpBVJh38.js} +1 -1
  6. package/dist/{ColorPreviewControl-BbltK_sQ.js → ColorPreviewControl-0VK3OqwY.js} +1 -1
  7. package/dist/{ComboBoxControl-CUld4KT6.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-DIKJ38Cu.js → DateTimeFormatPickerControl-Cx3yfT3O.js} +1 -1
  11. package/dist/DateTimeFormatPickerWithTypeControl-CodEVQG_.js +586 -0
  12. package/dist/{DropdownControl-C5lnjQYg.js → DropdownControl-DEggcwK1.js} +2 -2
  13. package/dist/{ExecutorCoresControl-CfgW_CAA.js → ExecutorCoresControl-CvCVcaHM.js} +1 -1
  14. package/dist/{ExecutorMemoryControl-DQ5K142Z.js → ExecutorMemoryControl-CpbVJNq4.js} +1 -1
  15. package/dist/{FileUploadControl-BHA9VMk6.js → FileUploadControl-CNUi9QfR.js} +21 -21
  16. package/dist/{GridSelectionControl-_y030flL.js → GridSelectionControl-HV2yNE4R.js} +14 -14
  17. package/dist/{HorizontalLayout-aR7lYnE1.js → HorizontalLayout-Cqf3hzxv.js} +1 -1
  18. package/dist/{IntegerControl-BiWKa6qP.js → IntegerControl-Ba5QkLCa.js} +1 -1
  19. package/dist/IntervalControl-DlLV8RQr.js +48 -0
  20. package/dist/{LinkControl-CloaPEeg.js → LinkControl-COH9jvPg.js} +4 -4
  21. package/dist/{LoadingDropdown.vue_vue_type_script_setup_true_lang-CIHUkMU_.js → LoadingDropdown.vue_vue_type_script_setup_true_lang-Cir2ym2M.js} +5 -5
  22. package/dist/{ManualTwinlistControl-C8duERky.js → ManualTwinlistControl-jJGxlq9j.js} +3 -3
  23. package/dist/{MultiSelectListBoxControl-BVd9aG_L.js → MultiSelectListBoxControl-DcWDraNF.js} +12 -12
  24. package/dist/{MultimodeTwinlistControl-Cpn3Obqv.js → MultimodeTwinlistControl-B-rEhgKQ.js} +1 -1
  25. package/dist/{MultimodeTwinlistControl.vue_vue_type_script_setup_true_lang-BWDpSwd8.js → MultimodeTwinlistControl.vue_vue_type_script_setup_true_lang-yhmiIg95.js} +5 -5
  26. package/dist/{NameFilter-DiGEe3xM.js → NameFilter-BFKNf9cO.js} +1 -1
  27. package/dist/{NumberControl-CLqg9R1h.js → NumberControl-BAxGZy_4.js} +1 -1
  28. package/dist/{NumberControlBase.vue_vue_type_script_setup_true_lang-BmD_chMa.js → NumberControlBase.vue_vue_type_script_setup_true_lang-Dlxx71hk.js} +2 -2
  29. package/dist/{OneOfDropdown-C-uZgb2n.js → OneOfDropdown-DcetHKT5.js} +4 -4
  30. package/dist/{RadioButtonsWithDescriptionControl-B-7qAPKi.js → RadioButtonsWithDescriptionControl-pZ0gJ6iz.js} +4 -4
  31. package/dist/{RadioControl-1uSlBli9.js → RadioControl-B8-nxddP.js} +1 -1
  32. package/dist/{RadioControlBase.vue_vue_type_script_setup_true_lang-D9p-74CQ.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-DP_G9eeL.js → RichTextControl-kptCYz2A.js} +5874 -4964
  35. package/dist/{SectionHeading-DXTZxEqf.js → SectionHeading-MlqCj5BS.js} +1 -1
  36. package/dist/{SectionLayout-7ccuUrYw.js → SectionLayout-nV1GnghP.js} +3 -3
  37. package/dist/SettingsSubPanel-Z6urYwz1.js +5 -0
  38. package/dist/{SettingsSubPanelLayout-yLYlXH0u.js → SettingsSubPanelLayout-BNMJbUsL.js} +4 -4
  39. package/dist/{SimpleButtonControl-CDWXL2xf.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-BNCs9d3G.js → SimpleTwinlistControl-Ds2BQOoO.js} +2 -2
  42. package/dist/{SingleSelectControl-C6_AaIOD.js → SingleSelectControl-CLv_Mah-.js} +2 -2
  43. package/dist/{SingleSelectListBoxControl-SaXGIZu1.js → SingleSelectListBoxControl-DM_5t3Nv.js} +3 -3
  44. package/dist/{SortListControl-CE-fFPEt.js → SortListControl-COd0WHwd.js} +1 -1
  45. package/dist/{StyledListItem-CVxAhfg9.js → StyledListItem-D3NbpWl3.js} +1 -1
  46. package/dist/{TeamAndSpacesControl-BbnSrDDM.js → TeamAndSpacesControl-A8mWrSE4.js} +1 -1
  47. package/dist/{TeamResourceControl-BzK-poDQ.js → TeamResourceControl-CAgwzjRZ.js} +1 -1
  48. package/dist/{TextAreaControl-CV31xMV2.js → TextAreaControl-DRBGqA7a.js} +1 -1
  49. package/dist/{TextControl-Cd8b0ciV.js → TextControl--Tw-AE3y.js} +1 -1
  50. package/dist/{TextControl.vue_vue_type_script_setup_true_lang-Dy33yTWA.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-CEd5Mao3.js → TwinlistControlBase.vue_vue_type_script_setup_true_lang-BRq0ANwm.js} +2 -2
  54. package/dist/{TypedStringFilter-NxkEmoJG.js → TypedStringFilter-UUuSnJNk.js} +1 -1
  55. package/dist/{ValueSwitchControl-DSQYeBjc.js → ValueSwitchControl-BwERUIyr.js} +1 -1
  56. package/dist/{VerticalLayout-B0nfyfhR.js → VerticalLayout-BET3pZ_K.js} +2 -2
  57. package/dist/{VerticalLayoutBase-CsDLPDdW.js → VerticalLayoutBase-HYtDwVLA.js} +1 -1
  58. package/dist/ZonedDateTimeControl-CsbZwGMX.js +77 -0
  59. package/dist/{_Uint8Array-CZYa_ni2.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/uiComponents/DateControl.vue.d.ts +1 -1
  66. package/dist/src/uiComponents/DateTimeControl.vue.d.ts +1 -1
  67. package/dist/src/uiComponents/TimeControl.vue.d.ts +1 -1
  68. package/dist/src/utils/plainDateTimeUtils.d.ts +66 -0
  69. package/dist/testing.js +4285 -3982
  70. package/dist/{toString-CLKrIkFV.js → toString-B8vqfiDe.js} +3 -4
  71. package/dist/{useBuiltinValidations-DiMyBW0e.js → useBuiltinValidations-CzYsm8oq.js} +1 -1
  72. package/dist/useDropdownNavigation-CdrbT-CQ.js +2003 -0
  73. package/dist/usePlainDateTimeBatch-Bd2G-GY9.js +34 -0
  74. package/dist/{usePossibleValues--Oc7RF2X.js → usePossibleValues-CGt7yrJ6.js} +1 -1
  75. package/dist/{useUnknownValuesInTwinlist-Tb5xfKVI.js → useUnknownValuesInTwinlist-Bez1tY4_.js} +1 -1
  76. package/package.json +7 -11
  77. package/dist/DateControl-BY2P3mI9.js +0 -35
  78. package/dist/DateTimeControl-y0PRMQPw.js +0 -44
  79. package/dist/DateTimeFormatPickerWithTypeControl-BxT897aw.js +0 -464
  80. package/dist/IntervalControl-VJCTzAIh.js +0 -751
  81. package/dist/ResourceControlBase-Dc_hzlRC.js +0 -69
  82. package/dist/SettingsSubPanel-x2JfGeo0.js +0 -5
  83. package/dist/SimpleButtonControl.vue_vue_type_style_index_0_scoped_17a4a240_lang-BDEWXlve.js +0 -28302
  84. package/dist/TimeControl-BVtkHiqK.js +0 -35
  85. package/dist/TimePartInput-BXq9OsnT.js +0 -254
  86. package/dist/TimeframesControl-Cj7ecpdC.js +0 -87
  87. package/dist/Tooltip-ClY9sTfM.js +0 -24
  88. package/dist/ValueSwitch-CZZKbbiG.js +0 -130
  89. package/dist/ZonedDateTimeControl-CuS1pIG-.js +0 -66
  90. package/dist/_baseIteratee-BHa5eKgU.js +0 -308
  91. package/dist/arrow-dropdown-DMFBPPcK.js +0 -17
  92. package/dist/floating-ui.vue-Bk6u3tWN.js +0 -1060
  93. package/dist/localTimeUtils-BKrpWptT.js +0 -12315
  94. package/dist/popper-iehk3xNV.js +0 -923
  95. package/dist/src/utils/localTimeUtils.d.ts +0 -18
  96. 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-BDEWXlve.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-BDEWXlve.js";
4
- import { default as je } from "./SimpleButtonControl-CDWXL2xf.js";
5
- import { _ as Ee } from "./TextControl.vue_vue_type_script_setup_true_lang-Dy33yTWA.js";
6
- import { V as Ne } from "./VerticalLayoutBase-CsDLPDdW.js";
7
- import { S as Ae } from "./SectionHeading-DXTZxEqf.js";
8
- import { S as Ie } from "./SettingsSubPanel-x2JfGeo0.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
+ };
@@ -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
+ };