@bysages/solid 0.4.0 → 0.4.2

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 (194) hide show
  1. package/dist/{ai-response-D2uINBIi.mjs → ai-response-CJ-uEAgj.mjs} +1 -1
  2. package/dist/components/accordion/index.mjs +1 -1
  3. package/dist/components/affix/index.mjs +3 -3
  4. package/dist/components/ai/index.d.mts +1 -1
  5. package/dist/components/ai/index.mjs +2 -2
  6. package/dist/components/ai-action/index.mjs +1 -1
  7. package/dist/components/ai-attachments/index.mjs +1 -1
  8. package/dist/components/ai-message/index.mjs +1 -1
  9. package/dist/components/ai-prompt-input/index.mjs +38 -36
  10. package/dist/components/ai-reasoning/index.mjs +1 -1
  11. package/dist/components/ai-response/index.mjs +1 -1
  12. package/dist/components/ai-source/index.mjs +1 -1
  13. package/dist/components/ai-suggestion/index.mjs +1 -1
  14. package/dist/components/ai-tool/index.mjs +1 -1
  15. package/dist/components/alert/index.mjs +1 -1
  16. package/dist/components/angle-slider/index.d.mts +15 -1
  17. package/dist/components/angle-slider/index.mjs +58 -3
  18. package/dist/components/aspect-ratio/index.mjs +1 -1
  19. package/dist/components/autocomplete/index.mjs +9 -3
  20. package/dist/components/avatar/index.mjs +1 -1
  21. package/dist/components/avatar-group/index.mjs +1 -1
  22. package/dist/components/back-top/index.mjs +1 -1
  23. package/dist/components/badge/index.mjs +1 -1
  24. package/dist/components/banner/index.mjs +1 -1
  25. package/dist/components/bento/index.mjs +1 -1
  26. package/dist/components/block-ui/index.mjs +1 -1
  27. package/dist/components/breadcrumb/index.mjs +1 -1
  28. package/dist/components/browser/index.mjs +1 -1
  29. package/dist/components/button/index.mjs +1 -1
  30. package/dist/components/button-group/index.mjs +1 -1
  31. package/dist/components/calendar/index.d.mts +19 -7
  32. package/dist/components/calendar/index.mjs +213 -139
  33. package/dist/components/card/index.mjs +1 -1
  34. package/dist/components/carousel/index.d.mts +15 -1
  35. package/dist/components/carousel/index.mjs +69 -5
  36. package/dist/components/cascade-select/index.mjs +2 -2
  37. package/dist/components/checkbox/index.d.mts +16 -1
  38. package/dist/components/checkbox/index.mjs +54 -3
  39. package/dist/components/checkbox-group/index.d.mts +10 -3
  40. package/dist/components/checkbox-group/index.mjs +3 -3
  41. package/dist/components/chip/index.d.mts +1 -1
  42. package/dist/components/chip/index.mjs +1 -1
  43. package/dist/components/clipboard/index.d.mts +14 -1
  44. package/dist/components/clipboard/index.mjs +58 -3
  45. package/dist/components/collapsible/index.mjs +1 -1
  46. package/dist/components/color-picker/index.mjs +1 -1
  47. package/dist/components/combobox/index.mjs +1 -1
  48. package/dist/components/command/index.mjs +1 -1
  49. package/dist/components/comment/index.mjs +1 -1
  50. package/dist/components/container/index.mjs +1 -1
  51. package/dist/components/data-view/index.mjs +1 -1
  52. package/dist/components/date-input/index.d.mts +16 -2
  53. package/dist/components/date-input/index.mjs +52 -3
  54. package/dist/components/date-picker/index.d.mts +27 -2
  55. package/dist/components/date-picker/index.mjs +153 -4
  56. package/dist/components/deferred-content/index.mjs +1 -1
  57. package/dist/components/descriptions/index.mjs +1 -1
  58. package/dist/components/dialog/index.mjs +1 -1
  59. package/dist/components/dock/index.mjs +1 -1
  60. package/dist/components/drawer/index.mjs +1 -1
  61. package/dist/components/dynamic-input/index.mjs +2 -2
  62. package/dist/components/editable/index.d.mts +17 -1
  63. package/dist/components/editable/index.mjs +81 -3
  64. package/dist/components/ellipsis/index.mjs +1 -1
  65. package/dist/components/empty/index.mjs +1 -1
  66. package/dist/components/field/index.d.mts +16 -1
  67. package/dist/components/field/index.mjs +53 -5
  68. package/dist/components/fieldset/index.d.mts +15 -3
  69. package/dist/components/fieldset/index.mjs +47 -5
  70. package/dist/components/file-upload/index.d.mts +21 -1
  71. package/dist/components/file-upload/index.mjs +66 -3
  72. package/dist/components/float-button/index.mjs +1 -1
  73. package/dist/components/floating-panel/index.d.mts +15 -3
  74. package/dist/components/floating-panel/index.mjs +113 -5
  75. package/dist/components/form/index.d.mts +44 -2
  76. package/dist/components/form/index.mjs +1 -1
  77. package/dist/components/grid/index.mjs +1 -1
  78. package/dist/components/highlight/index.mjs +1 -1
  79. package/dist/components/hover-card/index.mjs +1 -1
  80. package/dist/components/icon/index.mjs +1 -1
  81. package/dist/components/image/index.mjs +1 -1
  82. package/dist/components/image-cropper/index.d.mts +8 -1
  83. package/dist/components/image-cropper/index.mjs +43 -5
  84. package/dist/components/image-viewer/index.mjs +1 -1
  85. package/dist/components/input/index.mjs +1 -1
  86. package/dist/components/input-group/index.mjs +1 -1
  87. package/dist/components/json-tree-view/index.d.mts +11 -2
  88. package/dist/components/json-tree-view/index.mjs +17 -2
  89. package/dist/components/kbd/index.mjs +1 -1
  90. package/dist/components/layout/index.mjs +1 -1
  91. package/dist/components/link/index.mjs +1 -1
  92. package/dist/components/list/index.mjs +1 -1
  93. package/dist/components/listbox/index.d.mts +21 -1
  94. package/dist/components/listbox/index.mjs +59 -4
  95. package/dist/components/marquee/index.d.mts +12 -1
  96. package/dist/components/marquee/index.mjs +46 -5
  97. package/dist/components/masonry/index.mjs +1 -1
  98. package/dist/components/media-player/index.mjs +1 -1
  99. package/dist/components/mentions/index.mjs +1 -1
  100. package/dist/components/menu/index.mjs +1 -1
  101. package/dist/components/menubar/index.mjs +1 -1
  102. package/dist/components/meter/index.mjs +1 -1
  103. package/dist/components/navigation-menu/index.d.mts +17 -1
  104. package/dist/components/navigation-menu/index.mjs +66 -6
  105. package/dist/components/number-input/index.d.mts +20 -1
  106. package/dist/components/number-input/index.mjs +72 -3
  107. package/dist/components/order-list/index.mjs +1 -1
  108. package/dist/components/page-header/index.mjs +1 -1
  109. package/dist/components/pagination/index.d.mts +22 -2
  110. package/dist/components/pagination/index.mjs +105 -6
  111. package/dist/components/password-input/index.d.mts +18 -1
  112. package/dist/components/password-input/index.mjs +57 -3
  113. package/dist/components/pin-input/index.d.mts +18 -1
  114. package/dist/components/pin-input/index.mjs +55 -3
  115. package/dist/components/popconfirm/index.mjs +1 -1
  116. package/dist/components/popover/index.mjs +1 -1
  117. package/dist/components/progress/index.d.mts +19 -1
  118. package/dist/components/progress/index.mjs +106 -7
  119. package/dist/components/progress-group/index.mjs +1 -1
  120. package/dist/components/qr-code/index.d.mts +8 -1
  121. package/dist/components/qr-code/index.mjs +22 -5
  122. package/dist/components/radio-group/index.d.mts +23 -1
  123. package/dist/components/radio-group/index.mjs +66 -3
  124. package/dist/components/rating-group/index.d.mts +15 -1
  125. package/dist/components/rating-group/index.mjs +52 -3
  126. package/dist/components/result/index.mjs +1 -1
  127. package/dist/components/scroll-area/index.d.mts +11 -3
  128. package/dist/components/scroll-area/index.mjs +37 -5
  129. package/dist/components/segment-group/index.d.mts +27 -4
  130. package/dist/components/segment-group/index.mjs +66 -7
  131. package/dist/components/select/index.mjs +1 -1
  132. package/dist/components/separator/index.mjs +1 -1
  133. package/dist/components/signature-pad/index.d.mts +16 -1
  134. package/dist/components/signature-pad/index.mjs +64 -5
  135. package/dist/components/skeleton/index.mjs +1 -1
  136. package/dist/components/slider/index.d.mts +20 -1
  137. package/dist/components/slider/index.mjs +67 -3
  138. package/dist/components/spinner/index.mjs +1 -1
  139. package/dist/components/split-button/index.mjs +1 -1
  140. package/dist/components/splitter/index.d.mts +15 -1
  141. package/dist/components/splitter/index.mjs +58 -5
  142. package/dist/components/spotlight/index.mjs +1 -1
  143. package/dist/components/stack/index.mjs +1 -1
  144. package/dist/components/stat/index.mjs +1 -1
  145. package/dist/components/steps/index.d.mts +5 -1
  146. package/dist/components/steps/index.mjs +10 -3
  147. package/dist/components/swap/index.d.mts +11 -3
  148. package/dist/components/swap/index.mjs +35 -5
  149. package/dist/components/switch/index.d.mts +16 -1
  150. package/dist/components/switch/index.mjs +48 -3
  151. package/dist/components/table/index.d.mts +2 -0
  152. package/dist/components/table/index.mjs +36 -14
  153. package/dist/components/tabs/index.mjs +1 -1
  154. package/dist/components/tag/index.d.mts +29 -0
  155. package/dist/components/tag/index.mjs +108 -0
  156. package/dist/components/tags-input/index.d.mts +18 -1
  157. package/dist/components/tags-input/index.mjs +83 -3
  158. package/dist/components/terminal/index.mjs +1 -1
  159. package/dist/components/textarea/index.mjs +1 -1
  160. package/dist/components/timeline/index.mjs +1 -1
  161. package/dist/components/timer/index.d.mts +12 -1
  162. package/dist/components/timer/index.mjs +57 -5
  163. package/dist/components/toast/index.d.mts +10 -5
  164. package/dist/components/toast/index.mjs +38 -6
  165. package/dist/components/toc/index.d.mts +2 -11
  166. package/dist/components/toc/index.mjs +1 -1
  167. package/dist/components/toggle/index.d.mts +8 -1
  168. package/dist/components/toggle/index.mjs +27 -5
  169. package/dist/components/toggle-group/index.d.mts +23 -1
  170. package/dist/components/toggle-group/index.mjs +58 -4
  171. package/dist/components/toolbar/index.mjs +1 -1
  172. package/dist/components/tooltip/index.mjs +1 -1
  173. package/dist/components/tour/index.mjs +1 -1
  174. package/dist/components/transfer/index.mjs +2 -2
  175. package/dist/components/tree-select/index.mjs +2 -2
  176. package/dist/components/tree-view/index.d.mts +32 -2
  177. package/dist/components/tree-view/index.mjs +94 -5
  178. package/dist/components/typography/index.mjs +1 -1
  179. package/dist/components/user/index.mjs +1 -1
  180. package/dist/components/virtual-list/index.mjs +1 -1
  181. package/dist/components/watermark/index.mjs +1 -1
  182. package/dist/{image-viewer-B9A5lXsk.mjs → image-viewer-19s75Hz_.mjs} +1 -1
  183. package/dist/index-BU5U5w04.d.mts +35 -0
  184. package/dist/{index-nFXK_8hJ.d.mts → index-DVc1L_zt.d.mts} +138 -89
  185. package/dist/index.d.mts +44 -43
  186. package/dist/index.mjs +9 -8
  187. package/dist/{input-CPAJdwDb.mjs → input-BL3N3L8g.mjs} +1 -1
  188. package/dist/{media-player-BC8D_d29.mjs → media-player-yF7KVUxM.mjs} +2 -2
  189. package/dist/{mentions-CeG5u8Qm.mjs → mentions-DKUG7eHt.mjs} +1 -1
  190. package/dist/{select-7YjMSBGx.mjs → select-DI7pFspF.mjs} +1 -1
  191. package/dist/toc-DRHr8_eD.mjs +88 -0
  192. package/package.json +10 -82
  193. package/dist/index-B1-quIrl.d.mts +0 -1815
  194. package/dist/toc-DYKaKQ_X.mjs +0 -31
@@ -1,8 +1,8 @@
1
1
  import { t as defineFamily } from "../../family-Cmd8HEyK.mjs";
2
2
  import { t as useElementId } from "../../id-2ygNzPHF.mjs";
3
3
  import { n as withElementProps, t as isElement } from "../../element-dGIhOTJ6.mjs";
4
- import { injectComponentStyle } from "@bysages/core";
5
4
  import { createComponent, insert, memo, mergeProps, template } from "@solidjs/web";
5
+ import { injectComponentStyle } from "@bysages/core/styling";
6
6
  import { Show, createComponent as createComponent$1, mergeProps as mergeProps$1 } from "solid-js";
7
7
  import { HoverCard as HoverCard$1 } from "@ark-ui/solid/hover-card";
8
8
  //#region src/components/hover-card/index.tsx
@@ -1,6 +1,6 @@
1
1
  import { n as withSelfRoot } from "../../family-Cmd8HEyK.mjs";
2
- import { injectComponentStyle } from "@bysages/core";
3
2
  import { effect, insert, setAttribute, spread, template } from "@solidjs/web";
3
+ import { injectComponentStyle } from "@bysages/core/styling";
4
4
  import { splitProps } from "solid-js";
5
5
  import { getIcon } from "@bysages/core/icons";
6
6
  //#region src/components/icon/index.tsx
@@ -1,7 +1,7 @@
1
1
  import { n as withSelfRoot } from "../../family-Cmd8HEyK.mjs";
2
2
  import { r as iconNode } from "../../icon-DTqmJCd5.mjs";
3
- import { injectComponentStyle } from "@bysages/core";
4
3
  import { createComponent, effect, insert, ref, setAttribute, spread, template } from "@solidjs/web";
4
+ import { injectComponentStyle } from "@bysages/core/styling";
5
5
  import { Show, createEffect, createSignal, on, splitProps } from "solid-js";
6
6
  //#region src/components/image/index.tsx
7
7
  var _tmpl$ = /* @__PURE__ */ template(`<div data-scope=image data-part=fallback>`);
@@ -6,7 +6,14 @@ import { ImageCropper as ImageCropper$1 } from "@ark-ui/solid/image-cropper";
6
6
  * The API is Ark's own — Root, Viewport, Image, Selection, Handle, Grid,
7
7
  * Context. */
8
8
  declare function ImageCropperRoot(props: ComponentProps<typeof ImageCropper$1.Root>): import("solid-js").JSX.Element;
9
- export declare const ImageCropper: typeof ImageCropperRoot & Omit<typeof ImageCropper$1, "Root"> & {
9
+ export interface ImageCropperFacadeProps {
10
+ src: string;
11
+ alt?: string;
12
+ }
13
+ /** The complete cropper behind one photograph: the viewport, selection
14
+ * frame, corner handles, and ruling grid arrive ready to use. */
15
+ declare function ImageCropperFacade(props: ImageCropperFacadeProps): import("solid-js").JSX.Element;
16
+ export declare const ImageCropper: typeof ImageCropperFacade & Omit<typeof ImageCropper$1, "Root"> & {
10
17
  Root: typeof ImageCropperRoot;
11
18
  };
12
19
  //#endregion
@@ -1,20 +1,58 @@
1
1
  import { t as defineFamily } from "../../family-Cmd8HEyK.mjs";
2
2
  import { t as useElementId } from "../../id-2ygNzPHF.mjs";
3
- import { injectComponentStyle } from "@bysages/core";
4
- import { createComponent, mergeProps } from "solid-js";
3
+ import { createComponent, template } from "@solidjs/web";
4
+ import { injectComponentStyle } from "@bysages/core/styling";
5
+ import { For, createComponent as createComponent$1, mergeProps as mergeProps$1 } from "solid-js";
5
6
  import { ImageCropper as ImageCropper$1 } from "@ark-ui/solid/image-cropper";
6
- //#region src/components/image-cropper/index.ts
7
+ //#region src/components/image-cropper/index.tsx
8
+ var _tmpl$ = /* @__PURE__ */ template(`<div>`);
7
9
  /** Ark's ImageCropper, dressed in the paper-and-ink system: a rounded vessel
8
10
  * holding the photograph, one lit selection window framed by light hairlines.
9
11
  * The API is Ark's own — Root, Viewport, Image, Selection, Handle, Grid,
10
12
  * Context. */
11
13
  function ImageCropperRoot(props) {
12
14
  const id = useElementId("image-cropper", () => props.id);
13
- return createComponent(ImageCropper$1.Root, mergeProps(props, { get id() {
15
+ return createComponent$1(ImageCropper$1.Root, mergeProps$1(props, { get id() {
14
16
  return id();
15
17
  } }));
16
18
  }
17
- const ImageCropper = defineFamily(ImageCropperRoot, {
19
+ /** The complete cropper behind one photograph: the viewport, selection
20
+ * frame, corner handles, and ruling grid arrive ready to use. */
21
+ function ImageCropperFacade(props) {
22
+ injectComponentStyle("image-cropper");
23
+ return createComponent(ImageCropperRoot, { get children() {
24
+ return createComponent(ImageCropper$1.Viewport, { get children() {
25
+ return [createComponent(ImageCropper$1.Image, {
26
+ get src() {
27
+ return props.src;
28
+ },
29
+ get alt() {
30
+ return props.alt;
31
+ }
32
+ }), createComponent(ImageCropper$1.Selection, { get children() {
33
+ return [
34
+ createComponent(For, {
35
+ each: [
36
+ "nw",
37
+ "ne",
38
+ "se",
39
+ "sw"
40
+ ],
41
+ children: (position) => createComponent(ImageCropper$1.Handle, {
42
+ position,
43
+ get children() {
44
+ return _tmpl$();
45
+ }
46
+ })
47
+ }),
48
+ createComponent(ImageCropper$1.Grid, { axis: "horizontal" }),
49
+ createComponent(ImageCropper$1.Grid, { axis: "vertical" })
50
+ ];
51
+ } })];
52
+ } });
53
+ } });
54
+ }
55
+ const ImageCropper = defineFamily(ImageCropperFacade, {
18
56
  ...ImageCropper$1,
19
57
  Root: ImageCropperRoot
20
58
  });
@@ -1,4 +1,4 @@
1
1
  import "../button-group/index.mjs";
2
2
  import "../dialog/index.mjs";
3
- import { t as ImageViewer } from "../../image-viewer-B9A5lXsk.mjs";
3
+ import { t as ImageViewer } from "../../image-viewer-19s75Hz_.mjs";
4
4
  export { ImageViewer };
@@ -1,2 +1,2 @@
1
- import { t as Input } from "../../input-CPAJdwDb.mjs";
1
+ import { t as Input } from "../../input-BL3N3L8g.mjs";
2
2
  export { Input };
@@ -1,5 +1,5 @@
1
- import { injectComponentStyle } from "@bysages/core";
2
1
  import { spread, template } from "@solidjs/web";
2
+ import { injectComponentStyle } from "@bysages/core/styling";
3
3
  //#region src/components/input-group/index.tsx
4
4
  var _tmpl$ = /* @__PURE__ */ template(`<div>`);
5
5
  /**
@@ -1,11 +1,20 @@
1
1
  import { ComponentProps } from "solid-js";
2
- import { JsonTreeView as JsonTreeView$1 } from "@ark-ui/solid/json-tree-view";
2
+ import { JsonTreeView as JsonTreeView$1, JsonTreeViewTreeProps } from "@ark-ui/solid/json-tree-view";
3
3
  //#region src/components/json-tree-view/index.d.ts
4
4
  /** Ark's JsonTreeView, dressed in the paper-and-ink system: the tree-view
5
5
  * recipes re-scoped, with value nodes reading as tabular data. The API is
6
6
  * Ark's own — Root, Tree, plus createJsonTreeCollection. */
7
7
  declare function JsonTreeViewRoot(props: ComponentProps<typeof JsonTreeView$1.Root>): import("solid-js").JSX.Element;
8
- export declare const JsonTreeView: typeof JsonTreeViewRoot & Omit<typeof JsonTreeView$1, "Root"> & {
8
+ declare function JsonTreeViewTree(props: JsonTreeViewTreeProps): import("solid-js").JSX.Element;
9
+ export interface JsonTreeViewFacadeProps {
10
+ data: unknown;
11
+ defaultExpandedDepth?: number;
12
+ }
13
+ /** The one-tag path for a read-only tree: `data` and the initial depth
14
+ * are all a quiet ledger needs; deeper control stays on the anatomy. */
15
+ declare function JsonTreeViewFacade(props: JsonTreeViewFacadeProps): import("solid-js").JSX.Element;
16
+ export declare const JsonTreeView: typeof JsonTreeViewFacade & Omit<typeof JsonTreeView$1, "Root"> & {
9
17
  Root: typeof JsonTreeViewRoot;
18
+ Tree: typeof JsonTreeViewTree;
10
19
  };
11
20
  //#endregion
@@ -1,8 +1,8 @@
1
1
  import { t as defineFamily } from "../../family-Cmd8HEyK.mjs";
2
2
  import { r as iconNode } from "../../icon-DTqmJCd5.mjs";
3
3
  import { t as useElementId } from "../../id-2ygNzPHF.mjs";
4
- import { injectComponentStyle } from "@bysages/core";
5
4
  import { createComponent, mergeProps } from "@solidjs/web";
5
+ import { injectComponentStyle } from "@bysages/core/styling";
6
6
  import { createComponent as createComponent$1, mergeProps as mergeProps$1 } from "solid-js";
7
7
  import { JsonTreeView as JsonTreeView$1 } from "@ark-ui/solid/json-tree-view";
8
8
  //#region src/components/json-tree-view/index.tsx
@@ -20,7 +20,22 @@ function JsonTreeViewTree(props) {
20
20
  return props.arrow ?? iconNode("chevron-right");
21
21
  } }));
22
22
  }
23
- const JsonTreeView = defineFamily(JsonTreeViewRoot, {
23
+ /** The one-tag path for a read-only tree: `data` and the initial depth
24
+ * are all a quiet ledger needs; deeper control stays on the anatomy. */
25
+ function JsonTreeViewFacade(props) {
26
+ return createComponent(JsonTreeViewRoot, {
27
+ get data() {
28
+ return props.data;
29
+ },
30
+ get defaultExpandedDepth() {
31
+ return props.defaultExpandedDepth ?? 1;
32
+ },
33
+ get children() {
34
+ return createComponent(JsonTreeViewTree, {});
35
+ }
36
+ });
37
+ }
38
+ const JsonTreeView = defineFamily(JsonTreeViewFacade, {
24
39
  ...JsonTreeView$1,
25
40
  Root: JsonTreeViewRoot,
26
41
  Tree: JsonTreeViewTree
@@ -1,6 +1,6 @@
1
1
  import { n as withSelfRoot } from "../../family-Cmd8HEyK.mjs";
2
- import { injectComponentStyle } from "@bysages/core";
3
2
  import { spread, template } from "@solidjs/web";
3
+ import { injectComponentStyle } from "@bysages/core/styling";
4
4
  //#region src/components/kbd/index.tsx
5
5
  var _tmpl$ = /* @__PURE__ */ template(`<kbd>`);
6
6
  const Kbd = withSelfRoot(function Kbd(props) {
@@ -1,6 +1,6 @@
1
1
  import { n as useComponentMessages } from "../../use-component-messages-C4SCVYjD.mjs";
2
- import { injectComponentStyle } from "@bysages/core";
3
2
  import { createComponent, delegateEvents, effect, insert, memo, ref, setAttribute, spread, template } from "@solidjs/web";
3
+ import { injectComponentStyle } from "@bysages/core/styling";
4
4
  import { createContext, createEffect, createSignal, splitProps, useContext } from "solid-js";
5
5
  //#region src/components/layout/index.tsx
6
6
  var _tmpl$ = /* @__PURE__ */ template(`<div>`);
@@ -1,6 +1,6 @@
1
1
  import { n as withSelfRoot } from "../../family-Cmd8HEyK.mjs";
2
- import { injectComponentStyle } from "@bysages/core";
3
2
  import { claimElement, spread, template } from "@solidjs/web";
3
+ import { injectComponentStyle } from "@bysages/core/styling";
4
4
  import { splitProps } from "solid-js";
5
5
  //#region src/components/link/index.tsx
6
6
  var _tmpl$ = /* @__PURE__ */ template(`<a>`);
@@ -1,5 +1,5 @@
1
- import { injectComponentStyle } from "@bysages/core";
2
1
  import { createComponent, insert, mergeProps, spread, template } from "@solidjs/web";
2
+ import { injectComponentStyle } from "@bysages/core/styling";
3
3
  import { Show, splitProps } from "solid-js";
4
4
  //#region src/components/list/index.tsx
5
5
  var _tmpl$ = /* @__PURE__ */ template(`<li>`);
@@ -11,7 +11,27 @@ type ListboxOwnProps = {
11
11
  size?: "sm" | "md" | "lg";
12
12
  };
13
13
  declare function ListboxRoot<T extends CollectionItem>(props: ListboxRootProps<T> & ListboxOwnProps): import("solid-js").JSX.Element;
14
- export declare const Listbox: typeof ListboxRoot & Omit<typeof Listbox$1, "Root"> & {
14
+ type ListboxOption = {
15
+ label: string;
16
+ value: string;
17
+ };
18
+ type ListboxFacadeValue = string | string[];
19
+ /** The complete listbox behind one model value: options become rows and the
20
+ * label names the quiet register. */
21
+ export interface ListboxFacadeProps {
22
+ value?: ListboxFacadeValue;
23
+ defaultValue?: ListboxFacadeValue;
24
+ options: ListboxOption[];
25
+ multiple?: boolean;
26
+ disabled?: boolean;
27
+ label?: string;
28
+ /** One rung of the ladder for the row register and the filter field. */
29
+ size?: "sm" | "md" | "lg";
30
+ onValueChange?: (value?: ListboxFacadeValue) => void;
31
+ }
32
+ declare function ListboxFacade(props: ListboxFacadeProps): import("solid-js").JSX.Element;
33
+ type ListboxParts = Omit<typeof Listbox$1, "Root"> & {
15
34
  Root: typeof ListboxRoot;
16
35
  };
36
+ export declare const Listbox: typeof ListboxFacade & ListboxParts;
17
37
  //#endregion
@@ -1,9 +1,10 @@
1
1
  import { t as defineFamily } from "../../family-Cmd8HEyK.mjs";
2
+ import { r as iconNode } from "../../icon-DTqmJCd5.mjs";
2
3
  import { t as useElementId } from "../../id-2ygNzPHF.mjs";
3
- import { injectComponentStyle } from "@bysages/core";
4
4
  import { createComponent, mergeProps } from "@solidjs/web";
5
- import { splitProps } from "solid-js";
6
- import { Listbox as Listbox$1 } from "@ark-ui/solid/listbox";
5
+ import { injectComponentStyle } from "@bysages/core/styling";
6
+ import { For, createMemo, splitProps } from "solid-js";
7
+ import { Listbox as Listbox$1, createListCollection } from "@ark-ui/solid/listbox";
7
8
  //#region src/components/listbox/index.tsx
8
9
  const ArkRoot = Listbox$1.Root;
9
10
  function ListboxRoot(props) {
@@ -18,7 +19,61 @@ function ListboxRoot(props) {
18
19
  }
19
20
  }));
20
21
  }
21
- const Listbox = defineFamily(ListboxRoot, {
22
+ function toListboxValue(value) {
23
+ if (value === void 0) return void 0;
24
+ return Array.isArray(value) ? value : [value];
25
+ }
26
+ function ListboxFacade(props) {
27
+ injectComponentStyle("listbox");
28
+ const collection = createMemo(() => createListCollection({ items: props.options }));
29
+ return createComponent(ListboxRoot, mergeProps({
30
+ get size() {
31
+ return props.size ?? "md";
32
+ },
33
+ get collection() {
34
+ return collection();
35
+ },
36
+ get defaultValue() {
37
+ return toListboxValue(props.defaultValue);
38
+ },
39
+ get disabled() {
40
+ return props.disabled;
41
+ },
42
+ get "aria-label"() {
43
+ return props.label;
44
+ },
45
+ get selectionMode() {
46
+ return props.multiple ? "multiple" : "single";
47
+ }
48
+ }, () => {
49
+ return props.value === void 0 ? {} : { value: toListboxValue(props.value) };
50
+ }, {
51
+ onValueChange: (details) => props.onValueChange?.(props.multiple ? details.value : details.value.at(0)),
52
+ get children() {
53
+ return createComponent(Listbox$1.Content, { get children() {
54
+ return createComponent(For, {
55
+ get each() {
56
+ return collection().items;
57
+ },
58
+ children: (item) => createComponent(Listbox$1.Item, {
59
+ item,
60
+ get children() {
61
+ return [createComponent(Listbox$1.ItemText, { get children() {
62
+ return item.label;
63
+ } }), createComponent(Listbox$1.ItemIndicator, { get children() {
64
+ return iconNode("check", {
65
+ width: "14",
66
+ height: "14"
67
+ });
68
+ } })];
69
+ }
70
+ })
71
+ });
72
+ } });
73
+ }
74
+ }));
75
+ }
76
+ const Listbox = defineFamily(ListboxFacade, {
22
77
  ...Listbox$1,
23
78
  Root: ListboxRoot
24
79
  });
@@ -5,7 +5,18 @@ import { Marquee as Marquee$1 } from "@ark-ui/solid/marquee";
5
5
  * seal-cut chips that dissolves into the paper at its edges rather than
6
6
  * cutting off. The API is Ark's own — Root, Viewport, Content, Edge, Item. */
7
7
  declare function MarqueeRoot(props: ComponentProps<typeof Marquee$1.Root>): import("solid-js").JSX.Element;
8
- export declare const Marquee: typeof MarqueeRoot & Omit<typeof Marquee$1, "Root"> & {
8
+ type MarqueeItem = string | {
9
+ label: string;
10
+ };
11
+ export interface MarqueeFacadeProps {
12
+ items: MarqueeItem[];
13
+ spacing?: string;
14
+ speed?: number;
15
+ label?: string;
16
+ }
17
+ /** The complete ribbon behind a list of short marks. */
18
+ declare function MarqueeFacade(props: MarqueeFacadeProps): import("solid-js").JSX.Element;
19
+ export declare const Marquee: typeof MarqueeFacade & Omit<typeof Marquee$1, "Root"> & {
9
20
  Root: typeof MarqueeRoot;
10
21
  };
11
22
  //#endregion
@@ -1,19 +1,60 @@
1
1
  import { t as defineFamily } from "../../family-Cmd8HEyK.mjs";
2
2
  import { t as useElementId } from "../../id-2ygNzPHF.mjs";
3
- import { injectComponentStyle } from "@bysages/core";
4
- import { createComponent, mergeProps } from "solid-js";
3
+ import { createComponent, insert, template } from "@solidjs/web";
4
+ import { injectComponentStyle } from "@bysages/core/styling";
5
+ import { Index, createComponent as createComponent$1, createMemo, mergeProps as mergeProps$1 } from "solid-js";
5
6
  import { Marquee as Marquee$1 } from "@ark-ui/solid/marquee";
6
- //#region src/components/marquee/index.ts
7
+ //#region src/components/marquee/index.tsx
8
+ var _tmpl$ = /* @__PURE__ */ template(`<svg width=16 height=16 viewBox="0 0 24 24"fill=currentColor aria-hidden=true>`);
9
+ var _tmpl$2 = /* @__PURE__ */ template(`<span>`);
7
10
  /** Ark's Marquee, dressed in the paper-and-ink system: a linear ribbon of
8
11
  * seal-cut chips that dissolves into the paper at its edges rather than
9
12
  * cutting off. The API is Ark's own — Root, Viewport, Content, Edge, Item. */
10
13
  function MarqueeRoot(props) {
11
14
  const id = useElementId("marquee", () => props.id);
12
- return createComponent(Marquee$1.Root, mergeProps(props, { get id() {
15
+ return createComponent$1(Marquee$1.Root, mergeProps$1(props, { get id() {
13
16
  return id();
14
17
  } }));
15
18
  }
16
- const Marquee = defineFamily(MarqueeRoot, {
19
+ /** The complete ribbon behind a list of short marks. */
20
+ function MarqueeFacade(props) {
21
+ injectComponentStyle("marquee");
22
+ const items = createMemo(() => props.items.map((item) => typeof item === "string" ? item : item.label));
23
+ return createComponent(MarqueeRoot, {
24
+ get "aria-label"() {
25
+ return props.label;
26
+ },
27
+ get spacing() {
28
+ return props.spacing;
29
+ },
30
+ get speed() {
31
+ return props.speed;
32
+ },
33
+ get children() {
34
+ return createComponent(Marquee$1.Viewport, { get children() {
35
+ return createComponent(Marquee$1.Content, { get children() {
36
+ return createComponent(Index, {
37
+ get each() {
38
+ return items();
39
+ },
40
+ children: (item) => createComponent(Marquee$1.Item, { get children() {
41
+ return [(() => {
42
+ var _el$ = _tmpl$();
43
+ _el$.innerHTML = "<path d=\"M12 3 3 9l9 12 9-12-9-6Z\" />";
44
+ return _el$;
45
+ })(), (() => {
46
+ var _el$2 = _tmpl$2();
47
+ insert(_el$2, item);
48
+ return _el$2;
49
+ })()];
50
+ } })
51
+ });
52
+ } });
53
+ } });
54
+ }
55
+ });
56
+ }
57
+ const Marquee = defineFamily(MarqueeFacade, {
17
58
  ...Marquee$1,
18
59
  Root: MarqueeRoot
19
60
  });
@@ -1,6 +1,6 @@
1
1
  import { n as withSelfRoot } from "../../family-Cmd8HEyK.mjs";
2
- import { injectComponentStyle } from "@bysages/core";
3
2
  import { spread, template } from "@solidjs/web";
3
+ import { injectComponentStyle } from "@bysages/core/styling";
4
4
  import { splitProps } from "solid-js";
5
5
  //#region src/components/masonry/index.tsx
6
6
  var _tmpl$ = /* @__PURE__ */ template(`<div>`);
@@ -1,2 +1,2 @@
1
- import { n as Video, r as formatMediaTime, t as Audio } from "../../media-player-BC8D_d29.mjs";
1
+ import { n as Video, r as formatMediaTime, t as Audio } from "../../media-player-yF7KVUxM.mjs";
2
2
  export { Audio, Video, formatMediaTime };
@@ -1,3 +1,3 @@
1
1
  import "../popover/index.mjs";
2
- import { n as MentionsVessel, r as useMentions, t as Mentions } from "../../mentions-CeG5u8Qm.mjs";
2
+ import { n as MentionsVessel, r as useMentions, t as Mentions } from "../../mentions-DKUG7eHt.mjs";
3
3
  export { Mentions, MentionsVessel, useMentions };
@@ -1,8 +1,8 @@
1
1
  import { t as defineFamily } from "../../family-Cmd8HEyK.mjs";
2
2
  import { r as iconNode } from "../../icon-DTqmJCd5.mjs";
3
3
  import { t as useElementId } from "../../id-2ygNzPHF.mjs";
4
- import { injectComponentStyle } from "@bysages/core";
5
4
  import { createComponent, memo, mergeProps } from "@solidjs/web";
5
+ import { injectComponentStyle } from "@bysages/core/styling";
6
6
  import { For, createContext, splitProps, useContext } from "solid-js";
7
7
  import { Menu as Menu$1 } from "@ark-ui/solid/menu";
8
8
  //#region src/components/menu/index.tsx
@@ -1,8 +1,8 @@
1
1
  import { t as defineFamily } from "../../family-Cmd8HEyK.mjs";
2
2
  import { t as useElementId } from "../../id-2ygNzPHF.mjs";
3
3
  import { Menu as Menu$1 } from "../menu/index.mjs";
4
- import { injectComponentStyle } from "@bysages/core";
5
4
  import { createComponent, insert, spread, template } from "@solidjs/web";
5
+ import { injectComponentStyle } from "@bysages/core/styling";
6
6
  import { For, splitProps } from "solid-js";
7
7
  import { Portal } from "solid-js/web";
8
8
  import { Menu } from "@ark-ui/solid/menu";
@@ -1,5 +1,5 @@
1
- import { injectComponentStyle } from "@bysages/core";
2
1
  import { createComponent, insert, mergeProps, spread, template } from "@solidjs/web";
2
+ import { injectComponentStyle } from "@bysages/core/styling";
3
3
  import { splitProps } from "solid-js";
4
4
  //#region src/components/meter/index.tsx
5
5
  var _tmpl$ = /* @__PURE__ */ template(`<span><span data-scope=meter data-part=range>`);
@@ -6,7 +6,23 @@ import { NavigationMenu as NavigationMenu$1 } from "@ark-ui/solid/navigation-men
6
6
  * popup vessel. The API is Ark's own — Root, List, Item, Trigger, Link,
7
7
  * Content, ViewportPositioner, Viewport, Indicator, ItemIndicator, Arrow. */
8
8
  declare function NavigationMenuRoot(props: ComponentProps<typeof NavigationMenu$1.Root>): import("solid-js").JSX.Element;
9
- export declare const NavigationMenu: typeof NavigationMenuRoot & Omit<typeof NavigationMenu$1, "Root"> & {
9
+ declare function NavigationMenuLink(props: ComponentProps<typeof NavigationMenu$1.Link>): import("solid-js").JSX.Element;
10
+ /** One flat destination in the callable bar; grouped panels and mega
11
+ * menus stay on the anatomy. */
12
+ export interface NavigationMenuLinkOption {
13
+ label: string;
14
+ href: string;
15
+ current?: boolean;
16
+ description?: string;
17
+ }
18
+ export interface NavigationMenuFacadeProps {
19
+ items: NavigationMenuLinkOption[];
20
+ orientation?: "horizontal" | "vertical";
21
+ }
22
+ /** The common path: a quiet rung of destinations, horizontal or vertical. */
23
+ declare function NavigationMenuFacade(props: NavigationMenuFacadeProps): import("solid-js").JSX.Element;
24
+ export declare const NavigationMenu: typeof NavigationMenuFacade & Omit<typeof NavigationMenu$1, "Root"> & {
10
25
  Root: typeof NavigationMenuRoot;
26
+ Link: typeof NavigationMenuLink;
11
27
  };
12
28
  //#endregion
@@ -1,22 +1,82 @@
1
1
  import { t as defineFamily } from "../../family-Cmd8HEyK.mjs";
2
2
  import { t as useElementId } from "../../id-2ygNzPHF.mjs";
3
- import { injectComponentStyle } from "@bysages/core";
4
- import { createComponent, mergeProps } from "solid-js";
3
+ import { createComponent, insert, mergeProps, template } from "@solidjs/web";
4
+ import { injectComponentStyle } from "@bysages/core/styling";
5
+ import { For, Show, createComponent as createComponent$1, mergeProps as mergeProps$1 } from "solid-js";
5
6
  import { NavigationMenu as NavigationMenu$1 } from "@ark-ui/solid/navigation-menu";
6
- //#region src/components/navigation-menu/index.ts
7
+ //#region src/components/navigation-menu/index.tsx
8
+ var _tmpl$ = /* @__PURE__ */ template(`<span>`);
7
9
  /** Ark's NavigationMenu, dressed in the paper-and-ink system: a menubar of
8
10
  * ghost triggers with one sliding stroke of primary ink, opening the shared
9
11
  * popup vessel. The API is Ark's own — Root, List, Item, Trigger, Link,
10
12
  * Content, ViewportPositioner, Viewport, Indicator, ItemIndicator, Arrow. */
11
13
  function NavigationMenuRoot(props) {
12
14
  const id = useElementId("navigation-menu", () => props.id);
13
- return createComponent(NavigationMenu$1.Root, mergeProps(props, { get id() {
15
+ return createComponent$1(NavigationMenu$1.Root, mergeProps$1(props, { get id() {
14
16
  return id();
15
17
  } }));
16
18
  }
17
- const NavigationMenu = defineFamily(NavigationMenuRoot, {
19
+ function NavigationMenuLink(props) {
20
+ injectComponentStyle("navigation-menu");
21
+ return createComponent(NavigationMenu$1.Link, mergeProps(props, { "data-motion": "ink-ripple" }));
22
+ }
23
+ /** The common path: a quiet rung of destinations, horizontal or vertical. */
24
+ function NavigationMenuFacade(props) {
25
+ injectComponentStyle("navigation-menu");
26
+ return createComponent(NavigationMenuRoot, {
27
+ get orientation() {
28
+ return props.orientation ?? "horizontal";
29
+ },
30
+ get children() {
31
+ return createComponent(NavigationMenu$1.List, { get children() {
32
+ return createComponent(For, {
33
+ get each() {
34
+ return props.items;
35
+ },
36
+ children: (item) => createComponent(NavigationMenu$1.Item, {
37
+ get value() {
38
+ return item.href;
39
+ },
40
+ get children() {
41
+ return createComponent(NavigationMenuLink, {
42
+ get href() {
43
+ return item.href;
44
+ },
45
+ get current() {
46
+ return item.current;
47
+ },
48
+ get children() {
49
+ return [(() => {
50
+ var _el$ = _tmpl$();
51
+ insert(_el$, () => {
52
+ return item.label;
53
+ });
54
+ return _el$;
55
+ })(), createComponent(Show, {
56
+ get when() {
57
+ return item.description;
58
+ },
59
+ get children() {
60
+ var _el$2 = _tmpl$();
61
+ insert(_el$2, () => {
62
+ return item.description;
63
+ });
64
+ return _el$2;
65
+ }
66
+ })];
67
+ }
68
+ });
69
+ }
70
+ })
71
+ });
72
+ } });
73
+ }
74
+ });
75
+ }
76
+ const NavigationMenu = defineFamily(NavigationMenuFacade, {
18
77
  ...NavigationMenu$1,
19
- Root: NavigationMenuRoot
78
+ Root: NavigationMenuRoot,
79
+ Link: NavigationMenuLink
20
80
  });
21
81
  injectComponentStyle("navigation-menu");
22
82
  //#endregion
@@ -9,7 +9,26 @@ type NumberInputOwnProps = {
9
9
  size?: "sm" | "md" | "lg";
10
10
  };
11
11
  declare function NumberInputRoot(props: NumberInputRootProps & NumberInputOwnProps): import("solid-js").JSX.Element;
12
- export declare const NumberInput: typeof NumberInputRoot & Omit<typeof NumberInput$1, "Root"> & {
12
+ export interface NumberInputFacadeProps {
13
+ value?: string;
14
+ defaultValue?: string;
15
+ label?: string;
16
+ placeholder?: string;
17
+ min?: number;
18
+ max?: number;
19
+ step?: number;
20
+ disabled?: boolean;
21
+ invalid?: boolean;
22
+ required?: boolean;
23
+ /** One rung of the control-height ladder for the field and its stepper. */
24
+ size?: "sm" | "md" | "lg";
25
+ onValueChange?: (value: string) => void;
26
+ }
27
+ /** The one-tag path for a stepped number field; formatting, scrubbing,
28
+ * and locale rules stay on the anatomy. */
29
+ declare function NumberInputFacade(props: NumberInputFacadeProps): import("solid-js").JSX.Element;
30
+ type NumberInputParts = Omit<typeof NumberInput$1, "Root"> & {
13
31
  Root: typeof NumberInputRoot;
14
32
  };
33
+ export declare const NumberInput: typeof NumberInputFacade & NumberInputParts;
15
34
  //#endregion