@streamscloud/kit 0.33.0 → 0.34.1

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.
@@ -82,7 +82,11 @@ $effect(() => {
82
82
  MultiselectTree — sync, grouped multi-value picker with cascade + tri-state behavior and an
83
83
  optional create-with-parent section. Tree of one level: parent groups (each a
84
84
  `SelectOptionGroup<T>`) with child options; cascade-aware toggle on group headers; tri-state
85
- checkbox visual when `selectionMode='children-include-parent'`. Selection is visible inside
85
+ checkbox visual when `selectionMode='children-include-parent'`.
86
+
87
+ `groupHeader='value'` + `selectionMode='children-only'` turns the parent into an ordinary
88
+ independent checkbox instead: clicking it picks the group's own `value` and never touches the
89
+ children, and the header's checkbox is binary rather than tri-state. Selection is visible inside
86
90
  the popover (checkbox rows) AND as chips inside the trigger by default; pass an empty
87
91
  `selectionSnippet` to hide the chip row entirely, or a custom one to render a count badge
88
92
  or any summary instead.
@@ -36,14 +36,20 @@ declare function $$render<T>(): {
36
36
  /**
37
37
  * Group-header behavior:
38
38
  * - `'static'` — non-interactive label.
39
+ * - `'value'` — clicking the header picks the group's own `value` and nothing else; the header is an ordinary
40
+ * binary checkbox, independent of its children. Requires a `value` on the group, otherwise the header stays
41
+ * inert. Pair with `selectionMode='children-only'` for a fully independent parent.
39
42
  * - `'toggle-all'` (default) — clicking the header toggles every child option at once; tri-state checkbox when `selectionMode='children-include-parent'`.
40
43
  * @default 'toggle-all'
41
44
  */
42
- groupHeader?: "static" | "toggle-all";
45
+ groupHeader?: "static" | "value" | "toggle-all";
43
46
  /**
44
47
  * Cascade between group.value and children:
45
48
  * - `'children-only'` (default) — picking a child adds only the child; group's own `value` stays independent.
46
49
  * - `'children-include-parent'` — picking any child auto-adds the group's `value` to the selection; unpicking the last child removes it. Tri-state group headers light up in this mode.
50
+ *
51
+ * Combining `'children-include-parent'` with `groupHeader='value'` is coherent but unusual: the cascade and the independent header both write the
52
+ * group's own `value`, so a child pick can re-add a parent the user just cleared from the header. Pair `groupHeader='value'` with `'children-only'`.
47
53
  * @default 'children-only'
48
54
  */
49
55
  selectionMode?: "children-only" | "children-include-parent";
@@ -118,7 +124,11 @@ interface $$IsomorphicComponent {
118
124
  * MultiselectTree — sync, grouped multi-value picker with cascade + tri-state behavior and an
119
125
  * optional create-with-parent section. Tree of one level: parent groups (each a
120
126
  * `SelectOptionGroup<T>`) with child options; cascade-aware toggle on group headers; tri-state
121
- * checkbox visual when `selectionMode='children-include-parent'`. Selection is visible inside
127
+ * checkbox visual when `selectionMode='children-include-parent'`.
128
+ *
129
+ * `groupHeader='value'` + `selectionMode='children-only'` turns the parent into an ordinary
130
+ * independent checkbox instead: clicking it picks the group's own `value` and never touches the
131
+ * children, and the header's checkbox is binary rather than tri-state. Selection is visible inside
122
132
  * the popover (checkbox rows) AND as chips inside the trigger by default; pass an empty
123
133
  * `selectionSnippet` to hide the chip row entirely, or a custom one to render a count badge
124
134
  * or any summary instead.
@@ -56,7 +56,7 @@
56
56
  background: var(--_table--card--background);
57
57
  border: 1px solid var(--_table--card--border-color);
58
58
  border-radius: var(--_table--card--border-radius);
59
- overflow: hidden;
59
+ // No overflow here: the radius already clips via the base overflow-x, and `hidden` would kill both scroll axes.
60
60
  }
61
61
  }
62
62
 
@@ -243,7 +243,6 @@ preserve the current selection. For non-reorderable tables use `Table` (it ships
243
243
  background: var(--_table--card--background);
244
244
  border: 1px solid var(--_table--card--border-color);
245
245
  border-radius: var(--_table--card--border-radius);
246
- overflow: hidden;
247
246
  }
248
247
 
249
248
  .table {
@@ -224,7 +224,6 @@ variant ships no dnd code).
224
224
  background: var(--_table--card--background);
225
225
  border: 1px solid var(--_table--card--border-color);
226
226
  border-radius: var(--_table--card--border-radius);
227
- overflow: hidden;
228
227
  }
229
228
 
230
229
  .table {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@streamscloud/kit",
3
- "version": "0.33.0",
3
+ "version": "0.34.1",
4
4
  "author": "StreamsCloud",
5
5
  "repository": {
6
6
  "type": "git",