@shwfed/config 2.7.4 → 2.7.5

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/dist/mcp.mjs +25 -5
  2. package/dist/module.json +1 -1
  3. package/dist/preview/assets/{badge-BKq7Eh7r.js → badge-DamXUB_x.js} +1 -1
  4. package/dist/preview/assets/{config-DM58--pQ.js → config-CXgHZFVu.js} +1 -1
  5. package/dist/preview/assets/{config-DpTBe8_L.js → config-CYixJlBY.js} +1 -1
  6. package/dist/preview/assets/{config-CXomiRuI.js → config-CtPQb6dK.js} +1 -1
  7. package/dist/preview/assets/{config-C2XmKu42.js → config-DBviu6U0.js} +1 -1
  8. package/dist/preview/assets/{config-C31gRv6X.js → config-Dtj6xvFB.js} +1 -1
  9. package/dist/preview/assets/{config-De_RAxft.js → config-DyKtOYYU.js} +1 -1
  10. package/dist/preview/assets/{config-Dg3cJb4i.js → config-ISM4vT-S.js} +1 -1
  11. package/dist/preview/assets/{config-DD3McP6M.js → config-ulTPyAGw.js} +1 -1
  12. package/dist/preview/assets/{config-CnsvNcA2.js → config-v7KXfP3A.js} +1 -1
  13. package/dist/preview/assets/{definition.vue_vue_type_script_setup_true_lang-D-K8Bmbj.js → definition.vue_vue_type_script_setup_true_lang-C-3KP_in.js} +1 -1
  14. package/dist/preview/assets/index-CqWUukUH.css +1 -0
  15. package/dist/preview/assets/{index-CfwL2UCH.js → index-CzxZSeNm.js} +182 -182
  16. package/dist/preview/assets/{index-4Jigs5K_.js → index-D6fhWrrp.js} +1 -1
  17. package/dist/preview/assets/index-DUSkLHHf.js +1 -0
  18. package/dist/preview/assets/{item-DnUV5B-b.js → item-BAj_4_7-.js} +1 -1
  19. package/dist/preview/assets/{runtime-DnlIppMg.js → runtime-B7NcvR9y.js} +1 -1
  20. package/dist/preview/assets/{runtime-BCxzICuW.js → runtime-BqlrYWt_.js} +1 -1
  21. package/dist/preview/assets/{runtime-Dhi2Tk84.js → runtime-CiWg_Jub.js} +1 -1
  22. package/dist/preview/assets/{runtime-BqhvXsJ-.js → runtime-CpMT9U1z.js} +1 -1
  23. package/dist/preview/assets/{runtime-DAfJmoV1.js → runtime-CswN1gKf.js} +1 -1
  24. package/dist/preview/assets/{runtime-CG4uOgGu.js → runtime-DOK5OTJn.js} +1 -1
  25. package/dist/preview/assets/{runtime-W5CcSnyo.js → runtime-DldmFxn1.js} +1 -1
  26. package/dist/preview/assets/{runtime-ChaoQZI9.js → runtime-WZBVKYom.js} +1 -1
  27. package/dist/preview/assets/{runtime-Dj43RjZC.js → runtime-jVzpCkuu.js} +1 -1
  28. package/dist/preview/index.html +2 -2
  29. package/dist/runtime/components/block-layout-editor/index.d.vue.ts +19 -1
  30. package/dist/runtime/components/block-layout-editor/index.vue +131 -38
  31. package/dist/runtime/components/block-layout-editor/index.vue.d.ts +19 -1
  32. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.form/config.d.vue.ts +4 -0
  33. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.form/config.vue.d.ts +4 -0
  34. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.form/runtime.d.vue.ts +4 -0
  35. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.form/runtime.vue.d.ts +4 -0
  36. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.form/schema.d.ts +4 -0
  37. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.d.vue.ts +4 -0
  38. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.vue.d.ts +4 -0
  39. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.d.vue.ts +4 -0
  40. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.vue.d.ts +4 -0
  41. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/schema.d.ts +6 -0
  42. package/dist/runtime/components/config/blocks/2026-06-02/com.shwfed.block.card/runtime.vue +46 -26
  43. package/dist/runtime/components/config/blocks/2026-06-02/com.shwfed.block.card/schema.js +1 -1
  44. package/dist/runtime/components/form/config.vue +49 -1
  45. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/schema.d.ts +1 -0
  46. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/schema.js +4 -1
  47. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/schema.d.ts +1 -0
  48. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/schema.js +4 -1
  49. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/schema.d.ts +1 -0
  50. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/schema.js +4 -1
  51. package/dist/runtime/components/form/fields/2026-05-20/com.shwfed.form.field.collapsible/schema.d.ts +1 -0
  52. package/dist/runtime/components/form/fields/2026-05-20/com.shwfed.form.field.collapsible/schema.js +4 -1
  53. package/dist/runtime/components/form/index.d.vue.ts +1 -0
  54. package/dist/runtime/components/form/index.vue +8 -0
  55. package/dist/runtime/components/form/index.vue.d.ts +1 -0
  56. package/dist/runtime/components/form/schema.d.ts +25 -0
  57. package/dist/runtime/components/form/schema.js +17 -0
  58. package/dist/runtime/components/form/unit-config.vue +32 -4
  59. package/dist/runtime/components/form/utils/history.d.ts +8 -0
  60. package/dist/runtime/components/form/utils/history.js +8 -0
  61. package/dist/runtime/components/form/utils/resolve.d.ts +9 -0
  62. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.d.vue.ts +2 -2
  63. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.vue.d.ts +2 -2
  64. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.d.vue.ts +2 -2
  65. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.vue.d.ts +2 -2
  66. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.d.vue.ts +2 -2
  67. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.vue.d.ts +2 -2
  68. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.d.vue.ts +2 -2
  69. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.vue.d.ts +2 -2
  70. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.d.vue.ts +2 -2
  71. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.vue.d.ts +2 -2
  72. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.d.vue.ts +2 -2
  73. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.vue.d.ts +2 -2
  74. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.d.vue.ts +26 -26
  75. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.vue.d.ts +26 -26
  76. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.d.vue.ts +26 -26
  77. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.vue.d.ts +26 -26
  78. package/dist/runtime/components/table/schema.d.ts +8 -0
  79. package/dist/runtime/components/ui/command/CommandItem.d.vue.ts +2 -2
  80. package/dist/runtime/components/ui/command/CommandItem.vue +1 -0
  81. package/dist/runtime/components/ui/command/CommandItem.vue.d.ts +2 -2
  82. package/dist/runtime/components/ui/context-menu/ContextMenuContent.d.vue.ts +0 -1
  83. package/dist/runtime/components/ui/context-menu/ContextMenuContent.vue +3 -4
  84. package/dist/runtime/components/ui/context-menu/ContextMenuContent.vue.d.ts +0 -1
  85. package/dist/runtime/components/ui/expression-editor/CodeMirrorInput.vue +17 -2
  86. package/dist/runtime/components/ui/input-group/InputGroupCombobox.d.vue.ts +2 -8
  87. package/dist/runtime/components/ui/input-group/InputGroupCombobox.vue +6 -5
  88. package/dist/runtime/components/ui/input-group/InputGroupCombobox.vue.d.ts +2 -8
  89. package/dist/runtime/components/ui/popover/PopoverContent.d.vue.ts +0 -1
  90. package/dist/runtime/components/ui/popover/PopoverContent.vue +3 -4
  91. package/dist/runtime/components/ui/popover/PopoverContent.vue.d.ts +0 -1
  92. package/dist/runtime/components/ui/tooltip/TooltipContent.d.vue.ts +0 -1
  93. package/dist/runtime/components/ui/tooltip/TooltipContent.vue +3 -4
  94. package/dist/runtime/components/ui/tooltip/TooltipContent.vue.d.ts +0 -1
  95. package/package.json +1 -1
  96. package/dist/preview/assets/index-DNHGrCDe.css +0 -1
  97. package/dist/preview/assets/index-DUo1pTg2.js +0 -1
@@ -33,19 +33,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
33
33
  readonly message: string;
34
34
  }[]] | undefined;
35
35
  readonly readonly?: string | undefined;
36
- readonly write: {
37
- readonly kind: "binding";
38
- readonly binding: string;
39
- } | {
40
- readonly onChange?: string | undefined;
41
- readonly kind: "remote";
42
- readonly triggers?: readonly {
43
- readonly target: string;
44
- readonly operation: string;
45
- }[] | undefined;
46
- readonly accessor: string;
47
- readonly successMessage?: string | undefined;
48
- };
49
36
  readonly grow?: boolean | undefined;
50
37
  readonly enableSorting?: boolean | undefined;
51
38
  readonly options: {
@@ -90,6 +77,19 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
90
77
  }[];
91
78
  };
92
79
  readonly sortKey?: string | undefined;
80
+ readonly write: {
81
+ readonly kind: "binding";
82
+ readonly binding: string;
83
+ } | {
84
+ readonly onChange?: string | undefined;
85
+ readonly kind: "remote";
86
+ readonly triggers?: readonly {
87
+ readonly target: string;
88
+ readonly operation: string;
89
+ }[] | undefined;
90
+ readonly successMessage?: string | undefined;
91
+ readonly accessor: string;
92
+ };
93
93
  }) => any;
94
94
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
95
95
  "onUpdate:modelValue"?: ((value: {
@@ -122,19 +122,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
122
122
  readonly message: string;
123
123
  }[]] | undefined;
124
124
  readonly readonly?: string | undefined;
125
- readonly write: {
126
- readonly kind: "binding";
127
- readonly binding: string;
128
- } | {
129
- readonly onChange?: string | undefined;
130
- readonly kind: "remote";
131
- readonly triggers?: readonly {
132
- readonly target: string;
133
- readonly operation: string;
134
- }[] | undefined;
135
- readonly accessor: string;
136
- readonly successMessage?: string | undefined;
137
- };
138
125
  readonly grow?: boolean | undefined;
139
126
  readonly enableSorting?: boolean | undefined;
140
127
  readonly options: {
@@ -179,6 +166,19 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
179
166
  }[];
180
167
  };
181
168
  readonly sortKey?: string | undefined;
169
+ readonly write: {
170
+ readonly kind: "binding";
171
+ readonly binding: string;
172
+ } | {
173
+ readonly onChange?: string | undefined;
174
+ readonly kind: "remote";
175
+ readonly triggers?: readonly {
176
+ readonly target: string;
177
+ readonly operation: string;
178
+ }[] | undefined;
179
+ readonly successMessage?: string | undefined;
180
+ readonly accessor: string;
181
+ };
182
182
  }) => any) | undefined;
183
183
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
184
184
  declare const _default: typeof __VLS_export;
@@ -33,19 +33,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
33
33
  readonly message: string;
34
34
  }[]] | undefined;
35
35
  readonly readonly?: string | undefined;
36
- readonly write: {
37
- readonly kind: "binding";
38
- readonly binding: string;
39
- } | {
40
- readonly onChange?: string | undefined;
41
- readonly kind: "remote";
42
- readonly triggers?: readonly {
43
- readonly target: string;
44
- readonly operation: string;
45
- }[] | undefined;
46
- readonly accessor: string;
47
- readonly successMessage?: string | undefined;
48
- };
49
36
  readonly grow?: boolean | undefined;
50
37
  readonly enableSorting?: boolean | undefined;
51
38
  readonly options: {
@@ -90,6 +77,19 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
90
77
  }[];
91
78
  };
92
79
  readonly sortKey?: string | undefined;
80
+ readonly write: {
81
+ readonly kind: "binding";
82
+ readonly binding: string;
83
+ } | {
84
+ readonly onChange?: string | undefined;
85
+ readonly kind: "remote";
86
+ readonly triggers?: readonly {
87
+ readonly target: string;
88
+ readonly operation: string;
89
+ }[] | undefined;
90
+ readonly successMessage?: string | undefined;
91
+ readonly accessor: string;
92
+ };
93
93
  }) => any;
94
94
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
95
95
  "onUpdate:modelValue"?: ((value: {
@@ -122,19 +122,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
122
122
  readonly message: string;
123
123
  }[]] | undefined;
124
124
  readonly readonly?: string | undefined;
125
- readonly write: {
126
- readonly kind: "binding";
127
- readonly binding: string;
128
- } | {
129
- readonly onChange?: string | undefined;
130
- readonly kind: "remote";
131
- readonly triggers?: readonly {
132
- readonly target: string;
133
- readonly operation: string;
134
- }[] | undefined;
135
- readonly accessor: string;
136
- readonly successMessage?: string | undefined;
137
- };
138
125
  readonly grow?: boolean | undefined;
139
126
  readonly enableSorting?: boolean | undefined;
140
127
  readonly options: {
@@ -179,6 +166,19 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
179
166
  }[];
180
167
  };
181
168
  readonly sortKey?: string | undefined;
169
+ readonly write: {
170
+ readonly kind: "binding";
171
+ readonly binding: string;
172
+ } | {
173
+ readonly onChange?: string | undefined;
174
+ readonly kind: "remote";
175
+ readonly triggers?: readonly {
176
+ readonly target: string;
177
+ readonly operation: string;
178
+ }[] | undefined;
179
+ readonly successMessage?: string | undefined;
180
+ readonly accessor: string;
181
+ };
182
182
  }) => any) | undefined;
183
183
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
184
184
  declare const _default: typeof __VLS_export;
@@ -135,10 +135,12 @@ export declare function TableConfig(configure: (env: Environment) => void): Sche
135
135
  }[];
136
136
  readonly query?: {
137
137
  readonly style?: string | undefined;
138
+ readonly id?: string | undefined;
138
139
  readonly initial?: {
139
140
  readonly data: string;
140
141
  readonly request?: string | undefined;
141
142
  } | undefined;
143
+ readonly displayName?: string | undefined;
142
144
  readonly kind: "shwfed.component.form";
143
145
  readonly fields: readonly any[];
144
146
  readonly layouts: readonly {
@@ -440,10 +442,12 @@ export declare function TableConfig(configure: (env: Environment) => void): Sche
440
442
  }>>;
441
443
  query: Schema.optional<Schema.refine<{
442
444
  readonly style?: string | undefined;
445
+ readonly id?: string | undefined;
443
446
  readonly initial?: {
444
447
  readonly data: string;
445
448
  readonly request?: string | undefined;
446
449
  } | undefined;
450
+ readonly displayName?: string | undefined;
447
451
  readonly kind: "shwfed.component.form";
448
452
  readonly fields: readonly any[];
449
453
  readonly layouts: readonly {
@@ -498,6 +502,8 @@ export declare function TableConfig(configure: (env: Environment) => void): Sche
498
502
  }>;
499
503
  }>>>;
500
504
  kind: Schema.tag<"shwfed.component.form">;
505
+ id: Schema.optional<Schema.refine<string, typeof Schema.String>>;
506
+ displayName: Schema.optional<Schema.SchemaClass<string, string, never>>;
501
507
  initial: Schema.optional<Schema.transform<Schema.Union<[Schema.Schema<string, string, never>, Schema.Struct<{
502
508
  request: Schema.optional<Schema.Schema<string, string, never>>;
503
509
  data: Schema.Schema<string, string, never>;
@@ -577,10 +583,12 @@ export declare function createTableConfig(body: Omit<Schema.Schema.Type<ReturnTy
577
583
  }[];
578
584
  query?: {
579
585
  readonly style?: string | undefined;
586
+ readonly id?: string | undefined;
580
587
  readonly initial?: {
581
588
  readonly data: string;
582
589
  readonly request?: string | undefined;
583
590
  } | undefined;
591
+ readonly displayName?: string | undefined;
584
592
  readonly kind: "shwfed.component.form";
585
593
  readonly fields: readonly any[];
586
594
  readonly layouts: readonly {
@@ -10,9 +10,9 @@ type __VLS_Props = ListboxItemProps & {
10
10
  */
11
11
  keywords?: string;
12
12
  };
13
- declare var __VLS_11: {};
13
+ declare var __VLS_12: {};
14
14
  type __VLS_Slots = {} & {
15
- default?: (props: typeof __VLS_11) => any;
15
+ default?: (props: typeof __VLS_12) => any;
16
16
  };
17
17
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
18
  select: (event: import("reka-ui").ListboxItemSelectEvent<import("reka-ui").AcceptableValue>) => any;
@@ -76,6 +76,7 @@ onUnmounted(() => {
76
76
  data-slot="command-item"
77
77
  :class="cn('data-highlighted:bg-zinc-100 data-highlighted:text-zinc-700 hover:bg-zinc-50 [&_svg:not([class*=\'text-\'])]:text-zinc-700 cursor-pointer relative flex items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*=\'size-\'])]:size-4', props.class)"
78
78
  @select="handleSelect"
79
+ @mousedown.prevent
79
80
  >
80
81
  <slot />
81
82
  </ListboxItem>
@@ -10,9 +10,9 @@ type __VLS_Props = ListboxItemProps & {
10
10
  */
11
11
  keywords?: string;
12
12
  };
13
- declare var __VLS_11: {};
13
+ declare var __VLS_12: {};
14
14
  type __VLS_Slots = {} & {
15
- default?: (props: typeof __VLS_11) => any;
15
+ default?: (props: typeof __VLS_12) => any;
16
16
  };
17
17
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
18
  select: (event: import("reka-ui").ListboxItemSelectEvent<import("reka-ui").AcceptableValue>) => any;
@@ -2,7 +2,6 @@ import type { ContextMenuContentProps } from 'reka-ui';
2
2
  import type { HTMLAttributes } from 'vue';
3
3
  type __VLS_Props = ContextMenuContentProps & {
4
4
  class?: HTMLAttributes['class'];
5
- to?: string | HTMLElement | null;
6
5
  };
7
6
  declare var __VLS_14: {};
8
7
  type __VLS_Slots = {} & {
@@ -27,16 +27,15 @@ const props = defineProps({
27
27
  reference: { type: null, required: false },
28
28
  asChild: { type: Boolean, required: false },
29
29
  as: { type: null, required: false },
30
- class: { type: [Boolean, null, String, Object, Array], required: false, skipCheck: true },
31
- to: { type: null, required: false }
30
+ class: { type: [Boolean, null, String, Object, Array], required: false, skipCheck: true }
32
31
  });
33
32
  const emits = defineEmits(["escapeKeyDown", "pointerDownOutside", "focusOutside", "interactOutside", "closeAutoFocus"]);
34
- const delegatedProps = reactiveOmit(props, "class", "to");
33
+ const delegatedProps = reactiveOmit(props, "class");
35
34
  const forwarded = useForwardPropsEmits(delegatedProps, emits);
36
35
  </script>
37
36
 
38
37
  <template>
39
- <ContextMenuPortal :to="to ?? void 0">
38
+ <ContextMenuPortal>
40
39
  <ContextMenuContent
41
40
  data-slot="context-menu-content"
42
41
  v-bind="{ ...$attrs, ...forwarded }"
@@ -2,7 +2,6 @@ import type { ContextMenuContentProps } from 'reka-ui';
2
2
  import type { HTMLAttributes } from 'vue';
3
3
  type __VLS_Props = ContextMenuContentProps & {
4
4
  class?: HTMLAttributes['class'];
5
- to?: string | HTMLElement | null;
6
5
  };
7
6
  declare var __VLS_14: {};
8
7
  type __VLS_Slots = {} & {
@@ -41,7 +41,14 @@ const editorTheme = EditorView.theme({
41
41
  },
42
42
  ".cm-scroller": {
43
43
  fontFamily: "var(--font-mono)",
44
- lineHeight: "1.5"
44
+ lineHeight: "1.5",
45
+ // Behave like a native <input>: a single line that outgrows a narrow editor
46
+ // scrolls horizontally with the caret, but never surfaces a scrollbar —
47
+ // whose track would otherwise read as a stray line under the field.
48
+ scrollbarWidth: "none"
49
+ },
50
+ ".cm-scroller::-webkit-scrollbar": {
51
+ display: "none"
45
52
  },
46
53
  ".cm-line": {
47
54
  padding: "0"
@@ -127,8 +134,16 @@ defineExpose({ insertAtSelection, focus });
127
134
  data-slot="input-group-control"
128
135
  :class="cn(
129
136
  'flex-1 min-w-0 self-stretch overflow-x-auto px-3',
130
- props.multiline ? '[&_.cm-content]:min-h-16' : '[&_.cm-scroller]:items-center',
137
+ // Single-line: `overflow-x-auto` on its own makes the browser promote
138
+ // `overflow-y` from `visible` to `auto` (CSS spec quirk), so the 1px gap
139
+ // between the 35px content box and the 34px `h-9` host surfaces a phantom
140
+ // vertical scrollbar. Pin it hidden — one line never scrolls vertically.
141
+ props.multiline ? '[&_.cm-content]:min-h-16' : 'overflow-y-hidden [&_.cm-scroller]:items-center',
131
142
  props.class
132
143
  )"
133
144
  />
134
145
  </template>
146
+
147
+ <style scoped>
148
+ [data-slot=input-group-control]{scrollbar-width:none}[data-slot=input-group-control]::-webkit-scrollbar{display:none}
149
+ </style>
@@ -2,16 +2,10 @@ import { type PopoverContentProps } from 'reka-ui';
2
2
  type __VLS_Props = PopoverContentProps & {
3
3
  disabled?: boolean;
4
4
  invalid?: boolean;
5
- /**
6
- * Render target for the popover portal. Pass a container ref to keep the
7
- * dropdown inside (e.g. a fullscreen ancestor); leave unset for the
8
- * default body-level portal.
9
- */
10
- to?: string | HTMLElement | null;
11
5
  };
12
- declare var __VLS_50: {};
6
+ declare var __VLS_52: {};
13
7
  type __VLS_Slots = {} & {
14
- default?: (props: typeof __VLS_50) => any;
8
+ default?: (props: typeof __VLS_52) => any;
15
9
  };
16
10
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
17
11
  blur: (...args: any[]) => void;
@@ -5,6 +5,7 @@ import InputGroupComboboxInput from "./InputGroupComboboxInput.vue";
5
5
  import { Icon } from "@iconify/vue";
6
6
  import { useForwardProps } from "reka-ui";
7
7
  import { reactiveOmit } from "@vueuse/core";
8
+ import { ref } from "vue";
8
9
  import { useI18n } from "vue-i18n";
9
10
  import { getInputGroupReference } from ".";
10
11
  const { t } = useI18n({
@@ -39,20 +40,21 @@ const props = defineProps({
39
40
  as: { type: null, required: false },
40
41
  disableOutsidePointerEvents: { type: Boolean, required: false },
41
42
  disabled: { type: Boolean, required: false },
42
- invalid: { type: Boolean, required: false },
43
- to: { type: null, required: false }
43
+ invalid: { type: Boolean, required: false }
44
44
  });
45
45
  const emits = defineEmits(["blur"]);
46
- const delegatedProps = reactiveOmit(props, "disabled", "invalid", "to");
46
+ const delegatedProps = reactiveOmit(props, "disabled", "invalid");
47
47
  const forwarded = useForwardProps(delegatedProps);
48
+ const open = ref(false);
48
49
  </script>
49
50
 
50
51
  <template>
51
52
  <Command
52
53
  as-child
53
54
  :disabled="props.disabled"
55
+ @update:model-value="open = false"
54
56
  >
55
- <Popover>
57
+ <Popover v-model:open="open">
56
58
  <PopoverTrigger
57
59
  as="input"
58
60
  as-child
@@ -64,7 +66,6 @@ const forwarded = useForwardProps(delegatedProps);
64
66
  </PopoverTrigger>
65
67
  <PopoverContent
66
68
  v-bind="forwarded"
67
- :to="props.to ?? void 0"
68
69
  :reference="getInputGroupReference().value ?? void 0"
69
70
  :style="{
70
71
  width: 'var(--reka-popover-trigger-width)'
@@ -2,16 +2,10 @@ import { type PopoverContentProps } from 'reka-ui';
2
2
  type __VLS_Props = PopoverContentProps & {
3
3
  disabled?: boolean;
4
4
  invalid?: boolean;
5
- /**
6
- * Render target for the popover portal. Pass a container ref to keep the
7
- * dropdown inside (e.g. a fullscreen ancestor); leave unset for the
8
- * default body-level portal.
9
- */
10
- to?: string | HTMLElement | null;
11
5
  };
12
- declare var __VLS_50: {};
6
+ declare var __VLS_52: {};
13
7
  type __VLS_Slots = {} & {
14
- default?: (props: typeof __VLS_50) => any;
8
+ default?: (props: typeof __VLS_52) => any;
15
9
  };
16
10
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
17
11
  blur: (...args: any[]) => void;
@@ -2,7 +2,6 @@ import type { PopoverContentProps } from 'reka-ui';
2
2
  import type { HTMLAttributes } from 'vue';
3
3
  type __VLS_Props = PopoverContentProps & {
4
4
  class?: HTMLAttributes['class'];
5
- to?: string | HTMLElement | null;
6
5
  };
7
6
  declare var __VLS_14: {};
8
7
  type __VLS_Slots = {} & {
@@ -32,16 +32,15 @@ const props = defineProps({
32
32
  asChild: { type: Boolean, required: false },
33
33
  as: { type: null, required: false },
34
34
  disableOutsidePointerEvents: { type: Boolean, required: false },
35
- class: { type: [Boolean, null, String, Object, Array], required: false, skipCheck: true },
36
- to: { type: null, required: false }
35
+ class: { type: [Boolean, null, String, Object, Array], required: false, skipCheck: true }
37
36
  });
38
37
  const emits = defineEmits(["escapeKeyDown", "pointerDownOutside", "focusOutside", "interactOutside", "openAutoFocus", "closeAutoFocus"]);
39
- const delegatedProps = reactiveOmit(props, "class", "to");
38
+ const delegatedProps = reactiveOmit(props, "class");
40
39
  const forwarded = useForwardPropsEmits(delegatedProps, emits);
41
40
  </script>
42
41
 
43
42
  <template>
44
- <PopoverPortal :to="to ?? void 0">
43
+ <PopoverPortal>
45
44
  <PopoverContent
46
45
  data-slot="popover-content"
47
46
  v-bind="{ ...$attrs, ...forwarded }"
@@ -2,7 +2,6 @@ import type { PopoverContentProps } from 'reka-ui';
2
2
  import type { HTMLAttributes } from 'vue';
3
3
  type __VLS_Props = PopoverContentProps & {
4
4
  class?: HTMLAttributes['class'];
5
- to?: string | HTMLElement | null;
6
5
  };
7
6
  declare var __VLS_14: {};
8
7
  type __VLS_Slots = {} & {
@@ -2,7 +2,6 @@ import type { TooltipContentProps } from 'reka-ui';
2
2
  import type { HTMLAttributes } from 'vue';
3
3
  type __VLS_Props = TooltipContentProps & {
4
4
  class?: HTMLAttributes['class'];
5
- to?: string | HTMLElement | null;
6
5
  };
7
6
  declare var __VLS_14: {};
8
7
  type __VLS_Slots = {} & {
@@ -22,16 +22,15 @@ const props = defineProps({
22
22
  hideWhenDetached: { type: Boolean, required: false },
23
23
  positionStrategy: { type: String, required: false },
24
24
  updatePositionStrategy: { type: String, required: false },
25
- class: { type: [Boolean, null, String, Object, Array], required: false, skipCheck: true },
26
- to: { type: null, required: false }
25
+ class: { type: [Boolean, null, String, Object, Array], required: false, skipCheck: true }
27
26
  });
28
27
  const emits = defineEmits(["escapeKeyDown", "pointerDownOutside"]);
29
- const delegatedProps = reactiveOmit(props, "class", "to");
28
+ const delegatedProps = reactiveOmit(props, "class");
30
29
  const forwarded = useForwardPropsEmits(delegatedProps, emits);
31
30
  </script>
32
31
 
33
32
  <template>
34
- <TooltipPortal :to="to ?? void 0">
33
+ <TooltipPortal>
35
34
  <TooltipContent
36
35
  data-slot="tooltip-content"
37
36
  v-bind="{ ...forwarded, ...$attrs }"
@@ -2,7 +2,6 @@ import type { TooltipContentProps } from 'reka-ui';
2
2
  import type { HTMLAttributes } from 'vue';
3
3
  type __VLS_Props = TooltipContentProps & {
4
4
  class?: HTMLAttributes['class'];
5
- to?: string | HTMLElement | null;
6
5
  };
7
6
  declare var __VLS_14: {};
8
7
  type __VLS_Slots = {} & {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shwfed/config",
3
- "version": "2.7.4",
3
+ "version": "2.7.5",
4
4
  "description": "Configurable UI for SHWFED",
5
5
  "type": "module",
6
6
  "publishConfig": {