@synopackageland/ui 0.9.7 → 0.9.8
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/CHANGELOG.md +8 -0
- package/dist/components/composite/table-cell/CellText.vue.d.ts +3 -0
- package/dist/index.js +17 -13
- package/dist/json/catalog.d.ts +2 -0
- package/dist/json/registry.d.ts +34 -0
- package/dist/json-ai-prompt.md +1 -1
- package/dist/json-catalog.schema.json +11 -1
- package/dist/json-preview/preview.js +102 -97
- package/dist/json.js +3 -2
- package/dist/reka-runtime.json +1 -1
- package/dist/theme.css +1 -1
- package/dist/themes/dsm7-embedded-theme.css +1 -1
- package/dist/themes/dsm7-embedded.css +1 -1
- package/dist/themes/dsm7.css +1 -1
- package/docs/layout-rules.md +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.9.8 (2026-10-15)
|
|
4
|
+
|
|
5
|
+
`CellText` can wrap its lines. No behavior change: cutting with an ellipsis stays the default.
|
|
6
|
+
`CellText` 可以換行。沒有行為變更:預設仍以省略號截斷。
|
|
7
|
+
|
|
8
|
+
- `CellText` takes `wrap`: its main and secondary lines wrap (`white-space: normal`, `overflow-wrap: anywhere`) instead of ending in "…", also for a main text that opens its item (`openLabel`). A JSON spec passes `wrap: true`. An app that wrapped CellText's slots in its own span (Reclaim's `CellWrap.vue`) can pass `wrap` and drop the span.
|
|
9
|
+
- `CellText` 新增 `wrap`:主行與次行改為換行(`white-space: normal`、`overflow-wrap: anywhere`),不再以「…」結尾;以 `openLabel` 開啟項目的主行也一樣。JSON spec 傳 `wrap: true`。先前在 CellText slot 外包自訂換行 span 的 App(Reclaim 的 `CellWrap.vue`)可改傳 `wrap` 並刪掉該 span。
|
|
10
|
+
|
|
3
11
|
## 0.9.7 (2026-10-14)
|
|
4
12
|
|
|
5
13
|
Fixes from the t-0496 re-verification on DSM. **Behavior change:** a `Space` row packs its items at the start instead of centring them.
|
|
@@ -9,6 +9,8 @@ type __VLS_Props = {
|
|
|
9
9
|
/** Makes the main text a button that emits `open`; the label is its tooltip, e.g. "Open in File Station". */
|
|
10
10
|
openLabel?: string;
|
|
11
11
|
openDisabled?: boolean;
|
|
12
|
+
/** Wraps both lines instead of cutting them with an ellipsis. */
|
|
13
|
+
wrap?: boolean;
|
|
12
14
|
};
|
|
13
15
|
declare var __VLS_6: {}, __VLS_8: {}, __VLS_10: {};
|
|
14
16
|
type __VLS_Slots = {} & {
|
|
@@ -25,6 +27,7 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {},
|
|
|
25
27
|
}>, {
|
|
26
28
|
layout: "stacked" | "inline";
|
|
27
29
|
openDisabled: boolean;
|
|
30
|
+
wrap: boolean;
|
|
28
31
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
29
32
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
30
33
|
declare const _default: typeof __VLS_export;
|
package/dist/index.js
CHANGED
|
@@ -24191,7 +24191,7 @@ const OS = ["data-overflow-start", "data-overflow-end"], md = /* @__PURE__ */ A(
|
|
|
24191
24191
|
}))
|
|
24192
24192
|
], 8, IS));
|
|
24193
24193
|
}
|
|
24194
|
-
}), WS = ["data-layout"], jS = ["title", "disabled"], US = ["title"], GS = ["title"], JD = /* @__PURE__ */ A({
|
|
24194
|
+
}), WS = ["data-layout", "data-wrap"], jS = ["title", "disabled"], US = ["title"], GS = ["title"], JD = /* @__PURE__ */ A({
|
|
24195
24195
|
__name: "CellText",
|
|
24196
24196
|
props: {
|
|
24197
24197
|
text: {},
|
|
@@ -24199,13 +24199,16 @@ const OS = ["data-overflow-start", "data-overflow-end"], md = /* @__PURE__ */ A(
|
|
|
24199
24199
|
layout: { default: "stacked" },
|
|
24200
24200
|
icon: {},
|
|
24201
24201
|
openLabel: {},
|
|
24202
|
-
openDisabled: { type: Boolean, default: !1 }
|
|
24202
|
+
openDisabled: { type: Boolean, default: !1 },
|
|
24203
|
+
wrap: { type: Boolean, default: !1 }
|
|
24203
24204
|
},
|
|
24204
24205
|
emits: ["open"],
|
|
24205
24206
|
setup(e) {
|
|
24206
|
-
|
|
24207
|
+
const a = e, t = h(() => a.wrap ? "whitespace-normal [overflow-wrap:anywhere]" : "truncate");
|
|
24208
|
+
return (n, o) => (f(), g("div", {
|
|
24207
24209
|
class: "flex min-w-0 items-center gap-[var(--ui-space-2)]",
|
|
24208
24210
|
"data-layout": e.layout,
|
|
24211
|
+
"data-wrap": e.wrap ? "" : void 0,
|
|
24209
24212
|
"data-syno-pkg-land-ui": ""
|
|
24210
24213
|
}, [
|
|
24211
24214
|
e.icon ? (f(), E(Ne(e.icon), {
|
|
@@ -24226,32 +24229,33 @@ const OS = ["data-overflow-start", "data-overflow-end"], md = /* @__PURE__ */ A(
|
|
|
24226
24229
|
"data-ui-cell-primary": "",
|
|
24227
24230
|
title: e.openLabel,
|
|
24228
24231
|
disabled: e.openDisabled,
|
|
24229
|
-
class: "m-0 min-w-0 max-w-full
|
|
24230
|
-
onClick:
|
|
24232
|
+
class: ne([t.value, "m-0 min-w-0 max-w-full rounded-[var(--ui-radius-sm)] border-0 bg-transparent p-0 text-left text-[length:inherit] leading-5 text-[var(--ui-primary)] outline-none hover:underline focus-visible:shadow-[0_0_0_3px_var(--ui-focus-ring)] disabled:cursor-default disabled:opacity-50 disabled:hover:no-underline"]),
|
|
24233
|
+
onClick: o[0] || (o[0] = (r) => n.$emit("open"))
|
|
24231
24234
|
}, [
|
|
24232
|
-
k(
|
|
24235
|
+
k(n.$slots, "default", {}, () => [
|
|
24233
24236
|
ve(W(e.text), 1)
|
|
24234
24237
|
])
|
|
24235
|
-
],
|
|
24238
|
+
], 10, jS)) : (f(), g("span", {
|
|
24236
24239
|
key: 1,
|
|
24237
24240
|
"data-ui-cell-primary": "",
|
|
24238
24241
|
title: e.text,
|
|
24239
|
-
class: "min-w-0
|
|
24242
|
+
class: ne([t.value, "min-w-0 leading-5 text-[var(--ui-text)]"])
|
|
24240
24243
|
}, [
|
|
24241
|
-
k(
|
|
24244
|
+
k(n.$slots, "default", {}, () => [
|
|
24242
24245
|
ve(W(e.text), 1)
|
|
24243
24246
|
])
|
|
24244
|
-
],
|
|
24245
|
-
e.secondary ||
|
|
24247
|
+
], 10, US)),
|
|
24248
|
+
e.secondary || n.$slots.secondary ? (f(), g("span", {
|
|
24246
24249
|
key: 2,
|
|
24247
24250
|
"data-ui-cell-secondary": "",
|
|
24248
24251
|
title: e.secondary,
|
|
24249
24252
|
class: ne([
|
|
24250
|
-
"min-w-0
|
|
24253
|
+
"min-w-0 text-[length:var(--ui-font-size-sm)] leading-4 text-[var(--ui-text-secondary)]",
|
|
24254
|
+
t.value,
|
|
24251
24255
|
e.layout === "inline" && "shrink-0"
|
|
24252
24256
|
])
|
|
24253
24257
|
}, [
|
|
24254
|
-
k(
|
|
24258
|
+
k(n.$slots, "secondary", {}, () => [
|
|
24255
24259
|
ve(W(e.secondary), 1)
|
|
24256
24260
|
])
|
|
24257
24261
|
], 10, GS)) : L("", !0)
|
package/dist/json/catalog.d.ts
CHANGED
|
@@ -450,6 +450,7 @@ export declare const synoJsonComponentDefinitions: {
|
|
|
450
450
|
}>>;
|
|
451
451
|
openLabel: z.ZodOptional<z.ZodString>;
|
|
452
452
|
openDisabled: z.ZodOptional<z.ZodBoolean>;
|
|
453
|
+
wrap: z.ZodOptional<z.ZodBoolean>;
|
|
453
454
|
}, z.core.$strip>;
|
|
454
455
|
events: string[];
|
|
455
456
|
description: string;
|
|
@@ -960,6 +961,7 @@ export declare const synoJsonCatalog: import('@json-render/core').Catalog<{
|
|
|
960
961
|
}>>;
|
|
961
962
|
openLabel: z.ZodOptional<z.ZodString>;
|
|
962
963
|
openDisabled: z.ZodOptional<z.ZodBoolean>;
|
|
964
|
+
wrap: z.ZodOptional<z.ZodBoolean>;
|
|
963
965
|
}, z.core.$strip>;
|
|
964
966
|
events: string[];
|
|
965
967
|
description: string;
|
package/dist/json/registry.d.ts
CHANGED
|
@@ -470,6 +470,7 @@ export declare const synoJsonRenderers: {
|
|
|
470
470
|
}>>;
|
|
471
471
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
472
472
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
473
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
473
474
|
}, import('zod/v4/core').$strip>;
|
|
474
475
|
events: string[];
|
|
475
476
|
description: string;
|
|
@@ -984,6 +985,7 @@ export declare const synoJsonRenderers: {
|
|
|
984
985
|
}>>;
|
|
985
986
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
986
987
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
988
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
987
989
|
}, import('zod/v4/core').$strip>;
|
|
988
990
|
events: string[];
|
|
989
991
|
description: string;
|
|
@@ -1498,6 +1500,7 @@ export declare const synoJsonRenderers: {
|
|
|
1498
1500
|
}>>;
|
|
1499
1501
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
1500
1502
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
1503
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
1501
1504
|
}, import('zod/v4/core').$strip>;
|
|
1502
1505
|
events: string[];
|
|
1503
1506
|
description: string;
|
|
@@ -2012,6 +2015,7 @@ export declare const synoJsonRenderers: {
|
|
|
2012
2015
|
}>>;
|
|
2013
2016
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
2014
2017
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
2018
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
2015
2019
|
}, import('zod/v4/core').$strip>;
|
|
2016
2020
|
events: string[];
|
|
2017
2021
|
description: string;
|
|
@@ -2526,6 +2530,7 @@ export declare const synoJsonRenderers: {
|
|
|
2526
2530
|
}>>;
|
|
2527
2531
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
2528
2532
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
2533
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
2529
2534
|
}, import('zod/v4/core').$strip>;
|
|
2530
2535
|
events: string[];
|
|
2531
2536
|
description: string;
|
|
@@ -3040,6 +3045,7 @@ export declare const synoJsonRenderers: {
|
|
|
3040
3045
|
}>>;
|
|
3041
3046
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
3042
3047
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
3048
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
3043
3049
|
}, import('zod/v4/core').$strip>;
|
|
3044
3050
|
events: string[];
|
|
3045
3051
|
description: string;
|
|
@@ -3554,6 +3560,7 @@ export declare const synoJsonRenderers: {
|
|
|
3554
3560
|
}>>;
|
|
3555
3561
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
3556
3562
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
3563
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
3557
3564
|
}, import('zod/v4/core').$strip>;
|
|
3558
3565
|
events: string[];
|
|
3559
3566
|
description: string;
|
|
@@ -4068,6 +4075,7 @@ export declare const synoJsonRenderers: {
|
|
|
4068
4075
|
}>>;
|
|
4069
4076
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
4070
4077
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
4078
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
4071
4079
|
}, import('zod/v4/core').$strip>;
|
|
4072
4080
|
events: string[];
|
|
4073
4081
|
description: string;
|
|
@@ -4582,6 +4590,7 @@ export declare const synoJsonRenderers: {
|
|
|
4582
4590
|
}>>;
|
|
4583
4591
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
4584
4592
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
4593
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
4585
4594
|
}, import('zod/v4/core').$strip>;
|
|
4586
4595
|
events: string[];
|
|
4587
4596
|
description: string;
|
|
@@ -5096,6 +5105,7 @@ export declare const synoJsonRenderers: {
|
|
|
5096
5105
|
}>>;
|
|
5097
5106
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
5098
5107
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
5108
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
5099
5109
|
}, import('zod/v4/core').$strip>;
|
|
5100
5110
|
events: string[];
|
|
5101
5111
|
description: string;
|
|
@@ -5610,6 +5620,7 @@ export declare const synoJsonRenderers: {
|
|
|
5610
5620
|
}>>;
|
|
5611
5621
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
5612
5622
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
5623
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
5613
5624
|
}, import('zod/v4/core').$strip>;
|
|
5614
5625
|
events: string[];
|
|
5615
5626
|
description: string;
|
|
@@ -6124,6 +6135,7 @@ export declare const synoJsonRenderers: {
|
|
|
6124
6135
|
}>>;
|
|
6125
6136
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
6126
6137
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
6138
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
6127
6139
|
}, import('zod/v4/core').$strip>;
|
|
6128
6140
|
events: string[];
|
|
6129
6141
|
description: string;
|
|
@@ -6638,6 +6650,7 @@ export declare const synoJsonRenderers: {
|
|
|
6638
6650
|
}>>;
|
|
6639
6651
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
6640
6652
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
6653
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
6641
6654
|
}, import('zod/v4/core').$strip>;
|
|
6642
6655
|
events: string[];
|
|
6643
6656
|
description: string;
|
|
@@ -7152,6 +7165,7 @@ export declare const synoJsonRenderers: {
|
|
|
7152
7165
|
}>>;
|
|
7153
7166
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
7154
7167
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
7168
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
7155
7169
|
}, import('zod/v4/core').$strip>;
|
|
7156
7170
|
events: string[];
|
|
7157
7171
|
description: string;
|
|
@@ -7666,6 +7680,7 @@ export declare const synoJsonRenderers: {
|
|
|
7666
7680
|
}>>;
|
|
7667
7681
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
7668
7682
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
7683
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
7669
7684
|
}, import('zod/v4/core').$strip>;
|
|
7670
7685
|
events: string[];
|
|
7671
7686
|
description: string;
|
|
@@ -8180,6 +8195,7 @@ export declare const synoJsonRenderers: {
|
|
|
8180
8195
|
}>>;
|
|
8181
8196
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
8182
8197
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
8198
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
8183
8199
|
}, import('zod/v4/core').$strip>;
|
|
8184
8200
|
events: string[];
|
|
8185
8201
|
description: string;
|
|
@@ -8694,6 +8710,7 @@ export declare const synoJsonRenderers: {
|
|
|
8694
8710
|
}>>;
|
|
8695
8711
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
8696
8712
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
8713
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
8697
8714
|
}, import('zod/v4/core').$strip>;
|
|
8698
8715
|
events: string[];
|
|
8699
8716
|
description: string;
|
|
@@ -9208,6 +9225,7 @@ export declare const synoJsonRenderers: {
|
|
|
9208
9225
|
}>>;
|
|
9209
9226
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
9210
9227
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
9228
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
9211
9229
|
}, import('zod/v4/core').$strip>;
|
|
9212
9230
|
events: string[];
|
|
9213
9231
|
description: string;
|
|
@@ -9722,6 +9740,7 @@ export declare const synoJsonRenderers: {
|
|
|
9722
9740
|
}>>;
|
|
9723
9741
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
9724
9742
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
9743
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
9725
9744
|
}, import('zod/v4/core').$strip>;
|
|
9726
9745
|
events: string[];
|
|
9727
9746
|
description: string;
|
|
@@ -10236,6 +10255,7 @@ export declare const synoJsonRenderers: {
|
|
|
10236
10255
|
}>>;
|
|
10237
10256
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
10238
10257
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
10258
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
10239
10259
|
}, import('zod/v4/core').$strip>;
|
|
10240
10260
|
events: string[];
|
|
10241
10261
|
description: string;
|
|
@@ -10750,6 +10770,7 @@ export declare const synoJsonRenderers: {
|
|
|
10750
10770
|
}>>;
|
|
10751
10771
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
10752
10772
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
10773
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
10753
10774
|
}, import('zod/v4/core').$strip>;
|
|
10754
10775
|
events: string[];
|
|
10755
10776
|
description: string;
|
|
@@ -11264,6 +11285,7 @@ export declare const synoJsonRenderers: {
|
|
|
11264
11285
|
}>>;
|
|
11265
11286
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
11266
11287
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
11288
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
11267
11289
|
}, import('zod/v4/core').$strip>;
|
|
11268
11290
|
events: string[];
|
|
11269
11291
|
description: string;
|
|
@@ -11778,6 +11800,7 @@ export declare const synoJsonRenderers: {
|
|
|
11778
11800
|
}>>;
|
|
11779
11801
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
11780
11802
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
11803
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
11781
11804
|
}, import('zod/v4/core').$strip>;
|
|
11782
11805
|
events: string[];
|
|
11783
11806
|
description: string;
|
|
@@ -12292,6 +12315,7 @@ export declare const synoJsonRenderers: {
|
|
|
12292
12315
|
}>>;
|
|
12293
12316
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
12294
12317
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
12318
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
12295
12319
|
}, import('zod/v4/core').$strip>;
|
|
12296
12320
|
events: string[];
|
|
12297
12321
|
description: string;
|
|
@@ -12806,6 +12830,7 @@ export declare const synoJsonRenderers: {
|
|
|
12806
12830
|
}>>;
|
|
12807
12831
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
12808
12832
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
12833
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
12809
12834
|
}, import('zod/v4/core').$strip>;
|
|
12810
12835
|
events: string[];
|
|
12811
12836
|
description: string;
|
|
@@ -13320,6 +13345,7 @@ export declare const synoJsonRenderers: {
|
|
|
13320
13345
|
}>>;
|
|
13321
13346
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
13322
13347
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
13348
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
13323
13349
|
}, import('zod/v4/core').$strip>;
|
|
13324
13350
|
events: string[];
|
|
13325
13351
|
description: string;
|
|
@@ -13834,6 +13860,7 @@ export declare const synoJsonRenderers: {
|
|
|
13834
13860
|
}>>;
|
|
13835
13861
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
13836
13862
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
13863
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
13837
13864
|
}, import('zod/v4/core').$strip>;
|
|
13838
13865
|
events: string[];
|
|
13839
13866
|
description: string;
|
|
@@ -14348,6 +14375,7 @@ export declare const synoJsonRenderers: {
|
|
|
14348
14375
|
}>>;
|
|
14349
14376
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
14350
14377
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
14378
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
14351
14379
|
}, import('zod/v4/core').$strip>;
|
|
14352
14380
|
events: string[];
|
|
14353
14381
|
description: string;
|
|
@@ -14862,6 +14890,7 @@ export declare const synoJsonRenderers: {
|
|
|
14862
14890
|
}>>;
|
|
14863
14891
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
14864
14892
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
14893
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
14865
14894
|
}, import('zod/v4/core').$strip>;
|
|
14866
14895
|
events: string[];
|
|
14867
14896
|
description: string;
|
|
@@ -15376,6 +15405,7 @@ export declare const synoJsonRenderers: {
|
|
|
15376
15405
|
}>>;
|
|
15377
15406
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
15378
15407
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
15408
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
15379
15409
|
}, import('zod/v4/core').$strip>;
|
|
15380
15410
|
events: string[];
|
|
15381
15411
|
description: string;
|
|
@@ -15890,6 +15920,7 @@ export declare const synoJsonRenderers: {
|
|
|
15890
15920
|
}>>;
|
|
15891
15921
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
15892
15922
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
15923
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
15893
15924
|
}, import('zod/v4/core').$strip>;
|
|
15894
15925
|
events: string[];
|
|
15895
15926
|
description: string;
|
|
@@ -16404,6 +16435,7 @@ export declare const synoJsonRenderers: {
|
|
|
16404
16435
|
}>>;
|
|
16405
16436
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
16406
16437
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
16438
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
16407
16439
|
}, import('zod/v4/core').$strip>;
|
|
16408
16440
|
events: string[];
|
|
16409
16441
|
description: string;
|
|
@@ -16918,6 +16950,7 @@ export declare const synoJsonRenderers: {
|
|
|
16918
16950
|
}>>;
|
|
16919
16951
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
16920
16952
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
16953
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
16921
16954
|
}, import('zod/v4/core').$strip>;
|
|
16922
16955
|
events: string[];
|
|
16923
16956
|
description: string;
|
|
@@ -17432,6 +17465,7 @@ export declare const synoJsonRenderers: {
|
|
|
17432
17465
|
}>>;
|
|
17433
17466
|
openLabel: import('zod').ZodOptional<import('zod').ZodString>;
|
|
17434
17467
|
openDisabled: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
17468
|
+
wrap: import('zod').ZodOptional<import('zod').ZodBoolean>;
|
|
17435
17469
|
}, import('zod/v4/core').$strip>;
|
|
17436
17470
|
events: string[];
|
|
17437
17471
|
description: string;
|
package/dist/json-ai-prompt.md
CHANGED
|
@@ -78,7 +78,7 @@ AVAILABLE COMPONENTS (34):
|
|
|
78
78
|
- Dialog: { open?: boolean, title?: string, description?: string, width?: string, showClose?: boolean } - Modal task/dialog. Bind open to state. Put confirmation or form actions in footer. [accepts children; slots: footer] [events: openChange]
|
|
79
79
|
- DataTable: { columns: Array<{ key: string, label: string, width?: string, align?: "left" | "center" | "right" }>, rows: Array<Record<string, unknown>>, rowKey?: string, emptyText?: string, compact?: boolean, mobileView?: "auto" | "cards" | "table" } - Simple resource table where cells display scalar row fields. Use an app extension component for rich/custom cells and row actions.
|
|
80
80
|
- ResourceList: { columns: Array<{ key: string, label: string, width?: string, align?: "left" | "center" | "right" }>, rows: Array<Record<string, unknown>>, rowKey?: string, emptyText?: string, compact?: boolean, mobileView?: "auto" | "cards" | "table" } - Common resource collection pattern: optional toolbar plus a simple table. For domain-specific row rendering, extend the catalog with a custom list/table component. [slots: toolbar]
|
|
81
|
-
- CellText: { text: string, secondary?: string, layout?: "stacked" | "inline", openLabel?: string, openDisabled?: boolean } - Main text with secondary information (size, time, path), truncated with a tooltip. With openLabel the main text is a link-styled button that emits open, e.g. "Open in File Station". [events: open]
|
|
81
|
+
- CellText: { text: string, secondary?: string, layout?: "stacked" | "inline", openLabel?: string, openDisabled?: boolean, wrap?: boolean } - Main text with secondary information (size, time, path), truncated with a tooltip; wrap: true wraps both lines instead. With openLabel the main text is a link-styled button that emits open, e.g. "Open in File Station". [events: open]
|
|
82
82
|
- CellStatus: { label: string, tone?: "neutral" | "info" | "success" | "warning" | "danger", progress?: number, detail?: string } - Task status: a toned dot and label, a bar while progress (0–100) is running, and a detail such as speed or a reason.
|
|
83
83
|
- ListItem: { title?: string, description?: string } - One entry of a list (an extension, a tool, a rule): title, description, content and actions on the right. Consecutive entries are split by a hairline. [accepts children; slots: actions]
|
|
84
84
|
- InputGroup: { } - A field and the buttons acting on it on one line, such as a URL and its Install button. The first child takes the room left. [accepts children]
|
|
@@ -2714,7 +2714,7 @@
|
|
|
2714
2714
|
}
|
|
2715
2715
|
},
|
|
2716
2716
|
"then": {
|
|
2717
|
-
"description": "Main text with secondary information (size, time, path), truncated with a tooltip. With openLabel the main text is a link-styled button that emits open, e.g. \"Open in File Station\".",
|
|
2717
|
+
"description": "Main text with secondary information (size, time, path), truncated with a tooltip; wrap: true wraps both lines instead. With openLabel the main text is a link-styled button that emits open, e.g. \"Open in File Station\".",
|
|
2718
2718
|
"properties": {
|
|
2719
2719
|
"props": {
|
|
2720
2720
|
"type": "object",
|
|
@@ -2772,6 +2772,16 @@
|
|
|
2772
2772
|
"$ref": "#/$defs/expression"
|
|
2773
2773
|
}
|
|
2774
2774
|
]
|
|
2775
|
+
},
|
|
2776
|
+
"wrap": {
|
|
2777
|
+
"anyOf": [
|
|
2778
|
+
{
|
|
2779
|
+
"type": "boolean"
|
|
2780
|
+
},
|
|
2781
|
+
{
|
|
2782
|
+
"$ref": "#/$defs/expression"
|
|
2783
|
+
}
|
|
2784
|
+
]
|
|
2775
2785
|
}
|
|
2776
2786
|
},
|
|
2777
2787
|
"required": [
|