@bysages/solid 0.2.2 → 0.2.3

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 (263) hide show
  1. package/dist/ai-response-B_586r27.mjs +139 -0
  2. package/dist/chevron-GWEoEYdO.mjs +9 -0
  3. package/dist/components/accordion/index.d.mts +7 -0
  4. package/dist/components/accordion/index.mjs +10 -0
  5. package/dist/components/affix/index.d.mts +20 -0
  6. package/dist/components/affix/index.mjs +35 -0
  7. package/dist/components/ai/index.d.mts +2 -0
  8. package/dist/components/ai/index.mjs +69 -0
  9. package/dist/components/ai-action/index.d.mts +13 -0
  10. package/dist/components/ai-action/index.mjs +27 -0
  11. package/dist/components/ai-attachments/index.d.mts +20 -0
  12. package/dist/components/ai-attachments/index.mjs +98 -0
  13. package/dist/components/ai-message/index.d.mts +13 -0
  14. package/dist/components/ai-message/index.mjs +24 -0
  15. package/dist/components/ai-prompt-input/index.d.mts +45 -0
  16. package/dist/components/ai-prompt-input/index.mjs +136 -0
  17. package/dist/components/ai-reasoning/index.d.mts +13 -0
  18. package/dist/components/ai-reasoning/index.mjs +34 -0
  19. package/dist/components/ai-response/index.d.mts +20 -0
  20. package/dist/components/ai-response/index.mjs +2 -0
  21. package/dist/components/ai-source/index.d.mts +13 -0
  22. package/dist/components/ai-source/index.mjs +36 -0
  23. package/dist/components/ai-suggestion/index.d.mts +13 -0
  24. package/dist/components/ai-suggestion/index.mjs +22 -0
  25. package/dist/components/ai-tool/index.d.mts +23 -0
  26. package/dist/components/ai-tool/index.mjs +78 -0
  27. package/dist/components/alert/index.d.mts +22 -0
  28. package/dist/components/alert/index.mjs +92 -0
  29. package/dist/components/angle-slider/index.d.mts +15 -0
  30. package/dist/components/angle-slider/index.mjs +18 -0
  31. package/dist/components/aspect-ratio/index.d.mts +10 -0
  32. package/dist/components/aspect-ratio/index.mjs +25 -0
  33. package/dist/components/autocomplete/index.d.mts +21 -0
  34. package/dist/components/autocomplete/index.mjs +75 -0
  35. package/dist/components/avatar/index.d.mts +20 -0
  36. package/dist/components/avatar/index.mjs +15 -0
  37. package/dist/components/avatar-group/index.d.mts +11 -0
  38. package/dist/components/avatar-group/index.mjs +22 -0
  39. package/dist/components/back-top/index.d.mts +29 -0
  40. package/dist/components/back-top/index.mjs +89 -0
  41. package/dist/components/badge/index.d.mts +10 -0
  42. package/dist/components/badge/index.mjs +25 -0
  43. package/dist/components/banner/index.d.mts +24 -0
  44. package/dist/components/banner/index.mjs +71 -0
  45. package/dist/components/breadcrumb/index.d.mts +11 -0
  46. package/dist/components/breadcrumb/index.mjs +43 -0
  47. package/dist/components/button/index.d.mts +15 -0
  48. package/dist/components/button/index.mjs +45 -0
  49. package/dist/components/button-group/index.d.mts +23 -0
  50. package/dist/components/button-group/index.mjs +40 -0
  51. package/dist/components/calendar/index.d.mts +17 -0
  52. package/dist/components/calendar/index.mjs +197 -0
  53. package/dist/components/card/index.d.mts +11 -0
  54. package/dist/components/card/index.mjs +33 -0
  55. package/dist/components/carousel/index.d.mts +9 -0
  56. package/dist/components/carousel/index.mjs +12 -0
  57. package/dist/components/cascade-select/index.d.mts +31 -0
  58. package/dist/components/cascade-select/index.mjs +265 -0
  59. package/dist/components/checkbox/index.d.mts +15 -0
  60. package/dist/components/checkbox/index.mjs +18 -0
  61. package/dist/components/checkbox-group/index.d.mts +28 -0
  62. package/dist/components/checkbox-group/index.mjs +99 -0
  63. package/dist/components/chip/index.d.mts +12 -0
  64. package/dist/components/chip/index.mjs +34 -0
  65. package/dist/components/client-only/index.d.mts +2 -0
  66. package/dist/components/client-only/index.mjs +2 -0
  67. package/dist/components/clipboard/index.d.mts +16 -0
  68. package/dist/components/clipboard/index.mjs +19 -0
  69. package/dist/components/collapsible/index.d.mts +7 -0
  70. package/dist/components/collapsible/index.mjs +10 -0
  71. package/dist/components/collection/index.d.mts +2 -0
  72. package/dist/components/collection/index.mjs +2 -0
  73. package/dist/components/color-picker/index.d.mts +19 -0
  74. package/dist/components/color-picker/index.mjs +18 -0
  75. package/dist/components/combobox/index.d.mts +17 -0
  76. package/dist/components/combobox/index.mjs +18 -0
  77. package/dist/components/command/index.d.mts +43 -0
  78. package/dist/components/command/index.mjs +237 -0
  79. package/dist/components/comment/index.d.mts +17 -0
  80. package/dist/components/comment/index.mjs +86 -0
  81. package/dist/components/config-provider/index.d.mts +48 -0
  82. package/dist/components/config-provider/index.mjs +65 -0
  83. package/dist/components/container/index.d.mts +13 -0
  84. package/dist/components/container/index.mjs +25 -0
  85. package/dist/components/date-input/index.d.mts +15 -0
  86. package/dist/components/date-input/index.mjs +18 -0
  87. package/dist/components/date-picker/index.d.mts +17 -0
  88. package/dist/components/date-picker/index.mjs +18 -0
  89. package/dist/components/descriptions/index.d.mts +18 -0
  90. package/dist/components/descriptions/index.mjs +42 -0
  91. package/dist/components/dialog/index.d.mts +9 -0
  92. package/dist/components/dialog/index.mjs +11 -0
  93. package/dist/components/download-trigger/index.d.mts +2 -0
  94. package/dist/components/download-trigger/index.mjs +2 -0
  95. package/dist/components/drawer/index.d.mts +9 -0
  96. package/dist/components/drawer/index.mjs +12 -0
  97. package/dist/components/dynamic-input/index.d.mts +30 -0
  98. package/dist/components/dynamic-input/index.mjs +116 -0
  99. package/dist/components/editable/index.d.mts +15 -0
  100. package/dist/components/editable/index.mjs +18 -0
  101. package/dist/components/ellipsis/index.d.mts +10 -0
  102. package/dist/components/ellipsis/index.mjs +29 -0
  103. package/dist/components/empty/index.d.mts +10 -0
  104. package/dist/components/empty/index.mjs +31 -0
  105. package/dist/components/field/index.d.mts +8 -0
  106. package/dist/components/field/index.mjs +11 -0
  107. package/dist/components/fieldset/index.d.mts +7 -0
  108. package/dist/components/fieldset/index.mjs +10 -0
  109. package/dist/components/file-upload/index.d.mts +17 -0
  110. package/dist/components/file-upload/index.mjs +18 -0
  111. package/dist/components/float-button/index.d.mts +61 -0
  112. package/dist/components/float-button/index.mjs +128 -0
  113. package/dist/components/floating-panel/index.d.mts +9 -0
  114. package/dist/components/floating-panel/index.mjs +12 -0
  115. package/dist/components/focus-trap/index.d.mts +2 -0
  116. package/dist/components/focus-trap/index.mjs +2 -0
  117. package/dist/components/form/index.d.mts +2 -0
  118. package/dist/components/form/index.mjs +110 -0
  119. package/dist/components/format/index.d.mts +9 -0
  120. package/dist/components/format/index.mjs +10 -0
  121. package/dist/components/frame/index.d.mts +10 -0
  122. package/dist/components/frame/index.mjs +12 -0
  123. package/dist/components/grid/index.d.mts +13 -0
  124. package/dist/components/grid/index.mjs +44 -0
  125. package/dist/components/highlight/index.d.mts +7 -0
  126. package/dist/components/highlight/index.mjs +11 -0
  127. package/dist/components/hover-card/index.d.mts +7 -0
  128. package/dist/components/hover-card/index.mjs +10 -0
  129. package/dist/components/icon/index.d.mts +19 -0
  130. package/dist/components/icon/index.mjs +53 -0
  131. package/dist/components/image/index.d.mts +17 -0
  132. package/dist/components/image/index.mjs +69 -0
  133. package/dist/components/image-cropper/index.d.mts +8 -0
  134. package/dist/components/image-cropper/index.mjs +11 -0
  135. package/dist/components/image-viewer/index.d.mts +19 -0
  136. package/dist/components/image-viewer/index.mjs +143 -0
  137. package/dist/components/input/index.d.mts +16 -0
  138. package/dist/components/input/index.mjs +42 -0
  139. package/dist/components/input-group/index.d.mts +18 -0
  140. package/dist/components/input-group/index.mjs +40 -0
  141. package/dist/components/json-tree-view/index.d.mts +7 -0
  142. package/dist/components/json-tree-view/index.mjs +10 -0
  143. package/dist/components/kbd/index.d.mts +6 -0
  144. package/dist/components/kbd/index.mjs +17 -0
  145. package/dist/components/layout/index.d.mts +60 -0
  146. package/dist/components/layout/index.mjs +192 -0
  147. package/dist/components/link/index.d.mts +10 -0
  148. package/dist/components/link/index.mjs +25 -0
  149. package/dist/components/list/index.d.mts +26 -0
  150. package/dist/components/list/index.mjs +92 -0
  151. package/dist/components/listbox/index.d.mts +17 -0
  152. package/dist/components/listbox/index.mjs +19 -0
  153. package/dist/components/marquee/index.d.mts +7 -0
  154. package/dist/components/marquee/index.mjs +10 -0
  155. package/dist/components/masonry/index.d.mts +11 -0
  156. package/dist/components/masonry/index.mjs +36 -0
  157. package/dist/components/mentions/index.d.mts +2 -0
  158. package/dist/components/mentions/index.mjs +3 -0
  159. package/dist/components/menu/index.d.mts +13 -0
  160. package/dist/components/menu/index.mjs +38 -0
  161. package/dist/components/menubar/index.d.mts +32 -0
  162. package/dist/components/menubar/index.mjs +82 -0
  163. package/dist/components/meter/index.d.mts +21 -0
  164. package/dist/components/meter/index.mjs +95 -0
  165. package/dist/components/navigation-menu/index.d.mts +8 -0
  166. package/dist/components/navigation-menu/index.mjs +11 -0
  167. package/dist/components/number-input/index.d.mts +15 -0
  168. package/dist/components/number-input/index.mjs +18 -0
  169. package/dist/components/page-header/index.d.mts +11 -0
  170. package/dist/components/page-header/index.mjs +34 -0
  171. package/dist/components/pagination/index.d.mts +17 -0
  172. package/dist/components/pagination/index.mjs +18 -0
  173. package/dist/components/password-input/index.d.mts +15 -0
  174. package/dist/components/password-input/index.mjs +18 -0
  175. package/dist/components/pin-input/index.d.mts +14 -0
  176. package/dist/components/pin-input/index.mjs +18 -0
  177. package/dist/components/popconfirm/index.d.mts +17 -0
  178. package/dist/components/popconfirm/index.mjs +78 -0
  179. package/dist/components/popover/index.d.mts +8 -0
  180. package/dist/components/popover/index.mjs +11 -0
  181. package/dist/components/presence/index.d.mts +2 -0
  182. package/dist/components/presence/index.mjs +2 -0
  183. package/dist/components/progress/index.d.mts +15 -0
  184. package/dist/components/progress/index.mjs +18 -0
  185. package/dist/components/progress-group/index.d.mts +22 -0
  186. package/dist/components/progress-group/index.mjs +77 -0
  187. package/dist/components/qr-code/index.d.mts +8 -0
  188. package/dist/components/qr-code/index.mjs +11 -0
  189. package/dist/components/radio-group/index.d.mts +15 -0
  190. package/dist/components/radio-group/index.mjs +18 -0
  191. package/dist/components/rating-group/index.d.mts +15 -0
  192. package/dist/components/rating-group/index.mjs +18 -0
  193. package/dist/components/scroll-area/index.d.mts +7 -0
  194. package/dist/components/scroll-area/index.mjs +10 -0
  195. package/dist/components/segment-group/index.d.mts +17 -0
  196. package/dist/components/segment-group/index.mjs +23 -0
  197. package/dist/components/select/index.d.mts +17 -0
  198. package/dist/components/select/index.mjs +18 -0
  199. package/dist/components/separator/index.d.mts +11 -0
  200. package/dist/components/separator/index.mjs +29 -0
  201. package/dist/components/signature-pad/index.d.mts +8 -0
  202. package/dist/components/signature-pad/index.mjs +11 -0
  203. package/dist/components/skeleton/index.d.mts +7 -0
  204. package/dist/components/skeleton/index.mjs +17 -0
  205. package/dist/components/slider/index.d.mts +15 -0
  206. package/dist/components/slider/index.mjs +18 -0
  207. package/dist/components/spinner/index.d.mts +9 -0
  208. package/dist/components/spinner/index.mjs +28 -0
  209. package/dist/components/split-button/index.d.mts +36 -0
  210. package/dist/components/split-button/index.mjs +123 -0
  211. package/dist/components/splitter/index.d.mts +7 -0
  212. package/dist/components/splitter/index.mjs +10 -0
  213. package/dist/components/stack/index.d.mts +11 -0
  214. package/dist/components/stack/index.mjs +47 -0
  215. package/dist/components/stat/index.d.mts +17 -0
  216. package/dist/components/stat/index.mjs +46 -0
  217. package/dist/components/steps/index.d.mts +18 -0
  218. package/dist/components/steps/index.mjs +18 -0
  219. package/dist/components/swap/index.d.mts +8 -0
  220. package/dist/components/swap/index.mjs +11 -0
  221. package/dist/components/switch/index.d.mts +15 -0
  222. package/dist/components/switch/index.mjs +18 -0
  223. package/dist/components/table/index.d.mts +77 -0
  224. package/dist/components/table/index.mjs +740 -0
  225. package/dist/components/tabs/index.d.mts +17 -0
  226. package/dist/components/tabs/index.mjs +18 -0
  227. package/dist/components/tags-input/index.d.mts +16 -0
  228. package/dist/components/tags-input/index.mjs +18 -0
  229. package/dist/components/textarea/index.d.mts +14 -0
  230. package/dist/components/textarea/index.mjs +37 -0
  231. package/dist/components/timeline/index.d.mts +9 -0
  232. package/dist/components/timeline/index.mjs +29 -0
  233. package/dist/components/timer/index.d.mts +8 -0
  234. package/dist/components/timer/index.mjs +11 -0
  235. package/dist/components/toast/index.d.mts +11 -0
  236. package/dist/components/toast/index.mjs +13 -0
  237. package/dist/components/toc/index.d.mts +7 -0
  238. package/dist/components/toc/index.mjs +10 -0
  239. package/dist/components/toggle/index.d.mts +7 -0
  240. package/dist/components/toggle/index.mjs +10 -0
  241. package/dist/components/toggle-group/index.d.mts +14 -0
  242. package/dist/components/toggle-group/index.mjs +18 -0
  243. package/dist/components/tooltip/index.d.mts +7 -0
  244. package/dist/components/tooltip/index.mjs +10 -0
  245. package/dist/components/tour/index.d.mts +11 -0
  246. package/dist/components/tour/index.mjs +13 -0
  247. package/dist/components/transfer/index.d.mts +24 -0
  248. package/dist/components/transfer/index.mjs +166 -0
  249. package/dist/components/tree-select/index.d.mts +28 -0
  250. package/dist/components/tree-select/index.mjs +245 -0
  251. package/dist/components/tree-view/index.d.mts +18 -0
  252. package/dist/components/tree-view/index.mjs +19 -0
  253. package/dist/components/typography/index.d.mts +11 -0
  254. package/dist/components/typography/index.mjs +34 -0
  255. package/dist/components/watermark/index.d.mts +17 -0
  256. package/dist/components/watermark/index.mjs +71 -0
  257. package/dist/index-B1xiJ5ki.d.mts +1811 -0
  258. package/dist/index-B4XS2n2y.d.mts +13411 -0
  259. package/dist/index-DDX7x8aT.d.mts +95 -0
  260. package/dist/index.d.mts +128 -15209
  261. package/dist/index.mjs +128 -6171
  262. package/dist/mentions-xbI6vJAP.mjs +257 -0
  263. package/package.json +77 -4
@@ -0,0 +1,95 @@
1
+ import { injectComponentStyle } from "@bysages/core";
2
+ import { createComponent, insert, memo, mergeProps, spread, template } from "solid-js/web";
3
+ import { splitProps } from "solid-js";
4
+ //#region src/components/meter/index.tsx
5
+ var _tmpl$ = /*#__PURE__*/ template(`<span><span data-scope=meter data-part=range>`);
6
+ var _tmpl$2 = /*#__PURE__*/ template(`<div>`);
7
+ function part(name, tag) {
8
+ function Component(props) {
9
+ return createComponent(tag, mergeProps(props, {
10
+ "data-scope": "meter",
11
+ get ["data-part"]() {
12
+ return name.toLowerCase();
13
+ }
14
+ }));
15
+ }
16
+ return Component;
17
+ }
18
+ const Label = part("Label", "span");
19
+ const ValueText = part("ValueText", "span");
20
+ const Track = (props) => (() => {
21
+ var _el$ = _tmpl$();
22
+ spread(_el$, mergeProps(props, {
23
+ "data-scope": "meter",
24
+ "data-part": "track"
25
+ }), false, true);
26
+ return _el$;
27
+ })();
28
+ function Root(props) {
29
+ const [own, rest] = splitProps(props, [
30
+ "value",
31
+ "min",
32
+ "max",
33
+ "level",
34
+ "label",
35
+ "size"
36
+ ]);
37
+ const min = () => own.min ?? 0;
38
+ const max = () => own.max ?? 100;
39
+ const ratio = () => {
40
+ const span = max() - min();
41
+ return span > 0 ? Math.min(Math.max((own.value - min()) / span, 0), 1) : 0;
42
+ };
43
+ const level = () => own.level ?? "normal";
44
+ return (() => {
45
+ var _el$2 = _tmpl$2();
46
+ spread(_el$2, mergeProps(rest, {
47
+ "role": "meter",
48
+ get ["aria-valuemin"]() {
49
+ return min();
50
+ },
51
+ get ["aria-valuemax"]() {
52
+ return max();
53
+ },
54
+ get ["aria-valuenow"]() {
55
+ return own.value;
56
+ },
57
+ get ["aria-label"]() {
58
+ return own.label ?? rest["aria-label"];
59
+ },
60
+ "data-scope": "meter",
61
+ "data-part": "root",
62
+ get ["data-size"]() {
63
+ return own.size ?? "md";
64
+ },
65
+ get ["data-level"]() {
66
+ return memo(() => level() !== "normal")() ? level() : void 0;
67
+ },
68
+ get style() {
69
+ return {
70
+ ...rest.style,
71
+ "--_percent": `${ratio() * 100}%`
72
+ };
73
+ }
74
+ }), false, true);
75
+ insert(_el$2, () => rest.children ?? [
76
+ createComponent(Label, { get children() {
77
+ return own.label;
78
+ } }),
79
+ createComponent(ValueText, { get children() {
80
+ return `${Math.round(ratio() * 100)}%`;
81
+ } }),
82
+ createComponent(Track, {})
83
+ ]);
84
+ return _el$2;
85
+ })();
86
+ }
87
+ const Meter = Object.assign(Root, {
88
+ Root,
89
+ Label,
90
+ ValueText,
91
+ Track
92
+ });
93
+ injectComponentStyle("meter");
94
+ //#endregion
95
+ export { Meter };
@@ -0,0 +1,8 @@
1
+ import { NavigationMenu as NavigationMenu$1 } from "@ark-ui/solid/navigation-menu";
2
+ //#region src/components/navigation-menu/index.d.ts
3
+ /** Ark's NavigationMenu, dressed in the paper-and-ink system: a menubar of
4
+ * ghost triggers with one sliding stroke of primary ink, opening the shared
5
+ * popup vessel. The API is Ark's own — Root, List, Item, Trigger, Link,
6
+ * Content, ViewportPositioner, Viewport, Indicator, ItemIndicator, Arrow. */
7
+ export declare const NavigationMenu: typeof NavigationMenu$1;
8
+ //#endregion
@@ -0,0 +1,11 @@
1
+ import { injectComponentStyle } from "@bysages/core";
2
+ import { NavigationMenu as NavigationMenu$1 } from "@ark-ui/solid/navigation-menu";
3
+ //#region src/components/navigation-menu/index.ts
4
+ /** Ark's NavigationMenu, dressed in the paper-and-ink system: a menubar of
5
+ * ghost triggers with one sliding stroke of primary ink, opening the shared
6
+ * popup vessel. The API is Ark's own — Root, List, Item, Trigger, Link,
7
+ * Content, ViewportPositioner, Viewport, Indicator, ItemIndicator, Arrow. */
8
+ const NavigationMenu = NavigationMenu$1;
9
+ injectComponentStyle("navigation-menu");
10
+ //#endregion
11
+ export { NavigationMenu };
@@ -0,0 +1,15 @@
1
+ import { NumberInput as NumberInput$1, NumberInputRootProps } from "@ark-ui/solid/number-input";
2
+ //#region src/components/number-input/index.d.ts
3
+ /** Ark's NumberInput, dressed in the paper-and-ink system: the stepper
4
+ * rides inside the field as one seal split by a hairline, numbers set in
5
+ * tabular figures. The API is Ark's own — Root, Label, Control, Input,
6
+ * ValueText, IncrementTrigger, DecrementTrigger, Scrubber. */
7
+ type NumberInputOwnProps = {
8
+ /** One rung of the control-height ladder for the field and its stepper. */
9
+ size?: "sm" | "md" | "lg";
10
+ };
11
+ declare function NumberInputRoot(props: NumberInputRootProps & NumberInputOwnProps): import("solid-js").JSX.Element;
12
+ export declare const NumberInput: Omit<typeof NumberInput$1, "Root"> & {
13
+ Root: typeof NumberInputRoot;
14
+ };
15
+ //#endregion
@@ -0,0 +1,18 @@
1
+ import { injectComponentStyle } from "@bysages/core";
2
+ import { createComponent, mergeProps } from "solid-js/web";
3
+ import { splitProps } from "solid-js";
4
+ import { NumberInput as NumberInput$1 } from "@ark-ui/solid/number-input";
5
+ //#region src/components/number-input/index.tsx
6
+ function NumberInputRoot(props) {
7
+ const [own, rest] = splitProps(props, ["size"]);
8
+ return createComponent(NumberInput$1.Root, mergeProps(rest, { get ["data-size"]() {
9
+ return own.size ?? "md";
10
+ } }));
11
+ }
12
+ const NumberInput = {
13
+ ...NumberInput$1,
14
+ Root: NumberInputRoot
15
+ };
16
+ injectComponentStyle("number-input");
17
+ //#endregion
18
+ export { NumberInput };
@@ -0,0 +1,11 @@
1
+ import { JSX } from "solid-js";
2
+ //#region src/components/page-header/index.d.ts
3
+ export declare const PageHeader: ((props: JSX.HTMLAttributes<HTMLElement>) => JSX.Element) & {
4
+ Root: (props: JSX.HTMLAttributes<HTMLElement>) => JSX.Element;
5
+ Heading: (props: JSX.HTMLAttributes<HTMLElement>) => JSX.Element;
6
+ Eyebrow: (props: JSX.HTMLAttributes<HTMLElement>) => JSX.Element;
7
+ Title: (props: JSX.HTMLAttributes<HTMLElement>) => JSX.Element;
8
+ Description: (props: JSX.HTMLAttributes<HTMLElement>) => JSX.Element;
9
+ Actions: (props: JSX.HTMLAttributes<HTMLElement>) => JSX.Element;
10
+ };
11
+ //#endregion
@@ -0,0 +1,34 @@
1
+ import { injectComponentStyle } from "@bysages/core";
2
+ import { createComponent, mergeProps } from "solid-js/web";
3
+ //#region src/components/page-header/index.tsx
4
+ /** The page's face: an eyebrow whisper, a serif title, one line of
5
+ * description, and the actions resting beside the title on the same
6
+ * baseline. Heading groups title and actions; the rest compose below. */
7
+ function part(name, tag, extra = {}) {
8
+ function Component(props) {
9
+ return createComponent(tag, mergeProps(extra, props, {
10
+ "data-scope": "page-header",
11
+ get ["data-part"]() {
12
+ return name.toLowerCase();
13
+ }
14
+ }));
15
+ }
16
+ return Component;
17
+ }
18
+ const Root = part("Root", "header");
19
+ const Heading = part("Heading", "div");
20
+ const Eyebrow = part("Eyebrow", "p");
21
+ const Title = part("Title", "h1");
22
+ const Description = part("Description", "p");
23
+ const Actions = part("Actions", "div");
24
+ const PageHeader = Object.assign(Root, {
25
+ Root,
26
+ Heading,
27
+ Eyebrow,
28
+ Title,
29
+ Description,
30
+ Actions
31
+ });
32
+ injectComponentStyle("page-header");
33
+ //#endregion
34
+ export { PageHeader };
@@ -0,0 +1,17 @@
1
+ import { Pagination as Pagination$1, PaginationRootProps } from "@ark-ui/solid/pagination";
2
+ //#region src/components/pagination/index.d.ts
3
+ /**
4
+ * Pagination — paged navigation.
5
+ *
6
+ * Parts: Root, Item (page seals), Ellipsis, PrevTrigger, NextTrigger,
7
+ * FirstTrigger, LastTrigger. Items carry data-selected.
8
+ */
9
+ type PaginationOwnProps = {
10
+ /** One rung of the control-height ladder every page seal shares. */
11
+ size?: "sm" | "md" | "lg";
12
+ };
13
+ declare function PaginationRoot(props: PaginationRootProps & PaginationOwnProps): import("solid-js").JSX.Element;
14
+ export declare const Pagination: Omit<typeof Pagination$1, "Root"> & {
15
+ Root: typeof PaginationRoot;
16
+ };
17
+ //#endregion
@@ -0,0 +1,18 @@
1
+ import { injectComponentStyle } from "@bysages/core";
2
+ import { createComponent, mergeProps } from "solid-js/web";
3
+ import { splitProps } from "solid-js";
4
+ import { Pagination as Pagination$1 } from "@ark-ui/solid/pagination";
5
+ //#region src/components/pagination/index.tsx
6
+ function PaginationRoot(props) {
7
+ const [own, rest] = splitProps(props, ["size"]);
8
+ return createComponent(Pagination$1.Root, mergeProps(rest, { get ["data-size"]() {
9
+ return own.size ?? "md";
10
+ } }));
11
+ }
12
+ const Pagination = {
13
+ ...Pagination$1,
14
+ Root: PaginationRoot
15
+ };
16
+ injectComponentStyle("pagination");
17
+ //#endregion
18
+ export { Pagination };
@@ -0,0 +1,15 @@
1
+ import { PasswordInput as PasswordInput$1, PasswordInputRootProps } from "@ark-ui/solid/password-input";
2
+ //#region src/components/password-input/index.d.ts
3
+ /** Ark's PasswordInput, dressed in the paper-and-ink system: the reveal
4
+ * eye sits quiet at the field's edge and swaps in place — no shift, no
5
+ * noise. The API is Ark's own — Root, Label, Control, Input, Indicator,
6
+ * VisibilityTrigger. */
7
+ type PasswordInputOwnProps = {
8
+ /** One rung of the control-height ladder for the field and its eye. */
9
+ size?: "sm" | "md" | "lg";
10
+ };
11
+ declare function PasswordInputRoot(props: PasswordInputRootProps & PasswordInputOwnProps): import("solid-js").JSX.Element;
12
+ export declare const PasswordInput: Omit<typeof PasswordInput$1, "Root"> & {
13
+ Root: typeof PasswordInputRoot;
14
+ };
15
+ //#endregion
@@ -0,0 +1,18 @@
1
+ import { injectComponentStyle } from "@bysages/core";
2
+ import { createComponent, mergeProps } from "solid-js/web";
3
+ import { splitProps } from "solid-js";
4
+ import { PasswordInput as PasswordInput$1 } from "@ark-ui/solid/password-input";
5
+ //#region src/components/password-input/index.tsx
6
+ function PasswordInputRoot(props) {
7
+ const [own, rest] = splitProps(props, ["size"]);
8
+ return createComponent(PasswordInput$1.Root, mergeProps(rest, { get ["data-size"]() {
9
+ return own.size ?? "md";
10
+ } }));
11
+ }
12
+ const PasswordInput = {
13
+ ...PasswordInput$1,
14
+ Root: PasswordInputRoot
15
+ };
16
+ injectComponentStyle("password-input");
17
+ //#endregion
18
+ export { PasswordInput };
@@ -0,0 +1,14 @@
1
+ import { PinInput as PinInput$1, PinInputRootProps } from "@ark-ui/solid/pin-input";
2
+ //#region src/components/pin-input/index.d.ts
3
+ /** Ark's PinInput, dressed in the paper-and-ink system: one character per
4
+ * square-cut seal, centered ink in tabular figures. The API is Ark's own —
5
+ * Root, Label, Control, Input, HiddenInput. */
6
+ type PinInputOwnProps = {
7
+ /** One rung of the control-height ladder each seal stands on. */
8
+ size?: "sm" | "md" | "lg";
9
+ };
10
+ declare function PinInputRoot(props: PinInputRootProps & PinInputOwnProps): import("solid-js").JSX.Element;
11
+ export declare const PinInput: Omit<typeof PinInput$1, "Root"> & {
12
+ Root: typeof PinInputRoot;
13
+ };
14
+ //#endregion
@@ -0,0 +1,18 @@
1
+ import { injectComponentStyle } from "@bysages/core";
2
+ import { createComponent, mergeProps } from "solid-js/web";
3
+ import { splitProps } from "solid-js";
4
+ import { PinInput as PinInput$1 } from "@ark-ui/solid/pin-input";
5
+ //#region src/components/pin-input/index.tsx
6
+ function PinInputRoot(props) {
7
+ const [own, rest] = splitProps(props, ["size"]);
8
+ return createComponent(PinInput$1.Root, mergeProps(rest, { get ["data-size"]() {
9
+ return own.size ?? "md";
10
+ } }));
11
+ }
12
+ const PinInput = {
13
+ ...PinInput$1,
14
+ Root: PinInputRoot
15
+ };
16
+ injectComponentStyle("pin-input");
17
+ //#endregion
18
+ export { PinInput };
@@ -0,0 +1,17 @@
1
+ import { JSX } from "solid-js";
2
+ //#region src/components/popconfirm/index.d.ts
3
+ export interface PopconfirmProps extends JSX.HTMLAttributes<HTMLButtonElement> {
4
+ /** The question the reader is answering. */
5
+ message: string;
6
+ confirmText?: string;
7
+ cancelText?: string;
8
+ onConfirm?: () => void;
9
+ onCancel?: () => void;
10
+ }
11
+ /** A question at the point of no return: the trigger opens a small
12
+ * anchored vessel carrying the message and two answers. Confirmation
13
+ * and cancellation are the caller's to act on — the panel closes
14
+ * either way. The children are the trigger's content, riding the
15
+ * machine-driven trigger button. */
16
+ export declare function Popconfirm(props: PopconfirmProps): JSX.Element;
17
+ //#endregion
@@ -0,0 +1,78 @@
1
+ import { Button } from "../button/index.mjs";
2
+ import { injectComponentStyle } from "@bysages/core";
3
+ import { Portal, createComponent, insert, mergeProps, spread, template } from "solid-js/web";
4
+ import { createSignal, splitProps } from "solid-js";
5
+ import { Popover } from "@ark-ui/solid/popover";
6
+ //#region src/components/popconfirm/index.tsx
7
+ var _tmpl$ = /*#__PURE__*/ template(`<p data-part=message>`);
8
+ var _tmpl$2 = /*#__PURE__*/ template(`<div data-part=actions>`);
9
+ var _tmpl$3 = /*#__PURE__*/ template(`<button>`);
10
+ /** A question at the point of no return: the trigger opens a small
11
+ * anchored vessel carrying the message and two answers. Confirmation
12
+ * and cancellation are the caller's to act on — the panel closes
13
+ * either way. The children are the trigger's content, riding the
14
+ * machine-driven trigger button. */
15
+ function Popconfirm(props) {
16
+ injectComponentStyle("popconfirm");
17
+ const [own, rest] = splitProps(props, [
18
+ "message",
19
+ "confirmText",
20
+ "cancelText",
21
+ "onConfirm",
22
+ "onCancel",
23
+ "children"
24
+ ]);
25
+ const [open, setOpen] = createSignal(false);
26
+ function settle(confirmed) {
27
+ setOpen(false);
28
+ (confirmed ? own.onConfirm : own.onCancel)?.();
29
+ }
30
+ return createComponent(Popover.Root, {
31
+ get open() {
32
+ return open();
33
+ },
34
+ onOpenChange: (details) => setOpen(details.open),
35
+ positioning: { placement: "top" },
36
+ get children() {
37
+ return [createComponent(Popover.Trigger, { asChild: (propsFn) => (() => {
38
+ var _el$3 = _tmpl$3();
39
+ spread(_el$3, mergeProps(propsFn, rest), false, true);
40
+ insert(_el$3, () => own.children);
41
+ return _el$3;
42
+ })() }), createComponent(Portal, { get children() {
43
+ return createComponent(Popover.Positioner, { get children() {
44
+ return createComponent(Popover.Content, {
45
+ "class": "bs-popconfirm",
46
+ get children() {
47
+ return [(() => {
48
+ var _el$ = _tmpl$();
49
+ insert(_el$, () => own.message);
50
+ return _el$;
51
+ })(), (() => {
52
+ var _el$2 = _tmpl$2();
53
+ insert(_el$2, createComponent(Button, {
54
+ variant: "ghost",
55
+ size: "sm",
56
+ onClick: () => settle(false),
57
+ get children() {
58
+ return own.cancelText ?? "Cancel";
59
+ }
60
+ }), null);
61
+ insert(_el$2, createComponent(Button, {
62
+ size: "sm",
63
+ onClick: () => settle(true),
64
+ get children() {
65
+ return own.confirmText ?? "Confirm";
66
+ }
67
+ }), null);
68
+ return _el$2;
69
+ })()];
70
+ }
71
+ });
72
+ } });
73
+ } })];
74
+ }
75
+ });
76
+ }
77
+ //#endregion
78
+ export { Popconfirm };
@@ -0,0 +1,8 @@
1
+ import { Popover as Popover$1 } from "@ark-ui/solid/popover";
2
+ //#region src/components/popover/index.d.ts
3
+ /** Ark's Popover, dressed in the paper-and-ink system: a paper vessel that
4
+ * dissolves in on elevation, anchored to its trigger by a whisker arrow. The
5
+ * API is Ark's own — Root, Trigger, Anchor, Indicator, Positioner, Content,
6
+ * Title, Description, CloseTrigger, Arrow, ArrowTip. */
7
+ export declare const Popover: typeof Popover$1;
8
+ //#endregion
@@ -0,0 +1,11 @@
1
+ import { injectComponentStyle } from "@bysages/core";
2
+ import { Popover as Popover$1 } from "@ark-ui/solid/popover";
3
+ //#region src/components/popover/index.ts
4
+ /** Ark's Popover, dressed in the paper-and-ink system: a paper vessel that
5
+ * dissolves in on elevation, anchored to its trigger by a whisker arrow. The
6
+ * API is Ark's own — Root, Trigger, Anchor, Indicator, Positioner, Content,
7
+ * Title, Description, CloseTrigger, Arrow, ArrowTip. */
8
+ const Popover = Popover$1;
9
+ injectComponentStyle("popover");
10
+ //#endregion
11
+ export { Popover };
@@ -0,0 +1,2 @@
1
+ import { Presence, PresenceProps, PresenceProvider, UsePresenceContext, UsePresenceProps, UsePresenceReturn, usePresence, usePresenceContext } from "@ark-ui/solid/presence";
2
+ export { Presence, type PresenceProps, PresenceProvider, type UsePresenceContext, type UsePresenceProps, type UsePresenceReturn, usePresence, usePresenceContext };
@@ -0,0 +1,2 @@
1
+ import { Presence, PresenceProvider, usePresence, usePresenceContext } from "@ark-ui/solid/presence";
2
+ export { Presence, PresenceProvider, usePresence, usePresenceContext };
@@ -0,0 +1,15 @@
1
+ import { Progress as Progress$1, ProgressRootProps } from "@ark-ui/solid/progress";
2
+ //#region src/components/progress/index.d.ts
3
+ /** Ark's Progress, dressed in the paper-and-ink system: a quiet hairline
4
+ * groove that the primary ink fills at the machine's pace. The API is
5
+ * Ark's own — Root, Label, ValueText, Track, Range, View, Circle,
6
+ * CircleTrack, CircleRange. */
7
+ type ProgressOwnProps = {
8
+ /** One rung of the groove ladder — the track's thickness. */
9
+ size?: "sm" | "md" | "lg";
10
+ };
11
+ declare function ProgressRoot(props: ProgressRootProps & ProgressOwnProps): import("solid-js").JSX.Element;
12
+ export declare const Progress: Omit<typeof Progress$1, "Root"> & {
13
+ Root: typeof ProgressRoot;
14
+ };
15
+ //#endregion
@@ -0,0 +1,18 @@
1
+ import { injectComponentStyle } from "@bysages/core";
2
+ import { createComponent, mergeProps } from "solid-js/web";
3
+ import { splitProps } from "solid-js";
4
+ import { Progress as Progress$1 } from "@ark-ui/solid/progress";
5
+ //#region src/components/progress/index.tsx
6
+ function ProgressRoot(props) {
7
+ const [own, rest] = splitProps(props, ["size"]);
8
+ return createComponent(Progress$1.Root, mergeProps(rest, { get ["data-size"]() {
9
+ return own.size ?? "md";
10
+ } }));
11
+ }
12
+ const Progress = {
13
+ ...Progress$1,
14
+ Root: ProgressRoot
15
+ };
16
+ injectComponentStyle("progress");
17
+ //#endregion
18
+ export { Progress };
@@ -0,0 +1,22 @@
1
+ import { JSX } from "solid-js";
2
+ //#region src/components/progress-group/index.d.ts
3
+ /** One verdict on the bar. */
4
+ export interface ProgressSegment {
5
+ value: number;
6
+ label?: string;
7
+ pigment?: "primary" | "success" | "warning" | "danger" | "info";
8
+ }
9
+ /**
10
+ * One bar, several verdicts: the segments stand shoulder to shoulder,
11
+ * each as wide as its share of the whole and speaking its own pigment;
12
+ * the legend reads them back beneath (swatch, label, value) unless the
13
+ * caller declines it. The whole is the sum of the parts unless the
14
+ * caller brings a larger one — the remainder then shows as groove.
15
+ */
16
+ export interface ProgressGroupProps extends JSX.HTMLAttributes<HTMLDivElement> {
17
+ segments: ProgressSegment[];
18
+ max?: number;
19
+ showLegend?: boolean;
20
+ }
21
+ export declare function ProgressGroup(props: ProgressGroupProps): JSX.Element;
22
+ //#endregion
@@ -0,0 +1,77 @@
1
+ import { injectComponentStyle } from "@bysages/core";
2
+ import { createComponent, effect, insert, mergeProps, setAttribute, setStyleProperty, spread, template } from "solid-js/web";
3
+ import { For, Show, splitProps } from "solid-js";
4
+ //#region src/components/progress-group/index.tsx
5
+ var _tmpl$ = /*#__PURE__*/ template(`<div data-scope=progress-group data-part=legend>`);
6
+ var _tmpl$2 = /*#__PURE__*/ template(`<div><div data-scope=progress-group data-part=track>`);
7
+ var _tmpl$3 = /*#__PURE__*/ template(`<div data-scope=progress-group data-part=segment role=progressbar aria-valuemin=0>`);
8
+ var _tmpl$4 = /*#__PURE__*/ template(`<div data-scope=progress-group data-part=legend-item><span data-scope=progress-group data-part=swatch aria-hidden=true></span><span data-scope=progress-group data-part=legend-label></span><span data-scope=progress-group data-part=legend-value>`);
9
+ function ProgressGroup(props) {
10
+ injectComponentStyle("progress-group");
11
+ const [own, rest] = splitProps(props, [
12
+ "segments",
13
+ "max",
14
+ "showLegend"
15
+ ]);
16
+ const total = () => own.max ?? own.segments.reduce((sum, segment) => sum + segment.value, 0);
17
+ const share = (value) => {
18
+ const whole = total();
19
+ return whole > 0 ? `${value / whole * 100}%` : "0%";
20
+ };
21
+ const nameOf = (segment, index) => segment.label ?? segment.pigment ?? `Segment ${index + 1}`;
22
+ return (() => {
23
+ var _el$ = _tmpl$2(), _el$2 = _el$.firstChild;
24
+ spread(_el$, mergeProps(rest, {
25
+ "data-scope": "progress-group",
26
+ "data-part": "root"
27
+ }), false, true);
28
+ insert(_el$2, createComponent(For, {
29
+ get each() {
30
+ return own.segments;
31
+ },
32
+ children: (segment, index) => (() => {
33
+ var _el$4 = _tmpl$3();
34
+ effect((_p$) => {
35
+ var _v$ = segment.pigment, _v$2 = segment.value, _v$3 = total(), _v$4 = nameOf(segment, index()), _v$5 = share(segment.value);
36
+ _v$ !== _p$.e && setAttribute(_el$4, "data-pigment", _p$.e = _v$);
37
+ _v$2 !== _p$.t && setAttribute(_el$4, "aria-valuenow", _p$.t = _v$2);
38
+ _v$3 !== _p$.a && setAttribute(_el$4, "aria-valuemax", _p$.a = _v$3);
39
+ _v$4 !== _p$.o && setAttribute(_el$4, "aria-label", _p$.o = _v$4);
40
+ _v$5 !== _p$.i && setStyleProperty(_el$4, "inline-size", _p$.i = _v$5);
41
+ return _p$;
42
+ }, {
43
+ e: void 0,
44
+ t: void 0,
45
+ a: void 0,
46
+ o: void 0,
47
+ i: void 0
48
+ });
49
+ return _el$4;
50
+ })()
51
+ }));
52
+ insert(_el$, createComponent(Show, {
53
+ get when() {
54
+ return own.showLegend ?? true;
55
+ },
56
+ get children() {
57
+ var _el$3 = _tmpl$();
58
+ insert(_el$3, createComponent(For, {
59
+ get each() {
60
+ return own.segments;
61
+ },
62
+ children: (segment, index) => (() => {
63
+ var _el$5 = _tmpl$4(), _el$7 = _el$5.firstChild.nextSibling, _el$8 = _el$7.nextSibling;
64
+ insert(_el$7, () => nameOf(segment, index()));
65
+ insert(_el$8, () => String(segment.value));
66
+ effect(() => setAttribute(_el$5, "data-pigment", segment.pigment));
67
+ return _el$5;
68
+ })()
69
+ }));
70
+ return _el$3;
71
+ }
72
+ }), null);
73
+ return _el$;
74
+ })();
75
+ }
76
+ //#endregion
77
+ export { ProgressGroup };
@@ -0,0 +1,8 @@
1
+ import { QrCode as QrCode$1 } from "@ark-ui/solid/qr-code";
2
+ //#region src/components/qr-code/index.d.ts
3
+ /** Ark's QrCode, dressed in the paper-and-ink system: the pattern prints in
4
+ * ink on the page, with an optional paper badge and a seal-cut download
5
+ * control. The API is Ark's own — Root, Frame, Pattern, Overlay,
6
+ * DownloadTrigger. */
7
+ export declare const QrCode: typeof QrCode$1;
8
+ //#endregion
@@ -0,0 +1,11 @@
1
+ import { injectComponentStyle } from "@bysages/core";
2
+ import { QrCode as QrCode$1 } from "@ark-ui/solid/qr-code";
3
+ //#region src/components/qr-code/index.ts
4
+ /** Ark's QrCode, dressed in the paper-and-ink system: the pattern prints in
5
+ * ink on the page, with an optional paper badge and a seal-cut download
6
+ * control. The API is Ark's own — Root, Frame, Pattern, Overlay,
7
+ * DownloadTrigger. */
8
+ const QrCode = QrCode$1;
9
+ injectComponentStyle("qr-code");
10
+ //#endregion
11
+ export { QrCode };
@@ -0,0 +1,15 @@
1
+ import { RadioGroup as RadioGroup$1, RadioGroupRootProps } from "@ark-ui/solid/radio-group";
2
+ //#region src/components/radio-group/index.d.ts
3
+ /** Ark's RadioGroup, dressed in the paper-and-ink system: a column of
4
+ * full-circle seals that fill flat with primary ink when chosen, the dot
5
+ * punched through as paper. The API is Ark's own — Root, Label, Item,
6
+ * ItemText, ItemControl, Indicator, ItemHiddenInput. */
7
+ type RadioGroupOwnProps = {
8
+ /** One rung for the dial; the chosen dot rides it. */
9
+ size?: "sm" | "md" | "lg";
10
+ };
11
+ declare function RadioGroupRoot(props: RadioGroupRootProps & RadioGroupOwnProps): import("solid-js").JSX.Element;
12
+ export declare const RadioGroup: Omit<typeof RadioGroup$1, "Root"> & {
13
+ Root: typeof RadioGroupRoot;
14
+ };
15
+ //#endregion
@@ -0,0 +1,18 @@
1
+ import { injectComponentStyle } from "@bysages/core";
2
+ import { createComponent, mergeProps } from "solid-js/web";
3
+ import { splitProps } from "solid-js";
4
+ import { RadioGroup as RadioGroup$1 } from "@ark-ui/solid/radio-group";
5
+ //#region src/components/radio-group/index.tsx
6
+ function RadioGroupRoot(props) {
7
+ const [own, rest] = splitProps(props, ["size"]);
8
+ return createComponent(RadioGroup$1.Root, mergeProps(rest, { get ["data-size"]() {
9
+ return own.size ?? "md";
10
+ } }));
11
+ }
12
+ const RadioGroup = {
13
+ ...RadioGroup$1,
14
+ Root: RadioGroupRoot
15
+ };
16
+ injectComponentStyle("radio-group");
17
+ //#endregion
18
+ export { RadioGroup };
@@ -0,0 +1,15 @@
1
+ import { RatingGroup as RatingGroup$1, RatingGroupRootProps } from "@ark-ui/solid/rating-group";
2
+ //#region src/components/rating-group/index.d.ts
3
+ /** Ark's RatingGroup, dressed in the paper-and-ink system: a row of quiet
4
+ * seals whose glyphs take the primary pigment as they light up. The API is
5
+ * Ark's own — Root, Label, Control, Item, HiddenInput (plus the Context and
6
+ * ItemContext render helpers). */
7
+ type RatingGroupOwnProps = {
8
+ /** One rung of the control-height ladder every seal stands on. */
9
+ size?: "sm" | "md" | "lg";
10
+ };
11
+ declare function RatingGroupRoot(props: RatingGroupRootProps & RatingGroupOwnProps): import("solid-js").JSX.Element;
12
+ export declare const RatingGroup: Omit<typeof RatingGroup$1, "Root"> & {
13
+ Root: typeof RatingGroupRoot;
14
+ };
15
+ //#endregion