@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.
- package/dist/module.json +1 -1
- package/dist/module.mjs +8 -3
- package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.d.vue.ts +68 -68
- package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.vue.d.ts +68 -68
- package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.d.vue.ts +68 -68
- package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.vue.d.ts +68 -68
- package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/schema.d.ts +34 -34
- package/dist/runtime/components/config/blocks/2026-06-17/com.shwfed.block.tree.single/runtime.vue +20 -2
- package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/runtime.vue +5 -2
- package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-06-09/com.shwfed.form.field.upload/runtime.vue +9 -1
- package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.multi/runtime.vue +2 -0
- package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.single/runtime.vue +2 -0
- package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/config.vue +4 -1
- package/dist/runtime/components/table/index.vue +23 -2
- package/dist/runtime/components/table/schema.d.ts +68 -68
- package/dist/runtime/components/ui/field/index.js +6 -1
- package/package.json +1 -1
package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.vue.d.ts
CHANGED
|
@@ -29,6 +29,40 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
29
29
|
readonly message: string;
|
|
30
30
|
}[]] | undefined;
|
|
31
31
|
}[];
|
|
32
|
+
readonly query?: {
|
|
33
|
+
readonly style?: string | undefined;
|
|
34
|
+
readonly id?: string | undefined;
|
|
35
|
+
readonly initial?: {
|
|
36
|
+
readonly data: string;
|
|
37
|
+
readonly request?: string | undefined;
|
|
38
|
+
} | undefined;
|
|
39
|
+
readonly displayName?: string | undefined;
|
|
40
|
+
readonly kind: "shwfed.component.form";
|
|
41
|
+
readonly fields: readonly any[];
|
|
42
|
+
readonly layouts: readonly {
|
|
43
|
+
readonly name: string;
|
|
44
|
+
readonly layout: {
|
|
45
|
+
readonly style?: string | undefined;
|
|
46
|
+
readonly columns: number;
|
|
47
|
+
readonly gap?: number | undefined;
|
|
48
|
+
readonly rows?: number | undefined;
|
|
49
|
+
readonly placements: {
|
|
50
|
+
readonly [x: string]: {
|
|
51
|
+
readonly area: readonly [readonly [number, number], readonly [number, number]];
|
|
52
|
+
readonly v?: "stretch" | "center" | "end" | "start" | undefined;
|
|
53
|
+
readonly h?: "stretch" | "center" | "end" | "start" | undefined;
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
readonly media?: string | undefined;
|
|
58
|
+
}[];
|
|
59
|
+
readonly readonly?: string | undefined;
|
|
60
|
+
} | undefined;
|
|
61
|
+
readonly dataSource?: {
|
|
62
|
+
readonly data: string;
|
|
63
|
+
readonly total?: string | undefined;
|
|
64
|
+
readonly request?: string | undefined;
|
|
65
|
+
} | undefined;
|
|
32
66
|
readonly actions?: {
|
|
33
67
|
readonly size: "default" | "sm" | "xs";
|
|
34
68
|
readonly style?: string | undefined;
|
|
@@ -96,40 +130,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
96
130
|
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
97
131
|
}[];
|
|
98
132
|
} | undefined;
|
|
99
|
-
readonly query?: {
|
|
100
|
-
readonly style?: string | undefined;
|
|
101
|
-
readonly id?: string | undefined;
|
|
102
|
-
readonly initial?: {
|
|
103
|
-
readonly data: string;
|
|
104
|
-
readonly request?: string | undefined;
|
|
105
|
-
} | undefined;
|
|
106
|
-
readonly displayName?: string | undefined;
|
|
107
|
-
readonly kind: "shwfed.component.form";
|
|
108
|
-
readonly fields: readonly any[];
|
|
109
|
-
readonly layouts: readonly {
|
|
110
|
-
readonly name: string;
|
|
111
|
-
readonly layout: {
|
|
112
|
-
readonly style?: string | undefined;
|
|
113
|
-
readonly columns: number;
|
|
114
|
-
readonly gap?: number | undefined;
|
|
115
|
-
readonly rows?: number | undefined;
|
|
116
|
-
readonly placements: {
|
|
117
|
-
readonly [x: string]: {
|
|
118
|
-
readonly area: readonly [readonly [number, number], readonly [number, number]];
|
|
119
|
-
readonly v?: "stretch" | "center" | "end" | "start" | undefined;
|
|
120
|
-
readonly h?: "stretch" | "center" | "end" | "start" | undefined;
|
|
121
|
-
};
|
|
122
|
-
};
|
|
123
|
-
};
|
|
124
|
-
readonly media?: string | undefined;
|
|
125
|
-
}[];
|
|
126
|
-
readonly readonly?: string | undefined;
|
|
127
|
-
} | undefined;
|
|
128
|
-
readonly dataSource?: {
|
|
129
|
-
readonly data: string;
|
|
130
|
-
readonly total?: string | undefined;
|
|
131
|
-
readonly request?: string | undefined;
|
|
132
|
-
} | undefined;
|
|
133
133
|
readonly bottomActions?: {
|
|
134
134
|
readonly size: "default" | "sm" | "xs";
|
|
135
135
|
readonly style?: string | undefined;
|
|
@@ -277,6 +277,40 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
277
277
|
readonly message: string;
|
|
278
278
|
}[]] | undefined;
|
|
279
279
|
}[];
|
|
280
|
+
readonly query?: {
|
|
281
|
+
readonly style?: string | undefined;
|
|
282
|
+
readonly id?: string | undefined;
|
|
283
|
+
readonly initial?: {
|
|
284
|
+
readonly data: string;
|
|
285
|
+
readonly request?: string | undefined;
|
|
286
|
+
} | undefined;
|
|
287
|
+
readonly displayName?: string | undefined;
|
|
288
|
+
readonly kind: "shwfed.component.form";
|
|
289
|
+
readonly fields: readonly any[];
|
|
290
|
+
readonly layouts: readonly {
|
|
291
|
+
readonly name: string;
|
|
292
|
+
readonly layout: {
|
|
293
|
+
readonly style?: string | undefined;
|
|
294
|
+
readonly columns: number;
|
|
295
|
+
readonly gap?: number | undefined;
|
|
296
|
+
readonly rows?: number | undefined;
|
|
297
|
+
readonly placements: {
|
|
298
|
+
readonly [x: string]: {
|
|
299
|
+
readonly area: readonly [readonly [number, number], readonly [number, number]];
|
|
300
|
+
readonly v?: "stretch" | "center" | "end" | "start" | undefined;
|
|
301
|
+
readonly h?: "stretch" | "center" | "end" | "start" | undefined;
|
|
302
|
+
};
|
|
303
|
+
};
|
|
304
|
+
};
|
|
305
|
+
readonly media?: string | undefined;
|
|
306
|
+
}[];
|
|
307
|
+
readonly readonly?: string | undefined;
|
|
308
|
+
} | undefined;
|
|
309
|
+
readonly dataSource?: {
|
|
310
|
+
readonly data: string;
|
|
311
|
+
readonly total?: string | undefined;
|
|
312
|
+
readonly request?: string | undefined;
|
|
313
|
+
} | undefined;
|
|
280
314
|
readonly actions?: {
|
|
281
315
|
readonly size: "default" | "sm" | "xs";
|
|
282
316
|
readonly style?: string | undefined;
|
|
@@ -344,40 +378,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
344
378
|
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
345
379
|
}[];
|
|
346
380
|
} | undefined;
|
|
347
|
-
readonly query?: {
|
|
348
|
-
readonly style?: string | undefined;
|
|
349
|
-
readonly id?: string | undefined;
|
|
350
|
-
readonly initial?: {
|
|
351
|
-
readonly data: string;
|
|
352
|
-
readonly request?: string | undefined;
|
|
353
|
-
} | undefined;
|
|
354
|
-
readonly displayName?: string | undefined;
|
|
355
|
-
readonly kind: "shwfed.component.form";
|
|
356
|
-
readonly fields: readonly any[];
|
|
357
|
-
readonly layouts: readonly {
|
|
358
|
-
readonly name: string;
|
|
359
|
-
readonly layout: {
|
|
360
|
-
readonly style?: string | undefined;
|
|
361
|
-
readonly columns: number;
|
|
362
|
-
readonly gap?: number | undefined;
|
|
363
|
-
readonly rows?: number | undefined;
|
|
364
|
-
readonly placements: {
|
|
365
|
-
readonly [x: string]: {
|
|
366
|
-
readonly area: readonly [readonly [number, number], readonly [number, number]];
|
|
367
|
-
readonly v?: "stretch" | "center" | "end" | "start" | undefined;
|
|
368
|
-
readonly h?: "stretch" | "center" | "end" | "start" | undefined;
|
|
369
|
-
};
|
|
370
|
-
};
|
|
371
|
-
};
|
|
372
|
-
readonly media?: string | undefined;
|
|
373
|
-
}[];
|
|
374
|
-
readonly readonly?: string | undefined;
|
|
375
|
-
} | undefined;
|
|
376
|
-
readonly dataSource?: {
|
|
377
|
-
readonly data: string;
|
|
378
|
-
readonly total?: string | undefined;
|
|
379
|
-
readonly request?: string | undefined;
|
|
380
|
-
} | undefined;
|
|
381
381
|
readonly bottomActions?: {
|
|
382
382
|
readonly size: "default" | "sm" | "xs";
|
|
383
383
|
readonly style?: string | undefined;
|
|
@@ -47,6 +47,40 @@ export declare function schema(configure: (env: Environment) => void, _blockRef:
|
|
|
47
47
|
readonly message: string;
|
|
48
48
|
}[]] | undefined;
|
|
49
49
|
}[];
|
|
50
|
+
readonly query?: {
|
|
51
|
+
readonly style?: string | undefined;
|
|
52
|
+
readonly id?: string | undefined;
|
|
53
|
+
readonly initial?: {
|
|
54
|
+
readonly data: string;
|
|
55
|
+
readonly request?: string | undefined;
|
|
56
|
+
} | undefined;
|
|
57
|
+
readonly displayName?: string | undefined;
|
|
58
|
+
readonly kind: "shwfed.component.form";
|
|
59
|
+
readonly fields: readonly any[];
|
|
60
|
+
readonly layouts: readonly {
|
|
61
|
+
readonly name: string;
|
|
62
|
+
readonly layout: {
|
|
63
|
+
readonly style?: string | undefined;
|
|
64
|
+
readonly columns: number;
|
|
65
|
+
readonly gap?: number | undefined;
|
|
66
|
+
readonly rows?: number | undefined;
|
|
67
|
+
readonly placements: {
|
|
68
|
+
readonly [x: string]: {
|
|
69
|
+
readonly area: readonly [readonly [number, number], readonly [number, number]];
|
|
70
|
+
readonly v?: "stretch" | "center" | "end" | "start" | undefined;
|
|
71
|
+
readonly h?: "stretch" | "center" | "end" | "start" | undefined;
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
};
|
|
75
|
+
readonly media?: string | undefined;
|
|
76
|
+
}[];
|
|
77
|
+
readonly readonly?: string | undefined;
|
|
78
|
+
} | undefined;
|
|
79
|
+
readonly dataSource?: {
|
|
80
|
+
readonly data: string;
|
|
81
|
+
readonly total?: string | undefined;
|
|
82
|
+
readonly request?: string | undefined;
|
|
83
|
+
} | undefined;
|
|
50
84
|
readonly actions?: {
|
|
51
85
|
readonly size: "default" | "sm" | "xs";
|
|
52
86
|
readonly style?: string | undefined;
|
|
@@ -114,40 +148,6 @@ export declare function schema(configure: (env: Environment) => void, _blockRef:
|
|
|
114
148
|
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
115
149
|
}[];
|
|
116
150
|
} | undefined;
|
|
117
|
-
readonly query?: {
|
|
118
|
-
readonly style?: string | undefined;
|
|
119
|
-
readonly id?: string | undefined;
|
|
120
|
-
readonly initial?: {
|
|
121
|
-
readonly data: string;
|
|
122
|
-
readonly request?: string | undefined;
|
|
123
|
-
} | undefined;
|
|
124
|
-
readonly displayName?: string | undefined;
|
|
125
|
-
readonly kind: "shwfed.component.form";
|
|
126
|
-
readonly fields: readonly any[];
|
|
127
|
-
readonly layouts: readonly {
|
|
128
|
-
readonly name: string;
|
|
129
|
-
readonly layout: {
|
|
130
|
-
readonly style?: string | undefined;
|
|
131
|
-
readonly columns: number;
|
|
132
|
-
readonly gap?: number | undefined;
|
|
133
|
-
readonly rows?: number | undefined;
|
|
134
|
-
readonly placements: {
|
|
135
|
-
readonly [x: string]: {
|
|
136
|
-
readonly area: readonly [readonly [number, number], readonly [number, number]];
|
|
137
|
-
readonly v?: "stretch" | "center" | "end" | "start" | undefined;
|
|
138
|
-
readonly h?: "stretch" | "center" | "end" | "start" | undefined;
|
|
139
|
-
};
|
|
140
|
-
};
|
|
141
|
-
};
|
|
142
|
-
readonly media?: string | undefined;
|
|
143
|
-
}[];
|
|
144
|
-
readonly readonly?: string | undefined;
|
|
145
|
-
} | undefined;
|
|
146
|
-
readonly dataSource?: {
|
|
147
|
-
readonly data: string;
|
|
148
|
-
readonly total?: string | undefined;
|
|
149
|
-
readonly request?: string | undefined;
|
|
150
|
-
} | undefined;
|
|
151
151
|
readonly bottomActions?: {
|
|
152
152
|
readonly size: "default" | "sm" | "xs";
|
|
153
153
|
readonly style?: string | undefined;
|
package/dist/runtime/components/config/blocks/2026-06-17/com.shwfed.block.tree.single/runtime.vue
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
<script setup>
|
|
2
2
|
import { Icon } from "@iconify/vue";
|
|
3
|
+
import { watchDebounced } from "@vueuse/core";
|
|
3
4
|
import { Effect, Fiber, Option } from "effect";
|
|
4
5
|
import { Fetch } from "fx-fetch";
|
|
5
6
|
import { computed, ref, shallowRef, watch } from "vue";
|
|
6
7
|
import { useI18n } from "vue-i18n";
|
|
7
|
-
import { fetchJsonOption } from "../../../../../share/request";
|
|
8
|
+
import { asRequest, fetchJsonOption } from "../../../../../share/request";
|
|
8
9
|
import { provideEventTarget } from "../../../../../share/event-bus";
|
|
9
10
|
import { cel as _rawCel } from "../../../../../utils/cel";
|
|
10
|
-
import { celBindings, injectCELContext } from "../../../../../utils/cel-context";
|
|
11
|
+
import { celBindings, celScope, injectCELContext } from "../../../../../utils/cel-context";
|
|
11
12
|
import { publishSelection } from "../../../../../utils/selections-registry";
|
|
12
13
|
import { getLocalizedText } from "../../../../../share/locale";
|
|
13
14
|
import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput } from "../../../../ui/input-group";
|
|
@@ -98,6 +99,23 @@ watch(
|
|
|
98
99
|
},
|
|
99
100
|
{ immediate: true }
|
|
100
101
|
);
|
|
102
|
+
const requestSignature = computed(() => {
|
|
103
|
+
const expr = block.value.dataSource?.request;
|
|
104
|
+
if (!expr) return null;
|
|
105
|
+
try {
|
|
106
|
+
const req = asRequest(Effect.runSync(_rawCel(expr, celScope(inherited))));
|
|
107
|
+
return Option.isSome(req) ? JSON.stringify(req.value.describe()) : null;
|
|
108
|
+
} catch {
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
watchDebounced(
|
|
113
|
+
requestSignature,
|
|
114
|
+
(next, prev) => {
|
|
115
|
+
if (next !== null && next !== prev) void fetchTree();
|
|
116
|
+
},
|
|
117
|
+
{ debounce: 200 }
|
|
118
|
+
);
|
|
101
119
|
provideEventTarget(block.value.id, {
|
|
102
120
|
"refresh": () => Effect.promise(fetchTree),
|
|
103
121
|
"clear-selection": () => Effect.sync(() => {
|
package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/runtime.vue
CHANGED
|
@@ -87,6 +87,8 @@ const { isRequired, errors, warnings, visible } = useFieldValidation({
|
|
|
87
87
|
</FieldLabel>
|
|
88
88
|
<div
|
|
89
89
|
v-if="effectiveReadonly"
|
|
90
|
+
data-slot="field-value"
|
|
91
|
+
data-value="true"
|
|
90
92
|
class="min-h-9 py-1.5 text-sm whitespace-pre-wrap"
|
|
91
93
|
:class="draft ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
92
94
|
>
|
package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/runtime.vue
CHANGED
|
@@ -122,6 +122,8 @@ const { isRequired, errors, warnings, visible } = useFieldValidation({
|
|
|
122
122
|
</FieldLabel>
|
|
123
123
|
<div
|
|
124
124
|
v-if="effectiveReadonly"
|
|
125
|
+
data-slot="field-value"
|
|
126
|
+
data-value="true"
|
|
125
127
|
class="min-h-9 py-1.5 text-sm"
|
|
126
128
|
:class="model ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
127
129
|
>
|
package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/runtime.vue
CHANGED
|
@@ -152,6 +152,8 @@ const readonlyText = computed(() => {
|
|
|
152
152
|
</FieldLabel>
|
|
153
153
|
<div
|
|
154
154
|
v-if="effectiveReadonly"
|
|
155
|
+
data-slot="field-value"
|
|
156
|
+
data-value="true"
|
|
155
157
|
class="min-h-9 py-1.5 text-sm"
|
|
156
158
|
:class="readonlyText ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
157
159
|
>
|
package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/runtime.vue
CHANGED
|
@@ -122,6 +122,8 @@ const { isRequired, errors, warnings, visible } = useFieldValidation({
|
|
|
122
122
|
</FieldLabel>
|
|
123
123
|
<div
|
|
124
124
|
v-if="effectiveReadonly"
|
|
125
|
+
data-slot="field-value"
|
|
126
|
+
data-value="true"
|
|
125
127
|
class="min-h-9 py-1.5 text-sm"
|
|
126
128
|
:class="model ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
127
129
|
>
|
|
@@ -152,6 +152,8 @@ const readonlyText = computed(() => {
|
|
|
152
152
|
</FieldLabel>
|
|
153
153
|
<div
|
|
154
154
|
v-if="effectiveReadonly"
|
|
155
|
+
data-slot="field-value"
|
|
156
|
+
data-value="true"
|
|
155
157
|
class="min-h-9 py-1.5 text-sm"
|
|
156
158
|
:class="readonlyText ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
157
159
|
>
|
package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/runtime.vue
CHANGED
|
@@ -95,6 +95,8 @@ const { isRequired, errors, warnings, visible } = useFieldValidation({
|
|
|
95
95
|
</FieldLabel>
|
|
96
96
|
<div
|
|
97
97
|
v-if="effectiveReadonly"
|
|
98
|
+
data-slot="field-value"
|
|
99
|
+
data-value="true"
|
|
98
100
|
class="min-h-9 py-1.5 text-sm"
|
|
99
101
|
:class="model ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
100
102
|
>
|
package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/runtime.vue
CHANGED
|
@@ -118,6 +118,8 @@ const readonlyText = computed(() => {
|
|
|
118
118
|
</FieldLabel>
|
|
119
119
|
<div
|
|
120
120
|
v-if="effectiveReadonly"
|
|
121
|
+
data-slot="field-value"
|
|
122
|
+
data-value="true"
|
|
121
123
|
class="min-h-9 py-1.5 text-sm"
|
|
122
124
|
:class="readonlyText ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
123
125
|
>
|
package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/runtime.vue
CHANGED
|
@@ -160,6 +160,8 @@ async function onBlur() {
|
|
|
160
160
|
</FieldLabel>
|
|
161
161
|
<div
|
|
162
162
|
v-if="effectiveReadonly"
|
|
163
|
+
data-slot="field-value"
|
|
164
|
+
data-value="true"
|
|
163
165
|
class="min-h-9 py-1.5 text-sm"
|
|
164
166
|
:class="[
|
|
165
167
|
draft != null ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none',
|
package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/runtime.vue
CHANGED
|
@@ -224,6 +224,8 @@ const readonlyText = computed(() => {
|
|
|
224
224
|
</FieldLabel>
|
|
225
225
|
<div
|
|
226
226
|
v-if="effectiveReadonly"
|
|
227
|
+
data-slot="field-value"
|
|
228
|
+
data-value="true"
|
|
227
229
|
class="min-h-9 py-1.5 text-sm"
|
|
228
230
|
:class="readonlyText ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
229
231
|
>
|
package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/runtime.vue
CHANGED
|
@@ -16,6 +16,7 @@ import { Field, FieldLabel, FieldMessages } from "../../../../ui/field";
|
|
|
16
16
|
import { InputGroupButton } from "../../../../ui/input-group";
|
|
17
17
|
import { Markdown } from "../../../../ui/markdown";
|
|
18
18
|
import { useFieldValidation } from "../../../utils/validation";
|
|
19
|
+
import { useFormReadonly } from "../../../utils/readonly";
|
|
19
20
|
import { SELF_BINDING, useFormScope, useFormState } from "../../../utils/state";
|
|
20
21
|
import Row from "./row.vue";
|
|
21
22
|
defineOptions({ name: "ShwfedListFieldRuntime" });
|
|
@@ -54,6 +55,7 @@ const { isRequired, errors, warnings, visible } = useFieldValidation({
|
|
|
54
55
|
locale: () => locale.value
|
|
55
56
|
});
|
|
56
57
|
const isDisabled = computed(() => evalBool(props.config.disabled, "disabled"));
|
|
58
|
+
const isReadonly = useFormReadonly();
|
|
57
59
|
const reorderable = computed(() => props.config.reorderable ?? true);
|
|
58
60
|
const addable = computed(() => props.config.addable ?? true);
|
|
59
61
|
const isScalarRow = computed(() => {
|
|
@@ -242,7 +244,7 @@ function rowConfig(i) {
|
|
|
242
244
|
>
|
|
243
245
|
<div class="flex items-center gap-2">
|
|
244
246
|
<Icon
|
|
245
|
-
v-if="reorderable"
|
|
247
|
+
v-if="reorderable && !isReadonly"
|
|
246
248
|
icon="fluent:re-order-dots-vertical-20-regular"
|
|
247
249
|
class="drag-handle size-4 shrink-0 text-zinc-400"
|
|
248
250
|
:class="canReorder ? 'cursor-grab' : 'cursor-not-allowed opacity-50'"
|
|
@@ -286,6 +288,7 @@ function rowConfig(i) {
|
|
|
286
288
|
</div>
|
|
287
289
|
|
|
288
290
|
<InputGroupButton
|
|
291
|
+
v-if="!isReadonly"
|
|
289
292
|
variant="destructive"
|
|
290
293
|
size="icon-xs"
|
|
291
294
|
class="shrink-0"
|
|
@@ -314,7 +317,7 @@ function rowConfig(i) {
|
|
|
314
317
|
</div>
|
|
315
318
|
|
|
316
319
|
<Button
|
|
317
|
-
v-if="addable"
|
|
320
|
+
v-if="addable && !isReadonly"
|
|
318
321
|
type="button"
|
|
319
322
|
:disabled="!canAdd"
|
|
320
323
|
data-slot="list-add"
|
package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/runtime.vue
CHANGED
|
@@ -152,6 +152,8 @@ const readonlyText = computed(() => {
|
|
|
152
152
|
</FieldLabel>
|
|
153
153
|
<div
|
|
154
154
|
v-if="effectiveReadonly"
|
|
155
|
+
data-slot="field-value"
|
|
156
|
+
data-value="true"
|
|
155
157
|
class="min-h-9 py-1.5 text-sm"
|
|
156
158
|
:class="readonlyText ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
157
159
|
>
|
|
@@ -382,6 +382,8 @@ const hoveredTooltip = computed(() => {
|
|
|
382
382
|
|
|
383
383
|
<div
|
|
384
384
|
v-if="effectiveReadonly"
|
|
385
|
+
data-slot="field-value"
|
|
386
|
+
data-value="true"
|
|
385
387
|
class="min-h-9 py-1.5 text-sm"
|
|
386
388
|
:class="triggerLabel ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
387
389
|
>
|
|
@@ -370,6 +370,8 @@ const hoveredTooltip = computed(() => {
|
|
|
370
370
|
|
|
371
371
|
<div
|
|
372
372
|
v-if="effectiveReadonly"
|
|
373
|
+
data-slot="field-value"
|
|
374
|
+
data-value="true"
|
|
373
375
|
class="min-h-9 py-1.5 text-sm"
|
|
374
376
|
:class="triggerLabel ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
375
377
|
>
|
package/dist/runtime/components/form/fields/2026-06-09/com.shwfed.form.field.upload/runtime.vue
CHANGED
|
@@ -375,7 +375,15 @@ async function onDownloadTemplate(template) {
|
|
|
375
375
|
:data-readonly="isReadonly || void 0"
|
|
376
376
|
>
|
|
377
377
|
<div
|
|
378
|
-
v-if="entries.length === 0"
|
|
378
|
+
v-if="entries.length === 0 && isReadonly"
|
|
379
|
+
class="min-h-9 py-1.5 text-sm font-mono text-zinc-300 select-none"
|
|
380
|
+
data-slot="upload-empty"
|
|
381
|
+
>
|
|
382
|
+
{{ "-" }}
|
|
383
|
+
</div>
|
|
384
|
+
|
|
385
|
+
<div
|
|
386
|
+
v-else-if="entries.length === 0"
|
|
379
387
|
role="button"
|
|
380
388
|
:tabindex="canAdd ? 0 : -1"
|
|
381
389
|
data-slot="upload-zone"
|
|
@@ -319,6 +319,8 @@ function handleClear() {
|
|
|
319
319
|
</FieldLabel>
|
|
320
320
|
<div
|
|
321
321
|
v-if="effectiveReadonly"
|
|
322
|
+
data-slot="field-value"
|
|
323
|
+
data-value="true"
|
|
322
324
|
class="min-h-9 py-1.5 text-sm"
|
|
323
325
|
:class="readonlyLabel ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
324
326
|
>
|
|
@@ -324,6 +324,8 @@ const anyHasTooltip = computed(
|
|
|
324
324
|
</FieldLabel>
|
|
325
325
|
<div
|
|
326
326
|
v-if="effectiveReadonly"
|
|
327
|
+
data-slot="field-value"
|
|
328
|
+
data-value="true"
|
|
327
329
|
class="min-h-9 py-1.5 text-sm"
|
|
328
330
|
:class="selectedLabel ? 'text-zinc-700' : 'font-mono text-zinc-300 select-none'"
|
|
329
331
|
>
|
|
@@ -43,7 +43,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
43
43
|
readonly data: string;
|
|
44
44
|
readonly request?: string | undefined;
|
|
45
45
|
};
|
|
46
|
-
readonly enableSorting?: boolean | undefined;
|
|
47
46
|
readonly nodeKey: string;
|
|
48
47
|
readonly nodeChildren: string;
|
|
49
48
|
readonly nodeLabel: readonly [{
|
|
@@ -53,6 +52,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
53
52
|
readonly locale: "en" | "ja" | "ko";
|
|
54
53
|
readonly message: string;
|
|
55
54
|
}[]];
|
|
55
|
+
readonly enableSorting?: boolean | undefined;
|
|
56
56
|
readonly cascade: "independent" | "cascade-down" | "cascade-both";
|
|
57
57
|
readonly nodeTooltip?: readonly [{
|
|
58
58
|
readonly locale: "zh";
|
|
@@ -106,7 +106,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
106
106
|
readonly data: string;
|
|
107
107
|
readonly request?: string | undefined;
|
|
108
108
|
};
|
|
109
|
-
readonly enableSorting?: boolean | undefined;
|
|
110
109
|
readonly nodeKey: string;
|
|
111
110
|
readonly nodeChildren: string;
|
|
112
111
|
readonly nodeLabel: readonly [{
|
|
@@ -116,6 +115,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
116
115
|
readonly locale: "en" | "ja" | "ko";
|
|
117
116
|
readonly message: string;
|
|
118
117
|
}[]];
|
|
118
|
+
readonly enableSorting?: boolean | undefined;
|
|
119
119
|
readonly cascade: "independent" | "cascade-down" | "cascade-both";
|
|
120
120
|
readonly nodeTooltip?: readonly [{
|
|
121
121
|
readonly locale: "zh";
|
|
@@ -43,7 +43,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
43
43
|
readonly data: string;
|
|
44
44
|
readonly request?: string | undefined;
|
|
45
45
|
};
|
|
46
|
-
readonly enableSorting?: boolean | undefined;
|
|
47
46
|
readonly nodeKey: string;
|
|
48
47
|
readonly nodeChildren: string;
|
|
49
48
|
readonly nodeLabel: readonly [{
|
|
@@ -53,6 +52,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
53
52
|
readonly locale: "en" | "ja" | "ko";
|
|
54
53
|
readonly message: string;
|
|
55
54
|
}[]];
|
|
55
|
+
readonly enableSorting?: boolean | undefined;
|
|
56
56
|
readonly cascade: "independent" | "cascade-down" | "cascade-both";
|
|
57
57
|
readonly nodeTooltip?: readonly [{
|
|
58
58
|
readonly locale: "zh";
|
|
@@ -106,7 +106,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
106
106
|
readonly data: string;
|
|
107
107
|
readonly request?: string | undefined;
|
|
108
108
|
};
|
|
109
|
-
readonly enableSorting?: boolean | undefined;
|
|
110
109
|
readonly nodeKey: string;
|
|
111
110
|
readonly nodeChildren: string;
|
|
112
111
|
readonly nodeLabel: readonly [{
|
|
@@ -116,6 +115,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
116
115
|
readonly locale: "en" | "ja" | "ko";
|
|
117
116
|
readonly message: string;
|
|
118
117
|
}[]];
|
|
118
|
+
readonly enableSorting?: boolean | undefined;
|
|
119
119
|
readonly cascade: "independent" | "cascade-down" | "cascade-both";
|
|
120
120
|
readonly nodeTooltip?: readonly [{
|
|
121
121
|
readonly locale: "zh";
|
|
@@ -43,7 +43,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
43
43
|
readonly data: string;
|
|
44
44
|
readonly request?: string | undefined;
|
|
45
45
|
};
|
|
46
|
-
readonly enableSorting?: boolean | undefined;
|
|
47
46
|
readonly nodeKey: string;
|
|
48
47
|
readonly nodeChildren: string;
|
|
49
48
|
readonly nodeLabel: readonly [{
|
|
@@ -53,6 +52,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
53
52
|
readonly locale: "en" | "ja" | "ko";
|
|
54
53
|
readonly message: string;
|
|
55
54
|
}[]];
|
|
55
|
+
readonly enableSorting?: boolean | undefined;
|
|
56
56
|
readonly nodeTooltip?: readonly [{
|
|
57
57
|
readonly locale: "zh";
|
|
58
58
|
readonly message: string;
|
|
@@ -105,7 +105,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
105
105
|
readonly data: string;
|
|
106
106
|
readonly request?: string | undefined;
|
|
107
107
|
};
|
|
108
|
-
readonly enableSorting?: boolean | undefined;
|
|
109
108
|
readonly nodeKey: string;
|
|
110
109
|
readonly nodeChildren: string;
|
|
111
110
|
readonly nodeLabel: readonly [{
|
|
@@ -115,6 +114,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
115
114
|
readonly locale: "en" | "ja" | "ko";
|
|
116
115
|
readonly message: string;
|
|
117
116
|
}[]];
|
|
117
|
+
readonly enableSorting?: boolean | undefined;
|
|
118
118
|
readonly nodeTooltip?: readonly [{
|
|
119
119
|
readonly locale: "zh";
|
|
120
120
|
readonly message: string;
|
|
@@ -43,7 +43,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
43
43
|
readonly data: string;
|
|
44
44
|
readonly request?: string | undefined;
|
|
45
45
|
};
|
|
46
|
-
readonly enableSorting?: boolean | undefined;
|
|
47
46
|
readonly nodeKey: string;
|
|
48
47
|
readonly nodeChildren: string;
|
|
49
48
|
readonly nodeLabel: readonly [{
|
|
@@ -53,6 +52,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
53
52
|
readonly locale: "en" | "ja" | "ko";
|
|
54
53
|
readonly message: string;
|
|
55
54
|
}[]];
|
|
55
|
+
readonly enableSorting?: boolean | undefined;
|
|
56
56
|
readonly nodeTooltip?: readonly [{
|
|
57
57
|
readonly locale: "zh";
|
|
58
58
|
readonly message: string;
|
|
@@ -105,7 +105,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
105
105
|
readonly data: string;
|
|
106
106
|
readonly request?: string | undefined;
|
|
107
107
|
};
|
|
108
|
-
readonly enableSorting?: boolean | undefined;
|
|
109
108
|
readonly nodeKey: string;
|
|
110
109
|
readonly nodeChildren: string;
|
|
111
110
|
readonly nodeLabel: readonly [{
|
|
@@ -115,6 +114,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
115
114
|
readonly locale: "en" | "ja" | "ko";
|
|
116
115
|
readonly message: string;
|
|
117
116
|
}[]];
|
|
117
|
+
readonly enableSorting?: boolean | undefined;
|
|
118
118
|
readonly nodeTooltip?: readonly [{
|
|
119
119
|
readonly locale: "zh";
|
|
120
120
|
readonly message: string;
|