@shwfed/config 2.12.9 → 2.12.11

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 (43) hide show
  1. package/dist/module.json +1 -1
  2. package/dist/module.mjs +8 -3
  3. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.d.vue.ts +68 -68
  4. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.vue.d.ts +68 -68
  5. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.d.vue.ts +68 -68
  6. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.vue.d.ts +68 -68
  7. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/schema.d.ts +34 -34
  8. package/dist/runtime/components/config/blocks/2026-06-17/com.shwfed.block.tree.single/runtime.vue +20 -2
  9. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/runtime.vue +2 -0
  10. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/runtime.vue +2 -0
  11. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/runtime.vue +2 -0
  12. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/runtime.vue +2 -0
  13. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/runtime.vue +2 -0
  14. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/runtime.vue +2 -0
  15. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/runtime.vue +2 -0
  16. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/runtime.vue +2 -0
  17. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/runtime.vue +2 -0
  18. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/runtime.vue +2 -0
  19. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/runtime.vue +5 -2
  20. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/runtime.vue +2 -0
  21. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/runtime.vue +2 -0
  22. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/runtime.vue +2 -0
  23. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/runtime.vue +2 -0
  24. package/dist/runtime/components/form/fields/2026-06-09/com.shwfed.form.field.upload/runtime.vue +9 -1
  25. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.multi/runtime.vue +2 -0
  26. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.single/runtime.vue +2 -0
  27. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +2 -2
  28. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +2 -2
  29. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +2 -2
  30. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +2 -2
  31. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +2 -2
  32. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +2 -2
  33. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +2 -2
  34. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +2 -2
  35. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +2 -2
  36. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +2 -2
  37. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +2 -2
  38. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +2 -2
  39. package/dist/runtime/components/table/config.vue +4 -1
  40. package/dist/runtime/components/table/index.vue +23 -2
  41. package/dist/runtime/components/table/schema.d.ts +68 -68
  42. package/dist/runtime/components/ui/field/index.js +6 -1
  43. package/package.json +1 -1
@@ -44,7 +44,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
44
44
  readonly data: string;
45
45
  readonly request?: string | undefined;
46
46
  };
47
- readonly enableSorting?: boolean | undefined;
48
47
  readonly nodeKey: string;
49
48
  readonly nodeChildren: string;
50
49
  readonly nodeLabel: readonly [{
@@ -54,6 +53,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
54
53
  readonly locale: "en" | "ja" | "ko";
55
54
  readonly message: string;
56
55
  }[]];
56
+ readonly enableSorting?: boolean | undefined;
57
57
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
58
58
  readonly nodeTooltip?: readonly [{
59
59
  readonly locale: "zh";
@@ -108,7 +108,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
108
108
  readonly data: string;
109
109
  readonly request?: string | undefined;
110
110
  };
111
- readonly enableSorting?: boolean | undefined;
112
111
  readonly nodeKey: string;
113
112
  readonly nodeChildren: string;
114
113
  readonly nodeLabel: readonly [{
@@ -118,6 +117,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
118
117
  readonly locale: "en" | "ja" | "ko";
119
118
  readonly message: string;
120
119
  }[]];
120
+ readonly enableSorting?: boolean | undefined;
121
121
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
122
122
  readonly nodeTooltip?: readonly [{
123
123
  readonly locale: "zh";
@@ -44,7 +44,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
44
44
  readonly data: string;
45
45
  readonly request?: string | undefined;
46
46
  };
47
- readonly enableSorting?: boolean | undefined;
48
47
  readonly nodeKey: string;
49
48
  readonly nodeChildren: string;
50
49
  readonly nodeLabel: readonly [{
@@ -54,6 +53,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
54
53
  readonly locale: "en" | "ja" | "ko";
55
54
  readonly message: string;
56
55
  }[]];
56
+ readonly enableSorting?: boolean | undefined;
57
57
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
58
58
  readonly nodeTooltip?: readonly [{
59
59
  readonly locale: "zh";
@@ -108,7 +108,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
108
108
  readonly data: string;
109
109
  readonly request?: string | undefined;
110
110
  };
111
- readonly enableSorting?: boolean | undefined;
112
111
  readonly nodeKey: string;
113
112
  readonly nodeChildren: string;
114
113
  readonly nodeLabel: readonly [{
@@ -118,6 +117,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
118
117
  readonly locale: "en" | "ja" | "ko";
119
118
  readonly message: string;
120
119
  }[]];
120
+ readonly enableSorting?: boolean | undefined;
121
121
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
122
122
  readonly nodeTooltip?: readonly [{
123
123
  readonly locale: "zh";
@@ -44,7 +44,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
44
44
  readonly data: string;
45
45
  readonly request?: string | undefined;
46
46
  };
47
- readonly enableSorting?: boolean | undefined;
48
47
  readonly nodeKey: string;
49
48
  readonly nodeChildren: string;
50
49
  readonly nodeLabel: readonly [{
@@ -54,6 +53,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
54
53
  readonly locale: "en" | "ja" | "ko";
55
54
  readonly message: string;
56
55
  }[]];
56
+ readonly enableSorting?: boolean | undefined;
57
57
  readonly nodeTooltip?: readonly [{
58
58
  readonly locale: "zh";
59
59
  readonly message: string;
@@ -107,7 +107,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
107
107
  readonly data: string;
108
108
  readonly request?: string | undefined;
109
109
  };
110
- readonly enableSorting?: boolean | undefined;
111
110
  readonly nodeKey: string;
112
111
  readonly nodeChildren: string;
113
112
  readonly nodeLabel: readonly [{
@@ -117,6 +116,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
117
116
  readonly locale: "en" | "ja" | "ko";
118
117
  readonly message: string;
119
118
  }[]];
119
+ readonly enableSorting?: boolean | undefined;
120
120
  readonly nodeTooltip?: readonly [{
121
121
  readonly locale: "zh";
122
122
  readonly message: string;
@@ -44,7 +44,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
44
44
  readonly data: string;
45
45
  readonly request?: string | undefined;
46
46
  };
47
- readonly enableSorting?: boolean | undefined;
48
47
  readonly nodeKey: string;
49
48
  readonly nodeChildren: string;
50
49
  readonly nodeLabel: readonly [{
@@ -54,6 +53,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
54
53
  readonly locale: "en" | "ja" | "ko";
55
54
  readonly message: string;
56
55
  }[]];
56
+ readonly enableSorting?: boolean | undefined;
57
57
  readonly nodeTooltip?: readonly [{
58
58
  readonly locale: "zh";
59
59
  readonly message: string;
@@ -107,7 +107,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
107
107
  readonly data: string;
108
108
  readonly request?: string | undefined;
109
109
  };
110
- readonly enableSorting?: boolean | undefined;
111
110
  readonly nodeKey: string;
112
111
  readonly nodeChildren: string;
113
112
  readonly nodeLabel: readonly [{
@@ -117,6 +116,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
117
116
  readonly locale: "en" | "ja" | "ko";
118
117
  readonly message: string;
119
118
  }[]];
119
+ readonly enableSorting?: boolean | undefined;
120
120
  readonly nodeTooltip?: readonly [{
121
121
  readonly locale: "zh";
122
122
  readonly message: string;
@@ -45,10 +45,10 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
45
45
  readonly data: string;
46
46
  readonly request?: string | undefined;
47
47
  };
48
- readonly enableSorting?: boolean | undefined;
49
48
  readonly nodeKey: string;
50
49
  readonly nodeChildren: string;
51
50
  readonly nodeLabel: string;
51
+ readonly enableSorting?: boolean | undefined;
52
52
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
53
53
  readonly nodeTooltip?: readonly [{
54
54
  readonly locale: "zh";
@@ -104,10 +104,10 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
104
104
  readonly data: string;
105
105
  readonly request?: string | undefined;
106
106
  };
107
- readonly enableSorting?: boolean | undefined;
108
107
  readonly nodeKey: string;
109
108
  readonly nodeChildren: string;
110
109
  readonly nodeLabel: string;
110
+ readonly enableSorting?: boolean | undefined;
111
111
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
112
112
  readonly nodeTooltip?: readonly [{
113
113
  readonly locale: "zh";
@@ -45,10 +45,10 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
45
45
  readonly data: string;
46
46
  readonly request?: string | undefined;
47
47
  };
48
- readonly enableSorting?: boolean | undefined;
49
48
  readonly nodeKey: string;
50
49
  readonly nodeChildren: string;
51
50
  readonly nodeLabel: string;
51
+ readonly enableSorting?: boolean | undefined;
52
52
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
53
53
  readonly nodeTooltip?: readonly [{
54
54
  readonly locale: "zh";
@@ -104,10 +104,10 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
104
104
  readonly data: string;
105
105
  readonly request?: string | undefined;
106
106
  };
107
- readonly enableSorting?: boolean | undefined;
108
107
  readonly nodeKey: string;
109
108
  readonly nodeChildren: string;
110
109
  readonly nodeLabel: string;
110
+ readonly enableSorting?: boolean | undefined;
111
111
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
112
112
  readonly nodeTooltip?: readonly [{
113
113
  readonly locale: "zh";
@@ -45,10 +45,10 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
45
45
  readonly data: string;
46
46
  readonly request?: string | undefined;
47
47
  };
48
- readonly enableSorting?: boolean | undefined;
49
48
  readonly nodeKey: string;
50
49
  readonly nodeChildren: string;
51
50
  readonly nodeLabel: string;
51
+ readonly enableSorting?: boolean | undefined;
52
52
  readonly nodeTooltip?: readonly [{
53
53
  readonly locale: "zh";
54
54
  readonly message: string;
@@ -103,10 +103,10 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
103
103
  readonly data: string;
104
104
  readonly request?: string | undefined;
105
105
  };
106
- readonly enableSorting?: boolean | undefined;
107
106
  readonly nodeKey: string;
108
107
  readonly nodeChildren: string;
109
108
  readonly nodeLabel: string;
109
+ readonly enableSorting?: boolean | undefined;
110
110
  readonly nodeTooltip?: readonly [{
111
111
  readonly locale: "zh";
112
112
  readonly message: string;
@@ -45,10 +45,10 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
45
45
  readonly data: string;
46
46
  readonly request?: string | undefined;
47
47
  };
48
- readonly enableSorting?: boolean | undefined;
49
48
  readonly nodeKey: string;
50
49
  readonly nodeChildren: string;
51
50
  readonly nodeLabel: string;
51
+ readonly enableSorting?: boolean | undefined;
52
52
  readonly nodeTooltip?: readonly [{
53
53
  readonly locale: "zh";
54
54
  readonly message: string;
@@ -103,10 +103,10 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
103
103
  readonly data: string;
104
104
  readonly request?: string | undefined;
105
105
  };
106
- readonly enableSorting?: boolean | undefined;
107
106
  readonly nodeKey: string;
108
107
  readonly nodeChildren: string;
109
108
  readonly nodeLabel: string;
109
+ readonly enableSorting?: boolean | undefined;
110
110
  readonly nodeTooltip?: readonly [{
111
111
  readonly locale: "zh";
112
112
  readonly message: string;
@@ -612,7 +612,10 @@ async function pasteColumns() {
612
612
  const clip = await readClip();
613
613
  if (!clip || clip.surface !== "table") return;
614
614
  const { items } = reidFragment(clip.items);
615
- const pasted = items.map(({ groupId: _g, ...rest }) => rest);
615
+ const pasted = items.map(({ groupId: _g, ...rest }) => ({
616
+ ...rest,
617
+ id: crypto.randomUUID()
618
+ }));
616
619
  if (pasted.length === 0) return;
617
620
  editingColumns.value = [...editingColumns.value, ...pasted];
618
621
  const ids = pasted.map((c) => c.id);
@@ -10,13 +10,14 @@ import {
10
10
  useVueTable
11
11
  } from "@tanstack/vue-table";
12
12
  import { useVirtualizer } from "@tanstack/vue-virtual";
13
+ import { watchDebounced } from "@vueuse/core";
13
14
  import { Effect, Fiber, Option } from "effect";
14
15
  import { Fetch } from "fx-fetch";
15
16
  import { Pagination, ScrollArea } from "reka-ui/namespaced";
16
17
  import { computed, h, onMounted, ref, toRaw, watch } from "vue";
17
- import { fetchJsonOption } from "../../share/request";
18
+ import { asRequest, fetchJsonOption } from "../../share/request";
18
19
  import { useI18n } from "vue-i18n";
19
- import { celBindings, provideCELContext, injectCELContext } from "../../utils/cel-context";
20
+ import { celBindings, celScope, provideCELContext, injectCELContext } from "../../utils/cel-context";
20
21
  import TableRowProvider from "./row-provider.vue";
21
22
  import * as addRowOp from "../operations/2026-07-06/com.shwfed.operation.table.add-row/schema";
22
23
  import { getLocalizedText } from "../../share/locale";
@@ -560,6 +561,26 @@ watch(
560
561
  if (next && next !== prev) void fetchDataSource();
561
562
  }
562
563
  );
564
+ const requestSignature = computed(() => {
565
+ const expr = config.value?.dataSource?.request;
566
+ if (!expr) return null;
567
+ try {
568
+ const req = asRequest(Effect.runSync($cel(
569
+ expr,
570
+ celScope(inheritedContext, { query: {}, sorts: [], pageIndex: 0, pageSize: 0 })
571
+ )));
572
+ return Option.isSome(req) ? JSON.stringify(req.value.describe()) : null;
573
+ } catch {
574
+ return null;
575
+ }
576
+ });
577
+ watchDebounced(
578
+ requestSignature,
579
+ (next, prev) => {
580
+ if (next !== null && next !== prev) void fetchDataSource();
581
+ },
582
+ { debounce: 200 }
583
+ );
563
584
  const sortedRowIndexMap = computed(() => {
564
585
  const map = /* @__PURE__ */ new Map();
565
586
  tableApi.getSortedRowModel().flatRows.forEach((row, i) => {
@@ -158,6 +158,40 @@ export declare function TableConfig(configure: (env: Environment) => void): Sche
158
158
  readonly message: string;
159
159
  }[]] | undefined;
160
160
  }[];
161
+ readonly query?: {
162
+ readonly style?: string | undefined;
163
+ readonly id?: string | undefined;
164
+ readonly initial?: {
165
+ readonly data: string;
166
+ readonly request?: string | undefined;
167
+ } | undefined;
168
+ readonly displayName?: string | undefined;
169
+ readonly kind: "shwfed.component.form";
170
+ readonly fields: readonly any[];
171
+ readonly layouts: readonly {
172
+ readonly name: string;
173
+ readonly layout: {
174
+ readonly style?: string | undefined;
175
+ readonly columns: number;
176
+ readonly gap?: number | undefined;
177
+ readonly rows?: number | undefined;
178
+ readonly placements: {
179
+ readonly [x: string]: {
180
+ readonly area: readonly [readonly [number, number], readonly [number, number]];
181
+ readonly v?: "stretch" | "center" | "end" | "start" | undefined;
182
+ readonly h?: "stretch" | "center" | "end" | "start" | undefined;
183
+ };
184
+ };
185
+ };
186
+ readonly media?: string | undefined;
187
+ }[];
188
+ readonly readonly?: string | undefined;
189
+ } | undefined;
190
+ readonly dataSource?: {
191
+ readonly data: string;
192
+ readonly total?: string | undefined;
193
+ readonly request?: string | undefined;
194
+ } | undefined;
161
195
  readonly actions?: {
162
196
  readonly size: "default" | "sm" | "xs";
163
197
  readonly style?: string | undefined;
@@ -225,40 +259,6 @@ export declare function TableConfig(configure: (env: Environment) => void): Sche
225
259
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
226
260
  }[];
227
261
  } | undefined;
228
- readonly query?: {
229
- readonly style?: string | undefined;
230
- readonly id?: string | undefined;
231
- readonly initial?: {
232
- readonly data: string;
233
- readonly request?: string | undefined;
234
- } | undefined;
235
- readonly displayName?: string | undefined;
236
- readonly kind: "shwfed.component.form";
237
- readonly fields: readonly any[];
238
- readonly layouts: readonly {
239
- readonly name: string;
240
- readonly layout: {
241
- readonly style?: string | undefined;
242
- readonly columns: number;
243
- readonly gap?: number | undefined;
244
- readonly rows?: number | undefined;
245
- readonly placements: {
246
- readonly [x: string]: {
247
- readonly area: readonly [readonly [number, number], readonly [number, number]];
248
- readonly v?: "stretch" | "center" | "end" | "start" | undefined;
249
- readonly h?: "stretch" | "center" | "end" | "start" | undefined;
250
- };
251
- };
252
- };
253
- readonly media?: string | undefined;
254
- }[];
255
- readonly readonly?: string | undefined;
256
- } | undefined;
257
- readonly dataSource?: {
258
- readonly data: string;
259
- readonly total?: string | undefined;
260
- readonly request?: string | undefined;
261
- } | undefined;
262
262
  readonly bottomActions?: {
263
263
  readonly size: "default" | "sm" | "xs";
264
264
  readonly style?: string | undefined;
@@ -827,6 +827,40 @@ export declare function createTableConfig(body: Omit<Schema.Schema.Type<ReturnTy
827
827
  readonly message: string;
828
828
  }[]] | undefined;
829
829
  }[];
830
+ query?: {
831
+ readonly style?: string | undefined;
832
+ readonly id?: string | undefined;
833
+ readonly initial?: {
834
+ readonly data: string;
835
+ readonly request?: string | undefined;
836
+ } | undefined;
837
+ readonly displayName?: string | undefined;
838
+ readonly kind: "shwfed.component.form";
839
+ readonly fields: readonly any[];
840
+ readonly layouts: readonly {
841
+ readonly name: string;
842
+ readonly layout: {
843
+ readonly style?: string | undefined;
844
+ readonly columns: number;
845
+ readonly gap?: number | undefined;
846
+ readonly rows?: number | undefined;
847
+ readonly placements: {
848
+ readonly [x: string]: {
849
+ readonly area: readonly [readonly [number, number], readonly [number, number]];
850
+ readonly v?: "stretch" | "center" | "end" | "start" | undefined;
851
+ readonly h?: "stretch" | "center" | "end" | "start" | undefined;
852
+ };
853
+ };
854
+ };
855
+ readonly media?: string | undefined;
856
+ }[];
857
+ readonly readonly?: string | undefined;
858
+ } | undefined;
859
+ dataSource?: {
860
+ readonly data: string;
861
+ readonly total?: string | undefined;
862
+ readonly request?: string | undefined;
863
+ } | undefined;
830
864
  actions?: {
831
865
  readonly size: "default" | "sm" | "xs";
832
866
  readonly style?: string | undefined;
@@ -894,40 +928,6 @@ export declare function createTableConfig(body: Omit<Schema.Schema.Type<ReturnTy
894
928
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
895
929
  }[];
896
930
  } | undefined;
897
- query?: {
898
- readonly style?: string | undefined;
899
- readonly id?: string | undefined;
900
- readonly initial?: {
901
- readonly data: string;
902
- readonly request?: string | undefined;
903
- } | undefined;
904
- readonly displayName?: string | undefined;
905
- readonly kind: "shwfed.component.form";
906
- readonly fields: readonly any[];
907
- readonly layouts: readonly {
908
- readonly name: string;
909
- readonly layout: {
910
- readonly style?: string | undefined;
911
- readonly columns: number;
912
- readonly gap?: number | undefined;
913
- readonly rows?: number | undefined;
914
- readonly placements: {
915
- readonly [x: string]: {
916
- readonly area: readonly [readonly [number, number], readonly [number, number]];
917
- readonly v?: "stretch" | "center" | "end" | "start" | undefined;
918
- readonly h?: "stretch" | "center" | "end" | "start" | undefined;
919
- };
920
- };
921
- };
922
- readonly media?: string | undefined;
923
- }[];
924
- readonly readonly?: string | undefined;
925
- } | undefined;
926
- dataSource?: {
927
- readonly data: string;
928
- readonly total?: string | undefined;
929
- readonly request?: string | undefined;
930
- } | undefined;
931
931
  bottomActions?: {
932
932
  readonly size: "default" | "sm" | "xs";
933
933
  readonly style?: string | undefined;
@@ -43,7 +43,12 @@ export const fieldVariants = cva(
43
43
  // input baseline 0.5 down to keep its caret/text optically centered
44
44
  // against the notch. Only applied when a label is actually present —
45
45
  // a label-less floating field should sit flush with the border.
46
- "has-[>[data-slot=field-label]]:**:data-[slot=input]:translate-y-0.5"
46
+ "has-[>[data-slot=field-label]]:**:data-[slot=input]:translate-y-0.5",
47
+ // Readonly view: the field swaps its control for a plain value slot
48
+ // (`data-slot=field-value`, which also sets `data-value=true` so the
49
+ // label lifts). That value has no border/notch, so pad its top to
50
+ // clear the lifted label instead of overlapping the first line.
51
+ "has-[>[data-slot=field-label]]:**:data-[slot=field-value]:pt-4"
47
52
  ],
48
53
  contents: [
49
54
  "contents",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shwfed/config",
3
- "version": "2.12.9",
3
+ "version": "2.12.11",
4
4
  "description": "Configurable UI for SHWFED",
5
5
  "type": "module",
6
6
  "publishConfig": {