@bysages/solid 0.2.3 → 0.3.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.
Files changed (154) hide show
  1. package/README.md +16 -2
  2. package/dist/{ai-response-B_586r27.mjs → ai-response-slzE03wh.mjs} +19 -17
  3. package/dist/chevron-D5RzcayK.mjs +9 -0
  4. package/dist/components/affix/index.mjs +15 -17
  5. package/dist/components/ai/index.d.mts +1 -1
  6. package/dist/components/ai/index.mjs +21 -22
  7. package/dist/components/ai-action/index.mjs +2 -2
  8. package/dist/components/ai-attachments/index.mjs +52 -38
  9. package/dist/components/ai-message/index.mjs +11 -13
  10. package/dist/components/ai-prompt-input/index.mjs +81 -55
  11. package/dist/components/ai-reasoning/index.mjs +10 -6
  12. package/dist/components/ai-response/index.mjs +1 -1
  13. package/dist/components/ai-source/index.mjs +23 -23
  14. package/dist/components/ai-suggestion/index.mjs +1 -1
  15. package/dist/components/ai-tool/index.mjs +29 -17
  16. package/dist/components/alert/index.mjs +37 -42
  17. package/dist/components/angle-slider/index.mjs +2 -2
  18. package/dist/components/aspect-ratio/index.mjs +14 -16
  19. package/dist/components/autocomplete/index.mjs +8 -3
  20. package/dist/components/avatar/index.d.mts +3 -0
  21. package/dist/components/avatar/index.mjs +10 -5
  22. package/dist/components/avatar-group/index.mjs +11 -13
  23. package/dist/components/back-top/index.mjs +31 -27
  24. package/dist/components/badge/index.mjs +14 -16
  25. package/dist/components/banner/index.mjs +26 -28
  26. package/dist/components/bento/index.d.mts +24 -0
  27. package/dist/components/bento/index.mjs +51 -0
  28. package/dist/components/block-ui/index.d.mts +12 -0
  29. package/dist/components/block-ui/index.mjs +43 -0
  30. package/dist/components/breadcrumb/index.mjs +12 -10
  31. package/dist/components/browser/index.d.mts +21 -0
  32. package/dist/components/browser/index.mjs +87 -0
  33. package/dist/components/button/index.mjs +27 -29
  34. package/dist/components/button-group/index.mjs +18 -20
  35. package/dist/components/calendar/index.mjs +141 -129
  36. package/dist/components/card/index.mjs +2 -2
  37. package/dist/components/cascade-select/index.mjs +167 -121
  38. package/dist/components/checkbox/index.mjs +2 -2
  39. package/dist/components/checkbox-group/index.mjs +53 -55
  40. package/dist/components/chip/index.mjs +22 -20
  41. package/dist/components/clipboard/index.mjs +2 -2
  42. package/dist/components/color-picker/index.mjs +2 -2
  43. package/dist/components/combobox/index.mjs +2 -2
  44. package/dist/components/command/index.mjs +83 -59
  45. package/dist/components/comment/index.mjs +77 -62
  46. package/dist/components/config-provider/index.d.mts +4 -1
  47. package/dist/components/config-provider/index.mjs +13 -9
  48. package/dist/components/container/index.mjs +14 -16
  49. package/dist/components/data-view/index.d.mts +18 -0
  50. package/dist/components/data-view/index.mjs +116 -0
  51. package/dist/components/date-input/index.mjs +2 -2
  52. package/dist/components/date-picker/index.mjs +2 -2
  53. package/dist/components/deferred-content/index.d.mts +16 -0
  54. package/dist/components/deferred-content/index.mjs +52 -0
  55. package/dist/components/descriptions/index.d.mts +9 -1
  56. package/dist/components/descriptions/index.mjs +43 -16
  57. package/dist/components/dock/index.d.mts +22 -0
  58. package/dist/components/dock/index.mjs +64 -0
  59. package/dist/components/dynamic-input/index.mjs +75 -68
  60. package/dist/components/editable/index.mjs +2 -2
  61. package/dist/components/ellipsis/index.mjs +17 -19
  62. package/dist/components/empty/index.mjs +2 -2
  63. package/dist/components/file-upload/index.d.mts +7 -1
  64. package/dist/components/file-upload/index.mjs +13 -3
  65. package/dist/components/float-button/index.mjs +42 -39
  66. package/dist/components/form/index.d.mts +1 -1
  67. package/dist/components/form/index.mjs +52 -37
  68. package/dist/components/grid/index.mjs +19 -21
  69. package/dist/components/icon/index.d.mts +9 -4
  70. package/dist/components/icon/index.mjs +37 -36
  71. package/dist/components/image/index.d.mts +4 -0
  72. package/dist/components/image/index.mjs +50 -43
  73. package/dist/components/image-viewer/index.d.mts +4 -0
  74. package/dist/components/image-viewer/index.mjs +54 -37
  75. package/dist/components/input/index.d.mts +3 -0
  76. package/dist/components/input/index.mjs +1 -41
  77. package/dist/components/input-group/index.mjs +14 -18
  78. package/dist/components/json-tree-view/index.d.mts +5 -2
  79. package/dist/components/json-tree-view/index.mjs +25 -2
  80. package/dist/components/kbd/index.mjs +8 -10
  81. package/dist/components/layout/index.mjs +81 -77
  82. package/dist/components/link/index.mjs +12 -13
  83. package/dist/components/list/index.d.mts +2 -1
  84. package/dist/components/list/index.mjs +62 -48
  85. package/dist/components/listbox/index.mjs +2 -2
  86. package/dist/components/masonry/index.mjs +15 -17
  87. package/dist/components/mentions/index.mjs +1 -1
  88. package/dist/components/menu/index.mjs +2 -2
  89. package/dist/components/menubar/index.mjs +59 -57
  90. package/dist/components/meter/index.mjs +41 -41
  91. package/dist/components/number-input/index.mjs +2 -2
  92. package/dist/components/order-list/index.d.mts +21 -0
  93. package/dist/components/order-list/index.mjs +168 -0
  94. package/dist/components/page-header/index.mjs +2 -2
  95. package/dist/components/pagination/index.mjs +2 -2
  96. package/dist/components/password-input/index.mjs +2 -2
  97. package/dist/components/pin-input/index.mjs +2 -2
  98. package/dist/components/popconfirm/index.mjs +19 -12
  99. package/dist/components/progress/index.mjs +2 -2
  100. package/dist/components/progress-group/index.mjs +65 -58
  101. package/dist/components/radio-group/index.mjs +2 -2
  102. package/dist/components/rating-group/index.mjs +2 -2
  103. package/dist/components/result/index.d.mts +22 -0
  104. package/dist/components/result/index.mjs +66 -0
  105. package/dist/components/select/index.d.mts +2 -17
  106. package/dist/components/select/index.mjs +2 -18
  107. package/dist/components/separator/index.mjs +17 -19
  108. package/dist/components/skeleton/index.mjs +8 -10
  109. package/dist/components/slider/index.mjs +2 -2
  110. package/dist/components/spinner/index.mjs +17 -17
  111. package/dist/components/split-button/index.mjs +88 -83
  112. package/dist/components/spotlight/index.d.mts +11 -0
  113. package/dist/components/spotlight/index.mjs +38 -0
  114. package/dist/components/stack/index.mjs +20 -22
  115. package/dist/components/stat/index.mjs +12 -14
  116. package/dist/components/steps/index.d.mts +6 -1
  117. package/dist/components/steps/index.mjs +9 -3
  118. package/dist/components/switch/index.mjs +2 -2
  119. package/dist/components/table/index.mjs +323 -214
  120. package/dist/components/tabs/index.d.mts +2 -0
  121. package/dist/components/tabs/index.mjs +10 -5
  122. package/dist/components/tags-input/index.mjs +2 -2
  123. package/dist/components/terminal/index.d.mts +17 -0
  124. package/dist/components/terminal/index.mjs +86 -0
  125. package/dist/components/textarea/index.mjs +8 -8
  126. package/dist/components/timeline/index.d.mts +9 -3
  127. package/dist/components/timeline/index.mjs +18 -3
  128. package/dist/components/toc/index.d.mts +2 -7
  129. package/dist/components/toc/index.mjs +1 -9
  130. package/dist/components/toggle-group/index.mjs +2 -2
  131. package/dist/components/toolbar/index.d.mts +17 -0
  132. package/dist/components/toolbar/index.mjs +46 -0
  133. package/dist/components/transfer/index.mjs +126 -107
  134. package/dist/components/tree-select/index.mjs +36 -25
  135. package/dist/components/tree-view/index.d.mts +8 -1
  136. package/dist/components/tree-view/index.mjs +29 -3
  137. package/dist/components/typography/index.mjs +2 -2
  138. package/dist/components/user/index.d.mts +19 -0
  139. package/dist/components/user/index.mjs +68 -0
  140. package/dist/components/virtual-list/index.d.mts +17 -0
  141. package/dist/components/virtual-list/index.mjs +72 -0
  142. package/dist/components/watermark/index.mjs +19 -13
  143. package/dist/index-DdsnfV4f.d.mts +16 -0
  144. package/dist/{index-B4XS2n2y.d.mts → index-IfofF-SW.d.mts} +718 -3773
  145. package/dist/index-YPUiqD3n.d.mts +42 -0
  146. package/dist/index.d.mts +17 -4
  147. package/dist/index.mjs +22 -9
  148. package/dist/input-DoFQ7RXh.mjs +78 -0
  149. package/dist/{mentions-xbI6vJAP.mjs → mentions-f5Js_2W7.mjs} +76 -70
  150. package/dist/select-CX6OuQlU.mjs +123 -0
  151. package/dist/toc-CZmYEaQR.mjs +21 -0
  152. package/dist/use-component-messages-C4SCVYjD.mjs +17 -0
  153. package/package.json +28 -7
  154. package/dist/chevron-GWEoEYdO.mjs +0 -9
@@ -1,17 +1,17 @@
1
1
  import { injectComponentStyle } from "@bysages/core";
2
- import { createComponent, effect, insert, memo, mergeProps, spread, style, template } from "solid-js/web";
2
+ import { createComponent, effect, insert, memo, mergeProps, readShallow, spread, style, template } from "@solidjs/web";
3
3
  import { For, Show, splitProps } from "solid-js";
4
4
  import { DatePicker } from "@ark-ui/solid/date-picker";
5
5
  //#region src/components/calendar/index.tsx
6
- var _tmpl$ = /*#__PURE__*/ template(`<svg width=16 height=16 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=1.75 aria-hidden=true><path d="m9 5 7 7-7 7">`);
7
- var _tmpl$2 = /*#__PURE__*/ template(`<div data-scope=calendar data-part=header>`);
8
- var _tmpl$3 = /*#__PURE__*/ template(`<div>`);
6
+ var _tmpl$ = /* @__PURE__ */ template(`<svg width=16 height=16 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=1.75 aria-hidden=true><path d="m9 5 7 7-7 7">`);
7
+ var _tmpl$2 = /* @__PURE__ */ template(`<div data-scope=calendar data-part=header>`);
8
+ var _tmpl$3 = /* @__PURE__ */ template(`<div><!><!>`);
9
9
  function chevron(dir) {
10
- return (() => {
11
- var _el$ = _tmpl$();
12
- effect((_$p) => style(_el$, dir === "left" ? { transform: "rotate(180deg)" } : void 0, _$p));
13
- return _el$;
14
- })();
10
+ var _el$ = _tmpl$();
11
+ effect(() => readShallow(dir === "left" ? { transform: "rotate(180deg)" } : void 0), (_v$, _$p) => {
12
+ style(_el$, _v$, _$p);
13
+ });
14
+ return _el$;
15
15
  }
16
16
  /** The date-picker's month grid, standing on the page without its
17
17
  * popup: always open, the trigger gone, the vessel a quiet card. The
@@ -56,142 +56,154 @@ function Calendar(props) {
56
56
  } }));
57
57
  return _el$2;
58
58
  })();
59
- return (() => {
60
- var _el$3 = _tmpl$3();
61
- spread(_el$3, mergeProps(rest, {
62
- "data-scope": "calendar",
63
- "data-part": "root"
64
- }), false, true);
65
- insert(_el$3, createComponent(DatePicker.Root, mergeProps({
66
- open: true,
67
- closeOnSelect: true,
68
- inline: true
69
- }, () => own.value !== void 0 ? { value: own.value } : {}, () => own.min !== void 0 ? { min: own.min } : {}, () => own.max !== void 0 ? { max: own.max } : {}, {
70
- onValueChange: (details) => own.onValueChange?.(details.value),
71
- get children() {
72
- return [
73
- createComponent(DatePicker.View, {
74
- view: "day",
75
- get children() {
76
- return [memo(() => header()), createComponent(DatePicker.Table, { get children() {
77
- return [createComponent(DatePicker.TableHead, { get children() {
78
- return createComponent(DatePicker.TableRow, { get children() {
79
- return createComponent(DatePicker.Context, { children: (dp) => createComponent(For, {
80
- get each() {
81
- return dp().weekDays;
59
+ var _el$3 = _tmpl$3();
60
+ var _el$4 = _el$3.firstChild;
61
+ var _el$5 = _el$4.nextSibling;
62
+ spread(_el$3, [rest, {
63
+ "data-scope": "calendar",
64
+ "data-part": "root"
65
+ }], true);
66
+ insert(_el$3, createComponent(DatePicker.Root, mergeProps({
67
+ open: true,
68
+ closeOnSelect: true,
69
+ inline: true
70
+ }, () => {
71
+ return own.value !== void 0 ? { value: own.value } : {};
72
+ }, () => {
73
+ return own.min !== void 0 ? { min: own.min } : {};
74
+ }, () => {
75
+ return own.max !== void 0 ? { max: own.max } : {};
76
+ }, {
77
+ onValueChange: (details) => own.onValueChange?.(details.value),
78
+ get children() {
79
+ return [
80
+ createComponent(DatePicker.View, {
81
+ view: "day",
82
+ get children() {
83
+ return [memo(() => {
84
+ return header();
85
+ }), createComponent(DatePicker.Table, { get children() {
86
+ return [createComponent(DatePicker.TableHead, { get children() {
87
+ return createComponent(DatePicker.TableRow, { get children() {
88
+ return createComponent(DatePicker.Context, { children: (dp) => createComponent(For, {
89
+ get each() {
90
+ return dp().weekDays;
91
+ },
92
+ children: (day) => createComponent(DatePicker.TableHeader, {
93
+ get "aria-label"() {
94
+ return day.long;
82
95
  },
83
- children: (day) => createComponent(DatePicker.TableHeader, {
84
- get ["aria-label"]() {
85
- return day.long;
86
- },
96
+ get children() {
97
+ return day.narrow;
98
+ }
99
+ })
100
+ }) });
101
+ } });
102
+ } }), createComponent(DatePicker.TableBody, { get children() {
103
+ return createComponent(DatePicker.Context, { children: (dp) => createComponent(For, {
104
+ get each() {
105
+ return dp().weeks;
106
+ },
107
+ children: (week) => createComponent(DatePicker.TableRow, { get children() {
108
+ return createComponent(For, {
109
+ each: week,
110
+ children: (day) => createComponent(DatePicker.TableCell, {
111
+ value: day,
87
112
  get children() {
88
- return day.narrow;
113
+ return createComponent(DatePicker.TableCellTrigger, { get children() {
114
+ return day.day;
115
+ } });
89
116
  }
90
117
  })
91
- }) });
92
- } });
93
- } }), createComponent(DatePicker.TableBody, { get children() {
118
+ });
119
+ } })
120
+ }) });
121
+ } })];
122
+ } })];
123
+ }
124
+ }),
125
+ createComponent(DatePicker.View, {
126
+ view: "month",
127
+ get children() {
128
+ return [memo(() => {
129
+ return header();
130
+ }), createComponent(DatePicker.Table, {
131
+ columns: 3,
132
+ get children() {
133
+ return createComponent(DatePicker.TableBody, { get children() {
94
134
  return createComponent(DatePicker.Context, { children: (dp) => createComponent(For, {
95
135
  get each() {
96
- return dp().weeks;
136
+ return dp().getMonthsGrid({ columns: 3 });
97
137
  },
98
- children: (week) => createComponent(DatePicker.TableRow, { get children() {
138
+ children: (months) => createComponent(DatePicker.TableRow, { get children() {
99
139
  return createComponent(For, {
100
- each: week,
101
- children: (day) => createComponent(DatePicker.TableCell, {
102
- value: day,
140
+ each: months,
141
+ children: (month) => createComponent(DatePicker.TableCell, {
142
+ get value() {
143
+ return month.value;
144
+ },
145
+ columns: 3,
103
146
  get children() {
104
147
  return createComponent(DatePicker.TableCellTrigger, { get children() {
105
- return day.day;
148
+ return month.label;
106
149
  } });
107
150
  }
108
151
  })
109
152
  });
110
153
  } })
111
154
  }) });
112
- } })];
113
- } })];
114
- }
115
- }),
116
- createComponent(DatePicker.View, {
117
- view: "month",
118
- get children() {
119
- return [memo(() => header()), createComponent(DatePicker.Table, {
120
- columns: 3,
121
- get children() {
122
- return createComponent(DatePicker.TableBody, { get children() {
123
- return createComponent(DatePicker.Context, { children: (dp) => createComponent(For, {
124
- get each() {
125
- return dp().getMonthsGrid({ columns: 3 });
126
- },
127
- children: (months) => createComponent(DatePicker.TableRow, { get children() {
128
- return createComponent(For, {
129
- each: months,
130
- children: (month) => createComponent(DatePicker.TableCell, {
131
- get value() {
132
- return month.value;
133
- },
134
- columns: 3,
135
- get children() {
136
- return createComponent(DatePicker.TableCellTrigger, { get children() {
137
- return month.label;
138
- } });
139
- }
140
- })
141
- });
142
- } })
143
- }) });
144
- } });
145
- }
146
- })];
147
- }
148
- }),
149
- createComponent(DatePicker.View, {
150
- view: "year",
151
- get children() {
152
- return [memo(() => header()), createComponent(DatePicker.Table, {
153
- columns: 3,
154
- get children() {
155
- return createComponent(DatePicker.TableBody, { get children() {
156
- return createComponent(DatePicker.Context, { children: (dp) => createComponent(For, {
157
- get each() {
158
- return dp().getYearsGrid({ columns: 3 });
159
- },
160
- children: (years) => createComponent(DatePicker.TableRow, { get children() {
161
- return createComponent(For, {
162
- each: years,
163
- children: (year) => createComponent(DatePicker.TableCell, {
164
- get value() {
165
- return year.value;
166
- },
167
- columns: 3,
168
- get children() {
169
- return createComponent(DatePicker.TableCellTrigger, { get children() {
170
- return year.label;
171
- } });
172
- }
173
- })
174
- });
175
- } })
176
- }) });
177
- } });
178
- }
179
- })];
180
- }
181
- })
182
- ];
183
- }
184
- })), null);
185
- insert(_el$3, createComponent(Show, {
186
- get when() {
187
- return rest.children;
188
- },
189
- get children() {
190
- return rest.children;
191
- }
192
- }), null);
193
- return _el$3;
194
- })();
155
+ } });
156
+ }
157
+ })];
158
+ }
159
+ }),
160
+ createComponent(DatePicker.View, {
161
+ view: "year",
162
+ get children() {
163
+ return [memo(() => {
164
+ return header();
165
+ }), createComponent(DatePicker.Table, {
166
+ columns: 3,
167
+ get children() {
168
+ return createComponent(DatePicker.TableBody, { get children() {
169
+ return createComponent(DatePicker.Context, { children: (dp) => createComponent(For, {
170
+ get each() {
171
+ return dp().getYearsGrid({ columns: 3 });
172
+ },
173
+ children: (years) => createComponent(DatePicker.TableRow, { get children() {
174
+ return createComponent(For, {
175
+ each: years,
176
+ children: (year) => createComponent(DatePicker.TableCell, {
177
+ get value() {
178
+ return year.value;
179
+ },
180
+ columns: 3,
181
+ get children() {
182
+ return createComponent(DatePicker.TableCellTrigger, { get children() {
183
+ return year.label;
184
+ } });
185
+ }
186
+ })
187
+ });
188
+ } })
189
+ }) });
190
+ } });
191
+ }
192
+ })];
193
+ }
194
+ })
195
+ ];
196
+ }
197
+ })), _el$4);
198
+ insert(_el$3, createComponent(Show, {
199
+ get when() {
200
+ return rest.children;
201
+ },
202
+ get children() {
203
+ return rest.children;
204
+ }
205
+ }), _el$5);
206
+ return _el$3;
195
207
  }
196
208
  //#endregion
197
209
  export { Calendar };
@@ -1,5 +1,5 @@
1
1
  import { injectComponentStyle } from "@bysages/core";
2
- import { createComponent, mergeProps } from "solid-js/web";
2
+ import { createComponent, mergeProps } from "@solidjs/web";
3
3
  //#region src/components/card/index.tsx
4
4
  /** A vessel: round, resting at the first elevation, one hairline for its
5
5
  * edge. Root, Header, Title, Description, Content, Footer — sections
@@ -8,7 +8,7 @@ function part(name, tag) {
8
8
  return ((props) => {
9
9
  return createComponent(tag, mergeProps(props, {
10
10
  "data-scope": "card",
11
- get ["data-part"]() {
11
+ get "data-part"() {
12
12
  return name.toLowerCase();
13
13
  }
14
14
  }));
@@ -1,23 +1,25 @@
1
- import { Input } from "../input/index.mjs";
1
+ import { n as useComponentMessages } from "../../use-component-messages-C4SCVYjD.mjs";
2
+ import { t as Input } from "../../input-DoFQ7RXh.mjs";
2
3
  import { injectComponentStyle } from "@bysages/core";
3
- import { Portal, createComponent, delegateEvents, effect, insert, mergeProps, setAttribute, spread, template } from "solid-js/web";
4
+ import { createComponent, delegateEvents, effect, insert, setAttribute, spread, template } from "@solidjs/web";
4
5
  import { For, Show, createMemo, createSignal, createUniqueId, mergeProps as mergeProps$1, splitProps } from "solid-js";
6
+ import { Portal } from "solid-js/web";
5
7
  import { useEnvironmentContext } from "@ark-ui/solid/environment";
6
8
  import { useFilter, useLocaleContext } from "@ark-ui/solid/locale";
7
9
  import * as cascade from "@zag-js/cascade-select";
8
10
  import { normalizeProps, useMachine } from "@zag-js/solid";
9
11
  //#region src/components/cascade-select/index.tsx
10
- var _tmpl$ = /*#__PURE__*/ template(`<svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round aria-hidden=true><path d="m6 9 6 6 6-6">`);
11
- var _tmpl$2 = /*#__PURE__*/ template(`<svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round aria-hidden=true><path d="m9 18 6-6-6-6">`);
12
- var _tmpl$3 = /*#__PURE__*/ template(`<svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=3 stroke-linecap=round stroke-linejoin=round aria-hidden=true><path d="m5 12.5 5 5L19 7">`);
13
- var _tmpl$4 = /*#__PURE__*/ template(`<ul>`);
14
- var _tmpl$5 = /*#__PURE__*/ template(`<span data-part=branch-indicator aria-hidden=true>`);
15
- var _tmpl$6 = /*#__PURE__*/ template(`<li><span></span><span>`);
16
- var _tmpl$7 = /*#__PURE__*/ template(`<div data-part=search>`);
17
- var _tmpl$8 = /*#__PURE__*/ template(`<div><div><div data-part=corridor>`);
18
- var _tmpl$9 = /*#__PURE__*/ template(`<div><div><button><span></span><span>`);
19
- var _tmpl$0 = /*#__PURE__*/ template(`<p data-part=empty>Nothing matches`);
20
- var _tmpl$1 = /*#__PURE__*/ template(`<button type=button data-part=match>`);
12
+ var _tmpl$ = /* @__PURE__ */ template(`<svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round aria-hidden=true><path d="m6 9 6 6 6-6">`);
13
+ var _tmpl$2 = /* @__PURE__ */ template(`<svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round aria-hidden=true><path d="m9 18 6-6-6-6">`);
14
+ var _tmpl$3 = /* @__PURE__ */ template(`<svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=3 stroke-linecap=round stroke-linejoin=round aria-hidden=true><path d="m5 12.5 5 5L19 7">`);
15
+ var _tmpl$4 = /* @__PURE__ */ template(`<ul>`);
16
+ var _tmpl$5 = /* @__PURE__ */ template(`<span data-scope=cascade-select data-part=branch-indicator aria-hidden=true>`);
17
+ var _tmpl$6 = /* @__PURE__ */ template(`<li><span></span><span>`);
18
+ var _tmpl$7 = /* @__PURE__ */ template(`<div data-scope=cascade-select data-part=search>`);
19
+ var _tmpl$8 = /* @__PURE__ */ template(`<div><div><div data-scope=cascade-select data-part=corridor>`);
20
+ var _tmpl$9 = /* @__PURE__ */ template(`<div><div><button><span></span><span>`);
21
+ var _tmpl$10 = /* @__PURE__ */ template(`<p data-scope=cascade-select data-part=empty>Nothing matches`);
22
+ var _tmpl$11 = /* @__PURE__ */ template(`<button type=button data-scope=cascade-select data-part=match>`);
21
23
  function chevronDown() {
22
24
  return _tmpl$();
23
25
  }
@@ -37,6 +39,7 @@ function checkGlyph() {
37
39
  * runs — each hit still reads as its full route.
38
40
  */
39
41
  function CascadeSelect(props) {
42
+ const messages = useComponentMessages();
40
43
  injectComponentStyle("cascade-select");
41
44
  const [own, rest] = splitProps(props, [
42
45
  "value",
@@ -140,52 +143,73 @@ function CascadeSelect(props) {
140
143
  };
141
144
  const nodeState = () => api().getItemState(nodeProps);
142
145
  const children = collection().getNodeChildren(node);
143
- const list = (() => {
144
- var _el$4 = _tmpl$4();
145
- spread(_el$4, mergeProps(() => mergeProps$1(() => api().getListProps(nodeProps))), false, true);
146
- insert(_el$4, createComponent(For, {
147
- each: children,
148
- children: (item, index) => {
149
- const itemValue = collection().getNodeValue(item);
150
- const itemProps = {
151
- item,
152
- indexPath: [...indexPath, index()],
153
- value: [...valuePath, itemValue]
154
- };
155
- const itemState = () => api().getItemState(itemProps);
156
- return (() => {
157
- var _el$5 = _tmpl$6(), _el$6 = _el$5.firstChild, _el$8 = _el$6.nextSibling;
158
- spread(_el$5, mergeProps(() => mergeProps$1(() => api().getItemProps(itemProps))), false, true);
159
- spread(_el$6, mergeProps(() => mergeProps$1(() => api().getItemTextProps(itemProps))), false, true);
160
- insert(_el$6, () => item.label);
161
- insert(_el$5, createComponent(Show, {
162
- get when() {
163
- return itemState().hasChildren;
164
- },
165
- get children() {
166
- var _el$7 = _tmpl$5();
167
- insert(_el$7, chevronRight);
168
- return _el$7;
169
- }
170
- }), _el$8);
171
- spread(_el$8, mergeProps(() => mergeProps$1(() => api().getItemIndicatorProps(itemProps))), false, true);
172
- insert(_el$8, checkGlyph);
173
- return _el$5;
174
- })();
175
- }
176
- }));
177
- return _el$4;
178
- })();
146
+ var _el$4 = _tmpl$4();
147
+ spread(_el$4, () => {
148
+ return mergeProps$1(() => api().getListProps(nodeProps));
149
+ }, true);
150
+ insert(_el$4, createComponent(For, {
151
+ each: children,
152
+ children: (item, index) => {
153
+ const itemValue = collection().getNodeValue(item);
154
+ const itemProps = {
155
+ item,
156
+ indexPath: [...indexPath, index()],
157
+ value: [...valuePath, itemValue]
158
+ };
159
+ const itemState = () => api().getItemState(itemProps);
160
+ var _el$5 = _tmpl$6();
161
+ var _el$6 = _el$5.firstChild;
162
+ var _el$8 = _el$6.nextSibling;
163
+ spread(_el$5, () => {
164
+ return mergeProps$1(() => api().getItemProps(itemProps));
165
+ }, true);
166
+ spread(_el$6, () => {
167
+ return mergeProps$1(() => api().getItemTextProps(itemProps));
168
+ }, true);
169
+ insert(_el$6, () => {
170
+ return item.label;
171
+ });
172
+ insert(_el$5, createComponent(Show, {
173
+ get when() {
174
+ return itemState().hasChildren;
175
+ },
176
+ get children() {
177
+ var _el$7 = _tmpl$5();
178
+ insert(_el$7, chevronRight);
179
+ return _el$7;
180
+ }
181
+ }), _el$8);
182
+ spread(_el$8, () => {
183
+ return mergeProps$1(() => api().getItemIndicatorProps(itemProps));
184
+ }, true);
185
+ insert(_el$8, checkGlyph);
186
+ return _el$5;
187
+ }
188
+ }));
189
+ const list = _el$4;
179
190
  const next = nodeState().highlightedChild;
180
191
  return [list, next != null && collection().isBranchNode(next) ? renderColumn(next, [...indexPath, nodeState().highlightedIndex], [...valuePath, collection().getNodeValue(next)]) : null];
181
192
  }
182
- return (() => {
183
- var _el$9 = _tmpl$9(), _el$0 = _el$9.firstChild, _el$1 = _el$0.firstChild, _el$10 = _el$1.firstChild, _el$11 = _el$10.nextSibling;
184
- spread(_el$9, mergeProps(rest, () => mergeProps$1(() => api().getRootProps()), { get ["data-size"]() {
193
+ var _el$9 = _tmpl$9();
194
+ var _el$10 = _el$9.firstChild;
195
+ var _el$11 = _el$10.firstChild;
196
+ var _el$12 = _el$11.firstChild;
197
+ var _el$13 = _el$12.nextSibling;
198
+ spread(_el$9, [
199
+ rest,
200
+ () => {
201
+ return mergeProps$1(() => api().getRootProps());
202
+ },
203
+ { get "data-size"() {
185
204
  return own.size ?? "md";
186
- } }), false, true);
187
- spread(_el$0, mergeProps(() => mergeProps$1(() => api().getControlProps())), false, true);
188
- spread(_el$1, mergeProps(() => mergeProps$1(() => api().getTriggerProps(), {
205
+ } }
206
+ ], true);
207
+ spread(_el$10, () => {
208
+ return mergeProps$1(() => api().getControlProps());
209
+ }, true);
210
+ spread(_el$11, () => {
211
+ return mergeProps$1(() => api().getTriggerProps(), {
212
+ "aria-labelledby": id + ":value-text",
189
213
  get disabled() {
190
214
  return own.disabled || void 0;
191
215
  },
@@ -193,72 +217,94 @@ function CascadeSelect(props) {
193
217
  api().getTriggerProps().onclick?.(event);
194
218
  setQuery("");
195
219
  }
196
- })), false, true);
197
- spread(_el$10, mergeProps(() => mergeProps$1(() => api().getValueTextProps())), false, true);
198
- insert(_el$10, () => display() ?? own.placeholder ?? "Select…");
199
- spread(_el$11, mergeProps(() => mergeProps$1(() => api().getIndicatorProps())), false, true);
200
- insert(_el$11, chevronDown);
201
- insert(_el$9, createComponent(Portal, { get children() {
202
- var _el$12 = _tmpl$8(), _el$13 = _el$12.firstChild, _el$15 = _el$13.firstChild;
203
- spread(_el$12, mergeProps(() => mergeProps$1(() => api().getPositionerProps())), false, true);
204
- spread(_el$13, mergeProps(() => mergeProps$1(() => api().getContentProps()), { get ["data-size"]() {
205
- return own.size ?? "md";
206
- } }), false, true);
207
- insert(_el$13, createComponent(Show, {
208
- get when() {
209
- return own.filterable;
210
- },
211
- get children() {
212
- var _el$14 = _tmpl$7();
213
- insert(_el$14, createComponent(Input, {
214
- size: "sm",
215
- get value() {
216
- return query();
217
- },
218
- onValueChange: setQuery,
219
- placeholder: "Filter…",
220
- "aria-label": "Filter options"
221
- }));
222
- return _el$14;
223
- }
224
- }), _el$15);
225
- insert(_el$15, createComponent(Show, {
226
- get when() {
227
- return !filtering();
228
- },
229
- get fallback() {
230
- return createComponent(Show, {
231
- get when() {
232
- return matchPaths().length > 0;
233
- },
234
- get fallback() {
235
- return _tmpl$0();
236
- },
237
- get children() {
238
- return createComponent(For, {
239
- get each() {
240
- return matchPaths();
241
- },
242
- children: (hit) => (() => {
243
- var _el$17 = _tmpl$1();
244
- _el$17.$$click = () => pickMatch(hit.path);
245
- insert(_el$17, () => hit.labels.join(" / "));
246
- effect(() => setAttribute(_el$17, "data-selected", isSelected(hit.path) || void 0));
247
- return _el$17;
248
- })()
249
- });
250
- }
251
- });
252
- },
253
- get children() {
254
- return renderColumn(collection().rootNode, [], []);
255
- }
256
- }));
257
- effect(() => setAttribute(_el$15, "data-flow", filtering() ? "flat" : "columns"));
258
- return _el$12;
259
- } }), null);
260
- return _el$9;
261
- })();
220
+ });
221
+ }, true);
222
+ spread(_el$12, () => {
223
+ return mergeProps$1(() => api().getValueTextProps(), { id: id + ":value-text" });
224
+ }, true);
225
+ insert(_el$12, () => {
226
+ return display() ?? own.placeholder ?? "Select…";
227
+ });
228
+ spread(_el$13, () => {
229
+ return mergeProps$1(() => api().getIndicatorProps());
230
+ }, true);
231
+ insert(_el$13, chevronDown);
232
+ insert(_el$9, createComponent(Portal, { get children() {
233
+ var _el$14 = _tmpl$8();
234
+ var _el$15 = _el$14.firstChild;
235
+ var _el$17 = _el$15.firstChild;
236
+ spread(_el$14, () => {
237
+ return mergeProps$1(() => api().getPositionerProps());
238
+ }, true);
239
+ spread(_el$15, [() => {
240
+ return mergeProps$1(() => api().getContentProps());
241
+ }, { get "data-size"() {
242
+ return own.size ?? "md";
243
+ } }], true);
244
+ insert(_el$15, createComponent(Show, {
245
+ get when() {
246
+ return own.filterable;
247
+ },
248
+ get children() {
249
+ var _el$16 = _tmpl$7();
250
+ insert(_el$16, createComponent(Input, {
251
+ size: "sm",
252
+ get value() {
253
+ return query();
254
+ },
255
+ onValueChange: setQuery,
256
+ get placeholder() {
257
+ return messages().select.filter;
258
+ },
259
+ get "aria-label"() {
260
+ return messages().select.filter;
261
+ }
262
+ }));
263
+ return _el$16;
264
+ }
265
+ }), _el$17);
266
+ insert(_el$17, createComponent(Show, {
267
+ get when() {
268
+ return !filtering();
269
+ },
270
+ get fallback() {
271
+ return createComponent(Show, {
272
+ get when() {
273
+ return matchPaths().length > 0;
274
+ },
275
+ get fallback() {
276
+ return _tmpl$10();
277
+ },
278
+ get children() {
279
+ return createComponent(For, {
280
+ get each() {
281
+ return matchPaths();
282
+ },
283
+ children: (hit) => (() => {
284
+ var _el$19 = _tmpl$11();
285
+ _el$19._$$click = () => pickMatch(hit.path);
286
+ insert(_el$19, () => {
287
+ return hit.labels.join(" / ");
288
+ });
289
+ effect(() => isSelected(hit.path) || void 0, (_v$) => {
290
+ setAttribute(_el$19, "data-selected", _v$);
291
+ });
292
+ return _el$19;
293
+ })()
294
+ });
295
+ }
296
+ });
297
+ },
298
+ get children() {
299
+ return renderColumn(collection().rootNode, [], []);
300
+ }
301
+ }));
302
+ effect(() => filtering() ? "flat" : "columns", (_v$) => {
303
+ setAttribute(_el$17, "data-flow", _v$);
304
+ });
305
+ return _el$14;
306
+ } }), null);
307
+ return _el$9;
262
308
  }
263
309
  delegateEvents(["click"]);
264
310
  //#endregion