@bysages/solid 0.3.1 → 0.4.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 (284) hide show
  1. package/dist/{ai-response-slzE03wh.mjs → ai-response-CJ-uEAgj.mjs} +14 -6
  2. package/dist/chevron-BHQrYKPM.mjs +8 -0
  3. package/dist/components/accordion/index.d.mts +22 -2
  4. package/dist/components/accordion/index.mjs +69 -3
  5. package/dist/components/affix/index.d.mts +3 -1
  6. package/dist/components/affix/index.mjs +6 -5
  7. package/dist/components/ai/index.d.mts +1 -1
  8. package/dist/components/ai/index.mjs +7 -6
  9. package/dist/components/ai-action/index.d.mts +3 -1
  10. package/dist/components/ai-action/index.mjs +4 -3
  11. package/dist/components/ai-attachments/index.d.mts +8 -4
  12. package/dist/components/ai-attachments/index.mjs +39 -37
  13. package/dist/components/ai-message/index.d.mts +3 -1
  14. package/dist/components/ai-message/index.mjs +4 -3
  15. package/dist/components/ai-prompt-input/index.d.mts +3 -1
  16. package/dist/components/ai-prompt-input/index.mjs +48 -44
  17. package/dist/components/ai-reasoning/index.d.mts +3 -1
  18. package/dist/components/ai-reasoning/index.mjs +5 -4
  19. package/dist/components/ai-response/index.d.mts +3 -1
  20. package/dist/components/ai-response/index.mjs +1 -1
  21. package/dist/components/ai-source/index.d.mts +6 -2
  22. package/dist/components/ai-source/index.mjs +6 -5
  23. package/dist/components/ai-suggestion/index.d.mts +3 -1
  24. package/dist/components/ai-suggestion/index.mjs +4 -3
  25. package/dist/components/ai-tool/index.d.mts +3 -1
  26. package/dist/components/ai-tool/index.mjs +5 -4
  27. package/dist/components/alert/index.mjs +32 -35
  28. package/dist/components/angle-slider/index.d.mts +1 -1
  29. package/dist/components/angle-slider/index.mjs +14 -6
  30. package/dist/components/aspect-ratio/index.d.mts +3 -1
  31. package/dist/components/aspect-ratio/index.mjs +4 -3
  32. package/dist/components/autocomplete/index.d.mts +4 -1
  33. package/dist/components/autocomplete/index.mjs +19 -4
  34. package/dist/components/avatar/index.d.mts +1 -1
  35. package/dist/components/avatar/index.mjs +11 -2
  36. package/dist/components/avatar-group/index.d.mts +3 -1
  37. package/dist/components/avatar-group/index.mjs +4 -3
  38. package/dist/components/back-top/index.d.mts +3 -1
  39. package/dist/components/back-top/index.mjs +10 -6
  40. package/dist/components/badge/index.d.mts +3 -1
  41. package/dist/components/badge/index.mjs +4 -3
  42. package/dist/components/banner/index.mjs +7 -3
  43. package/dist/components/bento/index.mjs +1 -1
  44. package/dist/components/block-ui/index.d.mts +3 -1
  45. package/dist/components/block-ui/index.mjs +4 -3
  46. package/dist/components/breadcrumb/index.mjs +1 -1
  47. package/dist/components/browser/index.mjs +1 -1
  48. package/dist/components/button/index.d.mts +3 -1
  49. package/dist/components/button/index.mjs +4 -3
  50. package/dist/components/button-group/index.mjs +1 -1
  51. package/dist/components/calendar/index.d.mts +3 -1
  52. package/dist/components/calendar/index.mjs +30 -22
  53. package/dist/components/card/index.mjs +1 -1
  54. package/dist/components/carousel/index.d.mts +5 -1
  55. package/dist/components/carousel/index.mjs +14 -2
  56. package/dist/components/cascade-select/index.d.mts +3 -1
  57. package/dist/components/cascade-select/index.mjs +74 -73
  58. package/dist/components/checkbox/index.d.mts +1 -1
  59. package/dist/components/checkbox/index.mjs +14 -6
  60. package/dist/components/checkbox-group/index.d.mts +4 -9
  61. package/dist/components/checkbox-group/index.mjs +66 -69
  62. package/dist/components/chip/index.d.mts +3 -1
  63. package/dist/components/chip/index.mjs +4 -3
  64. package/dist/components/client-only/index.d.mts +7 -2
  65. package/dist/components/client-only/index.mjs +8 -1
  66. package/dist/components/clipboard/index.d.mts +1 -1
  67. package/dist/components/clipboard/index.mjs +14 -6
  68. package/dist/components/collapsible/index.d.mts +15 -1
  69. package/dist/components/collapsible/index.mjs +40 -3
  70. package/dist/components/color-picker/index.d.mts +13 -2
  71. package/dist/components/color-picker/index.mjs +96 -9
  72. package/dist/components/combobox/index.d.mts +24 -1
  73. package/dist/components/combobox/index.mjs +130 -9
  74. package/dist/components/command/index.d.mts +4 -1
  75. package/dist/components/command/index.mjs +14 -2
  76. package/dist/components/comment/index.d.mts +3 -1
  77. package/dist/components/comment/index.mjs +4 -3
  78. package/dist/components/config-provider/index.d.mts +3 -1
  79. package/dist/components/config-provider/index.mjs +3 -2
  80. package/dist/components/container/index.d.mts +3 -1
  81. package/dist/components/container/index.mjs +4 -3
  82. package/dist/components/data-view/index.d.mts +3 -1
  83. package/dist/components/data-view/index.mjs +6 -7
  84. package/dist/components/date-input/index.d.mts +1 -1
  85. package/dist/components/date-input/index.mjs +14 -6
  86. package/dist/components/date-picker/index.d.mts +1 -1
  87. package/dist/components/date-picker/index.mjs +14 -6
  88. package/dist/components/deferred-content/index.d.mts +3 -1
  89. package/dist/components/deferred-content/index.mjs +4 -3
  90. package/dist/components/descriptions/index.d.mts +7 -0
  91. package/dist/components/descriptions/index.mjs +22 -3
  92. package/dist/components/dialog/index.d.mts +17 -1
  93. package/dist/components/dialog/index.mjs +85 -3
  94. package/dist/components/dock/index.mjs +1 -1
  95. package/dist/components/download-trigger/index.d.mts +7 -2
  96. package/dist/components/download-trigger/index.mjs +8 -1
  97. package/dist/components/drawer/index.d.mts +17 -1
  98. package/dist/components/drawer/index.mjs +84 -3
  99. package/dist/components/dynamic-input/index.d.mts +3 -1
  100. package/dist/components/dynamic-input/index.mjs +11 -7
  101. package/dist/components/editable/index.d.mts +1 -1
  102. package/dist/components/editable/index.mjs +14 -6
  103. package/dist/components/ellipsis/index.d.mts +3 -1
  104. package/dist/components/ellipsis/index.mjs +4 -3
  105. package/dist/components/empty/index.mjs +1 -1
  106. package/dist/components/field/index.d.mts +5 -1
  107. package/dist/components/field/index.mjs +14 -2
  108. package/dist/components/fieldset/index.d.mts +5 -1
  109. package/dist/components/fieldset/index.mjs +14 -2
  110. package/dist/components/file-upload/index.d.mts +1 -7
  111. package/dist/components/file-upload/index.mjs +14 -6
  112. package/dist/components/float-button/index.mjs +1 -1
  113. package/dist/components/floating-panel/index.d.mts +5 -1
  114. package/dist/components/floating-panel/index.mjs +14 -2
  115. package/dist/components/focus-trap/index.d.mts +7 -2
  116. package/dist/components/focus-trap/index.mjs +8 -1
  117. package/dist/components/form/index.d.mts +1 -1
  118. package/dist/components/form/index.mjs +11 -5
  119. package/dist/components/frame/index.d.mts +6 -1
  120. package/dist/components/frame/index.mjs +10 -1
  121. package/dist/components/grid/index.d.mts +3 -1
  122. package/dist/components/grid/index.mjs +4 -3
  123. package/dist/components/highlight/index.d.mts +3 -1
  124. package/dist/components/highlight/index.mjs +3 -2
  125. package/dist/components/hover-card/index.d.mts +19 -1
  126. package/dist/components/hover-card/index.mjs +92 -3
  127. package/dist/components/icon/index.d.mts +8 -7
  128. package/dist/components/icon/index.mjs +5 -4
  129. package/dist/components/image/index.d.mts +4 -2
  130. package/dist/components/image/index.mjs +35 -34
  131. package/dist/components/image-cropper/index.d.mts +5 -1
  132. package/dist/components/image-cropper/index.mjs +14 -2
  133. package/dist/components/image-viewer/index.d.mts +2 -23
  134. package/dist/components/image-viewer/index.mjs +3 -159
  135. package/dist/components/input/index.d.mts +3 -1
  136. package/dist/components/input/index.mjs +1 -1
  137. package/dist/components/input-group/index.mjs +1 -1
  138. package/dist/components/json-tree-view/index.d.mts +5 -4
  139. package/dist/components/json-tree-view/index.mjs +16 -19
  140. package/dist/components/kbd/index.d.mts +3 -1
  141. package/dist/components/kbd/index.mjs +4 -3
  142. package/dist/components/layout/index.mjs +1 -1
  143. package/dist/components/link/index.d.mts +3 -1
  144. package/dist/components/link/index.mjs +4 -3
  145. package/dist/components/list/index.mjs +1 -1
  146. package/dist/components/listbox/index.d.mts +1 -1
  147. package/dist/components/listbox/index.mjs +14 -6
  148. package/dist/components/marquee/index.d.mts +5 -1
  149. package/dist/components/marquee/index.mjs +14 -2
  150. package/dist/components/masonry/index.d.mts +3 -1
  151. package/dist/components/masonry/index.mjs +4 -3
  152. package/dist/components/media-player/index.d.mts +2 -0
  153. package/dist/components/media-player/index.mjs +2 -0
  154. package/dist/components/mentions/index.d.mts +1 -1
  155. package/dist/components/mentions/index.mjs +2 -2
  156. package/dist/components/menu/index.d.mts +21 -1
  157. package/dist/components/menu/index.mjs +63 -6
  158. package/dist/components/menubar/index.d.mts +3 -1
  159. package/dist/components/menubar/index.mjs +31 -10
  160. package/dist/components/meter/index.mjs +1 -1
  161. package/dist/components/navigation-menu/index.d.mts +5 -1
  162. package/dist/components/navigation-menu/index.mjs +14 -2
  163. package/dist/components/number-input/index.d.mts +1 -1
  164. package/dist/components/number-input/index.mjs +14 -6
  165. package/dist/components/order-list/index.d.mts +3 -1
  166. package/dist/components/order-list/index.mjs +68 -64
  167. package/dist/components/page-header/index.mjs +1 -1
  168. package/dist/components/pagination/index.d.mts +1 -1
  169. package/dist/components/pagination/index.mjs +14 -6
  170. package/dist/components/password-input/index.d.mts +1 -1
  171. package/dist/components/password-input/index.mjs +14 -6
  172. package/dist/components/pin-input/index.d.mts +1 -1
  173. package/dist/components/pin-input/index.mjs +14 -6
  174. package/dist/components/popconfirm/index.d.mts +3 -1
  175. package/dist/components/popconfirm/index.mjs +17 -9
  176. package/dist/components/popover/index.d.mts +19 -1
  177. package/dist/components/popover/index.mjs +92 -3
  178. package/dist/components/presence/index.d.mts +10 -2
  179. package/dist/components/presence/index.mjs +9 -1
  180. package/dist/components/progress/index.d.mts +1 -1
  181. package/dist/components/progress/index.mjs +14 -6
  182. package/dist/components/progress-group/index.d.mts +3 -1
  183. package/dist/components/progress-group/index.mjs +5 -4
  184. package/dist/components/qr-code/index.d.mts +5 -1
  185. package/dist/components/qr-code/index.mjs +14 -2
  186. package/dist/components/radio-group/index.d.mts +1 -1
  187. package/dist/components/radio-group/index.mjs +14 -6
  188. package/dist/components/rating-group/index.d.mts +2 -2
  189. package/dist/components/rating-group/index.mjs +14 -6
  190. package/dist/components/result/index.d.mts +1 -1
  191. package/dist/components/result/index.mjs +6 -4
  192. package/dist/components/scroll-area/index.d.mts +5 -1
  193. package/dist/components/scroll-area/index.mjs +14 -2
  194. package/dist/components/segment-group/index.d.mts +1 -1
  195. package/dist/components/segment-group/index.mjs +12 -7
  196. package/dist/components/select/index.d.mts +2 -2
  197. package/dist/components/select/index.mjs +1 -1
  198. package/dist/components/separator/index.d.mts +3 -1
  199. package/dist/components/separator/index.mjs +4 -3
  200. package/dist/components/signature-pad/index.d.mts +5 -1
  201. package/dist/components/signature-pad/index.mjs +14 -2
  202. package/dist/components/skeleton/index.d.mts +3 -1
  203. package/dist/components/skeleton/index.mjs +4 -3
  204. package/dist/components/slider/index.d.mts +1 -1
  205. package/dist/components/slider/index.mjs +14 -6
  206. package/dist/components/spinner/index.d.mts +3 -1
  207. package/dist/components/spinner/index.mjs +4 -3
  208. package/dist/components/split-button/index.d.mts +3 -1
  209. package/dist/components/split-button/index.mjs +15 -4
  210. package/dist/components/splitter/index.d.mts +5 -1
  211. package/dist/components/splitter/index.mjs +14 -2
  212. package/dist/components/spotlight/index.d.mts +3 -1
  213. package/dist/components/spotlight/index.mjs +4 -3
  214. package/dist/components/stack/index.d.mts +3 -1
  215. package/dist/components/stack/index.mjs +7 -6
  216. package/dist/components/stat/index.mjs +1 -1
  217. package/dist/components/steps/index.d.mts +20 -3
  218. package/dist/components/steps/index.mjs +67 -8
  219. package/dist/components/swap/index.d.mts +5 -1
  220. package/dist/components/swap/index.mjs +14 -2
  221. package/dist/components/switch/index.d.mts +1 -1
  222. package/dist/components/switch/index.mjs +14 -6
  223. package/dist/components/table/index.d.mts +3 -1
  224. package/dist/components/table/index.mjs +191 -153
  225. package/dist/components/tabs/index.d.mts +20 -2
  226. package/dist/components/tabs/index.mjs +60 -4
  227. package/dist/components/tags-input/index.d.mts +1 -1
  228. package/dist/components/tags-input/index.mjs +14 -6
  229. package/dist/components/terminal/index.d.mts +3 -1
  230. package/dist/components/terminal/index.mjs +4 -3
  231. package/dist/components/textarea/index.d.mts +3 -1
  232. package/dist/components/textarea/index.mjs +4 -3
  233. package/dist/components/timeline/index.mjs +1 -1
  234. package/dist/components/timer/index.d.mts +5 -1
  235. package/dist/components/timer/index.mjs +14 -2
  236. package/dist/components/toast/index.d.mts +8 -2
  237. package/dist/components/toast/index.mjs +15 -3
  238. package/dist/components/toc/index.d.mts +11 -2
  239. package/dist/components/toc/index.mjs +1 -1
  240. package/dist/components/toggle/index.d.mts +5 -1
  241. package/dist/components/toggle/index.mjs +14 -2
  242. package/dist/components/toggle-group/index.d.mts +1 -1
  243. package/dist/components/toggle-group/index.mjs +14 -6
  244. package/dist/components/toolbar/index.d.mts +3 -1
  245. package/dist/components/toolbar/index.mjs +4 -3
  246. package/dist/components/tooltip/index.d.mts +16 -1
  247. package/dist/components/tooltip/index.mjs +56 -3
  248. package/dist/components/tour/index.d.mts +16 -3
  249. package/dist/components/tour/index.mjs +75 -10
  250. package/dist/components/transfer/index.d.mts +3 -1
  251. package/dist/components/transfer/index.mjs +55 -51
  252. package/dist/components/tree-select/index.d.mts +3 -1
  253. package/dist/components/tree-select/index.mjs +38 -31
  254. package/dist/components/tree-view/index.d.mts +1 -8
  255. package/dist/components/tree-view/index.mjs +17 -22
  256. package/dist/components/typography/index.mjs +1 -1
  257. package/dist/components/user/index.d.mts +3 -1
  258. package/dist/components/user/index.mjs +9 -3
  259. package/dist/components/virtual-list/index.d.mts +3 -1
  260. package/dist/components/virtual-list/index.mjs +14 -10
  261. package/dist/components/watermark/index.d.mts +3 -1
  262. package/dist/components/watermark/index.mjs +5 -4
  263. package/dist/element-dGIhOTJ6.mjs +16 -0
  264. package/dist/family-Cmd8HEyK.mjs +11 -0
  265. package/dist/icon-DTqmJCd5.mjs +48 -0
  266. package/dist/id-2ygNzPHF.mjs +12 -0
  267. package/dist/image-viewer-19s75Hz_.mjs +228 -0
  268. package/dist/{index-B1xiJ5ki.d.mts → index-B1-quIrl.d.mts} +6 -2
  269. package/dist/{index-DDX7x8aT.d.mts → index-DEArHiFI.d.mts} +16 -7
  270. package/dist/{index-IfofF-SW.d.mts → index-DVc1L_zt.d.mts} +191 -112
  271. package/dist/index-DhripUtf.d.mts +39 -0
  272. package/dist/{index-YPUiqD3n.d.mts → index-ID48LCMU.d.mts} +28 -2
  273. package/dist/index-wW28BYf1.d.mts +124 -0
  274. package/dist/index.d.mts +23 -22
  275. package/dist/index.mjs +13 -12
  276. package/dist/{input-DoFQ7RXh.mjs → input-BL3N3L8g.mjs} +4 -3
  277. package/dist/media-player-yF7KVUxM.mjs +796 -0
  278. package/dist/{mentions-f5Js_2W7.mjs → mentions-DKUG7eHt.mjs} +68 -52
  279. package/dist/select-DI7pFspF.mjs +292 -0
  280. package/dist/{toc-CZmYEaQR.mjs → toc-CqvGOp34.mjs} +13 -3
  281. package/package.json +10 -82
  282. package/dist/chevron-D5RzcayK.mjs +0 -9
  283. package/dist/index-DdsnfV4f.d.mts +0 -16
  284. package/dist/select-CX6OuQlU.mjs +0 -123
@@ -1,3 +1,4 @@
1
+ import { Checkbox } from "../checkbox/index.mjs";
1
2
  import { JSX } from "solid-js";
2
3
  //#region src/components/transfer/index.d.ts
3
4
  export interface TransferItem {
@@ -20,5 +21,6 @@ export interface TransferProps extends JSX.HTMLAttributes<HTMLDivElement> {
20
21
  * `data` stays on the left. `searchable` adds a filter line to each
21
22
  * panel.
22
23
  */
23
- export declare function Transfer(props: TransferProps): JSX.Element;
24
+ declare function TransferImpl(props: TransferProps): JSX.Element;
25
+ export declare const Transfer: typeof TransferImpl & typeof Checkbox;
24
26
  //#endregion
@@ -1,25 +1,24 @@
1
+ import { t as defineFamily } from "../../family-Cmd8HEyK.mjs";
2
+ import { r as iconNode } from "../../icon-DTqmJCd5.mjs";
3
+ import { t as useElementId } from "../../id-2ygNzPHF.mjs";
1
4
  import { Button } from "../button/index.mjs";
2
5
  import { n as useComponentMessages, t as formatComponentMessage } from "../../use-component-messages-C4SCVYjD.mjs";
3
- import { t as Input } from "../../input-DoFQ7RXh.mjs";
4
- import { injectComponentStyle } from "@bysages/core";
6
+ import { t as Input } from "../../input-BL3N3L8g.mjs";
7
+ import { Checkbox as Checkbox$1 } from "../checkbox/index.mjs";
5
8
  import { createComponent, insert, setAttribute, spread, template } from "@solidjs/web";
9
+ import { injectComponentStyle } from "@bysages/core/styling";
6
10
  import { For, Show, createSignal, splitProps } from "solid-js";
7
11
  import { Checkbox } from "@ark-ui/solid/checkbox";
8
12
  //#region src/components/transfer/index.tsx
9
- var _tmpl$ = /* @__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">`);
10
- var _tmpl$2 = /* @__PURE__ */ template(`<svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=1.75 stroke-linecap=round stroke-linejoin=round aria-hidden=true><path>`);
11
- var _tmpl$3 = /* @__PURE__ */ template(`<div data-scope=transfer data-part=search>`);
12
- var _tmpl$4 = /* @__PURE__ */ template(`<div data-scope=transfer data-part=panel><div data-scope=transfer data-part=head><span data-scope=transfer data-part=title></span><span data-scope=transfer data-part=count></span></div><div data-scope=transfer data-part=list>`);
13
- var _tmpl$5 = /* @__PURE__ */ template(`<p data-scope=transfer data-part=empty>Nothing here`);
14
- var _tmpl$6 = /* @__PURE__ */ template(`<div><div data-scope=transfer data-part=operations><!><!></div><!>`);
15
- function checkGlyph() {
16
- return _tmpl$();
13
+ var _tmpl$ = /* @__PURE__ */ template(`<div data-scope=transfer data-part=search>`);
14
+ var _tmpl$2 = /* @__PURE__ */ template(`<div data-scope=transfer data-part=panel><div data-scope=transfer data-part=head><span data-scope=transfer data-part=title></span><span data-scope=transfer data-part=count></span></div><div data-scope=transfer data-part=list>`);
15
+ var _tmpl$3 = /* @__PURE__ */ template(`<p data-scope=transfer data-part=empty>Nothing here`);
16
+ var _tmpl$4 = /* @__PURE__ */ template(`<div><div data-scope=transfer data-part=operations><!><!></div><!>`);
17
+ function checkIcon() {
18
+ return iconNode("check");
17
19
  }
18
- function arrowGlyph(direction) {
19
- var _el$2 = _tmpl$2();
20
- var _el$3 = _el$2.firstChild;
21
- setAttribute(_el$3, "d", direction === "right" ? "M5 12h14m-6-6 6 6-6 6" : "M19 12H5m6-6-6 6 6 6");
22
- return _el$2;
20
+ function arrowIcon(direction) {
21
+ return direction === "right" ? iconNode("arrow-right") : iconNode("arrow-left");
23
22
  }
24
23
  /**
25
24
  * Two ledgers and a crossing: items sit in the source column until the
@@ -28,7 +27,7 @@ function arrowGlyph(direction) {
28
27
  * `data` stays on the left. `searchable` adds a filter line to each
29
28
  * panel.
30
29
  */
31
- function Transfer(props) {
30
+ function TransferImpl(props) {
32
31
  const messages = useComponentMessages();
33
32
  injectComponentStyle("transfer");
34
33
  injectComponentStyle("checkbox");
@@ -40,6 +39,7 @@ function Transfer(props) {
40
39
  "disabled",
41
40
  "onValueChange"
42
41
  ]);
42
+ const id = useElementId("transfer");
43
43
  const [checkedSource, setCheckedSource] = createSignal(/* @__PURE__ */ new Set());
44
44
  const [checkedTarget, setCheckedTarget] = createSignal(/* @__PURE__ */ new Set());
45
45
  const [sourceQuery, setSourceQuery] = createSignal("");
@@ -62,23 +62,23 @@ function Transfer(props) {
62
62
  own.onValueChange?.(next);
63
63
  }
64
64
  function panel(side, title, query, setQuery, checked, setChecked, items) {
65
- var _el$4 = _tmpl$4();
66
- var _el$5 = _el$4.firstChild;
67
- var _el$6 = _el$5.firstChild;
68
- var _el$7 = _el$6.nextSibling;
69
- var _el$9 = _el$5.nextSibling;
70
- setAttribute(_el$4, "data-side", side);
71
- insert(_el$6, title);
72
- insert(_el$7, () => {
65
+ var _el$ = _tmpl$2();
66
+ var _el$2 = _el$.firstChild;
67
+ var _el$3 = _el$2.firstChild;
68
+ var _el$4 = _el$3.nextSibling;
69
+ var _el$6 = _el$2.nextSibling;
70
+ setAttribute(_el$, "data-side", side);
71
+ insert(_el$3, title);
72
+ insert(_el$4, () => {
73
73
  return String(items.length);
74
74
  });
75
- insert(_el$4, createComponent(Show, {
75
+ insert(_el$, createComponent(Show, {
76
76
  get when() {
77
77
  return own.searchable;
78
78
  },
79
79
  get children() {
80
- var _el$8 = _tmpl$3();
81
- insert(_el$8, createComponent(Input, {
80
+ var _el$5 = _tmpl$();
81
+ insert(_el$5, createComponent(Input, {
82
82
  size: "sm",
83
83
  get value() {
84
84
  return query();
@@ -91,20 +91,23 @@ function Transfer(props) {
91
91
  return formatComponentMessage(messages().transfer.filter, { name: title });
92
92
  }
93
93
  }));
94
- return _el$8;
94
+ return _el$5;
95
95
  }
96
- }), _el$9);
97
- insert(_el$9, createComponent(Show, {
96
+ }), _el$6);
97
+ insert(_el$6, createComponent(Show, {
98
98
  get when() {
99
99
  return items.length > 0;
100
100
  },
101
101
  get fallback() {
102
- return _tmpl$5();
102
+ return _tmpl$3();
103
103
  },
104
104
  get children() {
105
105
  return createComponent(For, {
106
106
  each: items,
107
- children: (item) => createComponent(Checkbox.Root, {
107
+ children: (item, index) => createComponent(Checkbox.Root, {
108
+ get id() {
109
+ return `${id()}-${index()}`;
110
+ },
108
111
  get checked() {
109
112
  return checked().has(item.value);
110
113
  },
@@ -116,7 +119,7 @@ function Transfer(props) {
116
119
  return [
117
120
  createComponent(Checkbox.Control, { get children() {
118
121
  return createComponent(Checkbox.Indicator, { get children() {
119
- return checkGlyph();
122
+ return checkIcon();
120
123
  } });
121
124
  } }),
122
125
  createComponent(Checkbox.Label, {
@@ -132,21 +135,21 @@ function Transfer(props) {
132
135
  });
133
136
  }
134
137
  }));
135
- return _el$4;
138
+ return _el$;
136
139
  }
137
- var _el$11 = _tmpl$6();
138
- var _el$12 = _el$11.firstChild;
139
- var _el$13 = _el$12.firstChild;
140
- var _el$14 = _el$13.nextSibling;
141
- var _el$15 = _el$12.nextSibling;
142
- spread(_el$11, [rest, {
140
+ var _el$8 = _tmpl$4();
141
+ var _el$9 = _el$8.firstChild;
142
+ var _el$10 = _el$9.firstChild;
143
+ var _el$11 = _el$10.nextSibling;
144
+ var _el$12 = _el$9.nextSibling;
145
+ spread(_el$8, [rest, {
143
146
  "data-scope": "transfer",
144
147
  "data-part": "root"
145
148
  }], true);
146
- insert(_el$11, () => {
149
+ insert(_el$8, () => {
147
150
  return panel("source", own.titles?.[0] ?? "Source", sourceQuery, setSourceQuery, checkedSource, setCheckedSource, panelItems(own.data, false, sourceQuery()));
148
- }, _el$12);
149
- insert(_el$12, createComponent(Button, {
151
+ }, _el$9);
152
+ insert(_el$9, createComponent(Button, {
150
153
  variant: "outline",
151
154
  size: "sm",
152
155
  square: true,
@@ -158,10 +161,10 @@ function Transfer(props) {
158
161
  },
159
162
  onClick: () => move(true),
160
163
  get children() {
161
- return arrowGlyph("right");
164
+ return arrowIcon("right");
162
165
  }
163
- }), _el$13);
164
- insert(_el$12, createComponent(Button, {
166
+ }), _el$10);
167
+ insert(_el$9, createComponent(Button, {
165
168
  variant: "outline",
166
169
  size: "sm",
167
170
  square: true,
@@ -173,13 +176,14 @@ function Transfer(props) {
173
176
  },
174
177
  onClick: () => move(false),
175
178
  get children() {
176
- return arrowGlyph("left");
179
+ return arrowIcon("left");
177
180
  }
178
- }), _el$14);
179
- insert(_el$11, () => {
181
+ }), _el$11);
182
+ insert(_el$8, () => {
180
183
  return panel("target", own.titles?.[1] ?? "Target", targetQuery, setTargetQuery, checkedTarget, setCheckedTarget, panelItems(own.data, true, targetQuery()));
181
- }, _el$15);
182
- return _el$11;
184
+ }, _el$12);
185
+ return _el$8;
183
186
  }
187
+ const Transfer = defineFamily(TransferImpl, Checkbox$1);
184
188
  //#endregion
185
189
  export { Transfer };
@@ -1,3 +1,4 @@
1
+ import { Popover } from "../popover/index.mjs";
1
2
  import { JSX } from "solid-js";
2
3
  //#region src/components/tree-select/index.d.ts
3
4
  export interface TreeSelectNode {
@@ -24,5 +25,6 @@ export interface TreeSelectProps extends JSX.HTMLAttributes<HTMLDivElement> {
24
25
  * `value`. `filterable` puts a filter line at the top of the vessel;
25
26
  * matches keep their ancestors and the branches fan open.
26
27
  */
27
- export declare function TreeSelect(props: TreeSelectProps): JSX.Element;
28
+ declare function TreeSelectImpl(props: TreeSelectProps): JSX.Element;
29
+ export declare const TreeSelect: typeof TreeSelectImpl & typeof Popover;
28
30
  //#endregion
@@ -1,21 +1,23 @@
1
+ import { t as defineFamily } from "../../family-Cmd8HEyK.mjs";
2
+ import { r as iconNode } from "../../icon-DTqmJCd5.mjs";
3
+ import { t as useElementId } from "../../id-2ygNzPHF.mjs";
1
4
  import { n as useComponentMessages } from "../../use-component-messages-C4SCVYjD.mjs";
2
- import { t as Input } from "../../input-DoFQ7RXh.mjs";
3
- import { injectComponentStyle } from "@bysages/core";
5
+ import { t as Input } from "../../input-BL3N3L8g.mjs";
6
+ import { Popover as Popover$1 } from "../popover/index.mjs";
4
7
  import { createComponent, insert, memo, mergeProps, spread, template } from "@solidjs/web";
8
+ import { injectComponentStyle } from "@bysages/core/styling";
5
9
  import { For, Show, createMemo, createSignal, splitProps } from "solid-js";
6
10
  import { Portal } from "solid-js/web";
7
11
  import { useFilter } from "@ark-ui/solid/locale";
8
12
  import { Popover } from "@ark-ui/solid/popover";
9
13
  import { TreeView, createTreeCollection } from "@ark-ui/solid/tree-view";
10
14
  //#region src/components/tree-select/index.tsx
11
- 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="m9 18 6-6-6-6">`);
12
- var _tmpl$2 = /* @__PURE__ */ template(`<span>`);
13
- var _tmpl$3 = /* @__PURE__ */ template(`<div data-scope=tree-select data-part=search>`);
14
- var _tmpl$4 = /* @__PURE__ */ template(`<div data-scope=tree-select data-part=body>`);
15
- var _tmpl$5 = /* @__PURE__ */ template(`<button><span data-part=chevron aria-hidden=true>`);
16
- var _tmpl$6 = /* @__PURE__ */ template(`<p data-scope=tree-select data-part=empty>Nothing matches`);
15
+ var _tmpl$ = /* @__PURE__ */ template(`<div data-scope=tree-select data-part=search>`);
16
+ var _tmpl$2 = /* @__PURE__ */ template(`<div data-scope=tree-select data-part=body>`);
17
+ var _tmpl$3 = /* @__PURE__ */ template(`<button><span data-part=chevron aria-hidden=true>`);
18
+ var _tmpl$4 = /* @__PURE__ */ template(`<p data-scope=tree-select data-part=empty>Nothing matches`);
17
19
  function chevron() {
18
- return _tmpl$();
20
+ return iconNode("chevron-right");
19
21
  }
20
22
  /**
21
23
  * A tree behind a field: the control reads like an input, the vessel
@@ -24,10 +26,11 @@ function chevron() {
24
26
  * `value`. `filterable` puts a filter line at the top of the vessel;
25
27
  * matches keep their ancestors and the branches fan open.
26
28
  */
27
- function TreeSelect(props) {
29
+ function TreeSelectImpl(props) {
28
30
  const messages = useComponentMessages();
29
31
  injectComponentStyle("tree-select");
30
32
  injectComponentStyle("tree-view");
33
+ const id = useElementId("tree-select", () => rest.id);
31
34
  const [own, rest] = splitProps(props, [
32
35
  "value",
33
36
  "data",
@@ -97,14 +100,11 @@ function TreeSelect(props) {
97
100
  return rowProps.node.children;
98
101
  },
99
102
  get fallback() {
100
- return createComponent(TreeView.Item, { asChild: (propsFn) => (() => {
101
- var _el$2 = _tmpl$2();
102
- spread(_el$2, propsFn, true);
103
- insert(_el$2, createComponent(TreeView.ItemText, { get children() {
103
+ return createComponent(TreeView.Item, { get children() {
104
+ return createComponent(TreeView.ItemText, { get children() {
104
105
  return rowProps.node.label;
105
- } }));
106
- return _el$2;
107
- })() });
106
+ } });
107
+ } });
108
108
  },
109
109
  get children() {
110
110
  return createComponent(TreeView.Branch, { get children() {
@@ -134,6 +134,9 @@ function TreeSelect(props) {
134
134
  });
135
135
  }
136
136
  return createComponent(Popover.Root, mergeProps(rest, {
137
+ get id() {
138
+ return id();
139
+ },
137
140
  get open() {
138
141
  return open();
139
142
  },
@@ -147,9 +150,9 @@ function TreeSelect(props) {
147
150
  },
148
151
  get children() {
149
152
  return [createComponent(Popover.Trigger, { asChild: (propsFn) => (() => {
150
- var _el$5 = _tmpl$5();
151
- var _el$6 = _el$5.firstChild;
152
- spread(_el$5, [propsFn, {
153
+ var _el$3 = _tmpl$3();
154
+ var _el$4 = _el$3.firstChild;
155
+ spread(_el$3, [propsFn, {
153
156
  type: "button",
154
157
  "data-scope": "tree-select",
155
158
  "data-part": "control",
@@ -166,11 +169,11 @@ function TreeSelect(props) {
166
169
  return own.disabled;
167
170
  }
168
171
  }], true);
169
- insert(_el$5, () => {
172
+ insert(_el$3, () => {
170
173
  return label() ?? own.placeholder ?? "Select…";
171
- }, _el$6);
172
- insert(_el$6, chevron);
173
- return _el$5;
174
+ }, _el$4);
175
+ insert(_el$4, chevron);
176
+ return _el$3;
174
177
  })() }), createComponent(Portal, { get children() {
175
178
  return createComponent(Popover.Positioner, { get children() {
176
179
  return createComponent(Popover.Content, {
@@ -185,8 +188,8 @@ function TreeSelect(props) {
185
188
  return own.filterable;
186
189
  },
187
190
  get children() {
188
- var _el$3 = _tmpl$3();
189
- insert(_el$3, createComponent(Input, {
191
+ var _el$ = _tmpl$();
192
+ insert(_el$, createComponent(Input, {
190
193
  size: "sm",
191
194
  get value() {
192
195
  return query();
@@ -199,19 +202,22 @@ function TreeSelect(props) {
199
202
  return messages().select.filter;
200
203
  }
201
204
  }));
202
- return _el$3;
205
+ return _el$;
203
206
  }
204
207
  }), (() => {
205
- var _el$4 = _tmpl$4();
206
- insert(_el$4, createComponent(Show, {
208
+ var _el$2 = _tmpl$2();
209
+ insert(_el$2, createComponent(Show, {
207
210
  get when() {
208
211
  return (visibleCollection().rootNode.children ?? []).length > 0;
209
212
  },
210
213
  get fallback() {
211
- return _tmpl$6();
214
+ return _tmpl$4();
212
215
  },
213
216
  get children() {
214
217
  return createComponent(TreeView.Root, mergeProps({
218
+ get id() {
219
+ return `${id()}-tree`;
220
+ },
215
221
  get collection() {
216
222
  return visibleCollection();
217
223
  },
@@ -243,7 +249,7 @@ function TreeSelect(props) {
243
249
  }));
244
250
  }
245
251
  }));
246
- return _el$4;
252
+ return _el$2;
247
253
  })()];
248
254
  }
249
255
  });
@@ -252,5 +258,6 @@ function TreeSelect(props) {
252
258
  }
253
259
  }));
254
260
  }
261
+ const TreeSelect = defineFamily(TreeSelectImpl, Popover$1);
255
262
  //#endregion
256
263
  export { TreeSelect };
@@ -1,4 +1,3 @@
1
- import { ComponentProps } from "solid-js";
2
1
  import { TreeNode, TreeView as TreeView$1, TreeViewRootProps } from "@ark-ui/solid/tree-view";
3
2
  //#region src/components/tree-view/index.d.ts
4
3
  /** Ark's TreeView, dressed in the paper-and-ink system: quiet rows where
@@ -13,13 +12,7 @@ type TreeViewOwnProps = {
13
12
  size?: "sm" | "md" | "lg";
14
13
  };
15
14
  declare function TreeViewRoot<T extends TreeNode>(props: TreeViewRootProps<T> & TreeViewOwnProps): import("solid-js").JSX.Element;
16
- /** The node checkbox rides inside the branch control; the branch
17
- * itself answers the keyboard, so the checkbox stays visual only. */
18
- declare function TreeViewNodeCheckbox(props: ComponentProps<typeof TreeView$1.NodeCheckbox>): import("solid-js").JSX.Element;
19
- declare function TreeViewBranchIndicator(props: ComponentProps<typeof TreeView$1.BranchIndicator>): import("solid-js").JSX.Element;
20
- export declare const TreeView: Omit<typeof TreeView$1, "Root" | "NodeCheckbox" | "BranchIndicator"> & {
15
+ export declare const TreeView: typeof TreeViewRoot & Omit<typeof TreeView$1, "Root"> & {
21
16
  Root: typeof TreeViewRoot;
22
- NodeCheckbox: typeof TreeViewNodeCheckbox;
23
- BranchIndicator: typeof TreeViewBranchIndicator;
24
17
  };
25
18
  //#endregion
@@ -1,16 +1,23 @@
1
- import { injectComponentStyle } from "@bysages/core";
2
- import { createComponent, effect, mergeProps, setAttribute, template } from "@solidjs/web";
1
+ import { t as defineFamily } from "../../family-Cmd8HEyK.mjs";
2
+ import { r as iconNode } from "../../icon-DTqmJCd5.mjs";
3
+ import { t as useElementId } from "../../id-2ygNzPHF.mjs";
4
+ import { createComponent, mergeProps } from "@solidjs/web";
5
+ import { injectComponentStyle } from "@bysages/core/styling";
3
6
  import { splitProps } from "solid-js";
4
- import { chevron_right } from "@bysages/icons";
5
7
  import { TreeView as TreeView$1 } from "@ark-ui/solid/tree-view";
6
8
  //#region src/components/tree-view/index.tsx
7
- var _tmpl$ = /* @__PURE__ */ template(`<svg aria-hidden=true>`);
8
9
  const ArkRoot = TreeView$1.Root;
9
10
  function TreeViewRoot(props) {
10
11
  const [own, rest] = splitProps(props, ["size"]);
11
- return createComponent(ArkRoot, mergeProps(rest, { get "data-size"() {
12
- return own.size ?? "md";
13
- } }));
12
+ const id = useElementId("tree-view", () => rest.id);
13
+ return createComponent(ArkRoot, mergeProps(rest, {
14
+ get id() {
15
+ return id();
16
+ },
17
+ get "data-size"() {
18
+ return own.size ?? "md";
19
+ }
20
+ }));
14
21
  }
15
22
  /** The node checkbox rides inside the branch control; the branch
16
23
  * itself answers the keyboard, so the checkbox stays visual only. */
@@ -19,27 +26,15 @@ function TreeViewNodeCheckbox(props) {
19
26
  }
20
27
  function TreeViewBranchIndicator(props) {
21
28
  return createComponent(TreeView$1.BranchIndicator, mergeProps(props, { get children() {
22
- return props.children ?? (() => {
23
- var _el$ = _tmpl$();
24
- effect(() => {
25
- return {
26
- e: `0 0 ${chevron_right.width} ${chevron_right.height}`,
27
- t: chevron_right.body
28
- };
29
- }, ({ e, t }, _p$) => {
30
- e !== _p$?.e && setAttribute(_el$, "viewBox", e);
31
- t !== _p$?.t && (_el$.innerHTML = t);
32
- });
33
- return _el$;
34
- })();
29
+ return props.children ?? iconNode("chevron-right");
35
30
  } }));
36
31
  }
37
- const TreeView = {
32
+ const TreeView = defineFamily(TreeViewRoot, {
38
33
  ...TreeView$1,
39
34
  Root: TreeViewRoot,
40
35
  NodeCheckbox: TreeViewNodeCheckbox,
41
36
  BranchIndicator: TreeViewBranchIndicator
42
- };
37
+ });
43
38
  injectComponentStyle("tree-view");
44
39
  //#endregion
45
40
  export { TreeView };
@@ -1,5 +1,5 @@
1
- import { injectComponentStyle } from "@bysages/core";
2
1
  import { createComponent, mergeProps } from "@solidjs/web";
2
+ import { injectComponentStyle } from "@bysages/core/styling";
3
3
  //#region src/components/typography/index.tsx
4
4
  /** The typographic voices, named so prose can ask for one: display and
5
5
  * heading ride the song-serif, the rest ride the hei. Nothing here is
@@ -15,5 +15,7 @@ export interface UserProps extends JSX.HTMLAttributes<HTMLDivElement> {
15
15
  * quiet echo beneath. The mark is the Avatar itself — one component
16
16
  * renders it here, so every size and shape the Avatar knows the user
17
17
  * inherits; this row only lays the words out beside it. */
18
- export declare function User(props: UserProps): JSX.Element;
18
+ export declare const User: ((props: UserProps) => JSX.Element) & {
19
+ Root: (props: UserProps) => JSX.Element;
20
+ };
19
21
  //#endregion
@@ -1,5 +1,7 @@
1
- import { injectComponentStyle } from "@bysages/core";
1
+ import { n as withSelfRoot } from "../../family-Cmd8HEyK.mjs";
2
+ import { t as useElementId } from "../../id-2ygNzPHF.mjs";
2
3
  import { createComponent, insert, memo, spread, template } from "@solidjs/web";
4
+ import { injectComponentStyle } from "@bysages/core/styling";
3
5
  import { splitProps } from "solid-js";
4
6
  import { Avatar } from "@ark-ui/solid/avatar";
5
7
  //#region src/components/user/index.tsx
@@ -9,8 +11,9 @@ var _tmpl$2 = /* @__PURE__ */ template(`<span data-scope=user data-part=descript
9
11
  * quiet echo beneath. The mark is the Avatar itself — one component
10
12
  * renders it here, so every size and shape the Avatar knows the user
11
13
  * inherits; this row only lays the words out beside it. */
12
- function User(props) {
14
+ const User = withSelfRoot(function User(props) {
13
15
  injectComponentStyle("user");
16
+ const id = useElementId("user-avatar");
14
17
  const [own, rest] = splitProps(props, [
15
18
  "name",
16
19
  "description",
@@ -30,6 +33,9 @@ function User(props) {
30
33
  "data-part": "root"
31
34
  }], true);
32
35
  insert(_el$, createComponent(Avatar.Root, {
36
+ get id() {
37
+ return id();
38
+ },
33
39
  get "data-size"() {
34
40
  return own.size;
35
41
  },
@@ -63,6 +69,6 @@ function User(props) {
63
69
  return own.children;
64
70
  }, _el$5);
65
71
  return _el$;
66
- }
72
+ });
67
73
  //#endregion
68
74
  export { User };
@@ -13,5 +13,7 @@ export interface VirtualListProps extends JSX.HTMLAttributes<HTMLDivElement> {
13
13
  * scroll length by a spacer sized from the row height, the rows
14
14
  * themselves are positioned against it — a ten-thousand-row list
15
15
  * costs the DOM a window, not the ledger. */
16
- export declare function VirtualList(props: VirtualListProps): JSX.Element;
16
+ export declare const VirtualList: ((props: VirtualListProps) => JSX.Element) & {
17
+ Root: (props: VirtualListProps) => JSX.Element;
18
+ };
17
19
  //#endregion
@@ -1,15 +1,19 @@
1
- import { injectComponentStyle } from "@bysages/core";
1
+ import { n as withSelfRoot } from "../../family-Cmd8HEyK.mjs";
2
2
  import { createComponent, effect, insert, ref, setStyleProperty, spread, template } from "@solidjs/web";
3
+ import { injectComponentStyle } from "@bysages/core/styling";
3
4
  import { For, createSignal, splitProps } from "solid-js";
4
5
  import { createVirtualizer } from "@tanstack/solid-virtual";
5
6
  //#region src/components/virtual-list/index.tsx
6
- var _tmpl$ = /* @__PURE__ */ template(`<div><div data-scope=virtual-list data-part=inner style=position:relative>`);
7
- var _tmpl$2 = /* @__PURE__ */ template(`<div data-scope=virtual-list data-part=row style=position:absolute;top:0;inset-inline-start:0;inline-size:100%>`);
7
+ var _tmpl$ = /* @__PURE__ */ template(`<div><div data-scope=virtual-list data-part=inner>`);
8
+ var _tmpl$2 = /* @__PURE__ */ template(`<div data-scope=virtual-list data-part=row>`);
9
+ function toCssLength(length) {
10
+ return typeof length === "number" ? `${length}px` : length;
11
+ }
8
12
  /** A ledger that only mounts the rows on stage: the viewport keeps its
9
13
  * scroll length by a spacer sized from the row height, the rows
10
14
  * themselves are positioned against it — a ten-thousand-row list
11
15
  * costs the DOM a window, not the ledger. */
12
- function VirtualList(props) {
16
+ const VirtualList = withSelfRoot(function VirtualList(props) {
13
17
  injectComponentStyle("virtual-list");
14
18
  const [own, rest] = splitProps(props, [
15
19
  "items",
@@ -38,7 +42,7 @@ function VirtualList(props) {
38
42
  get style() {
39
43
  return {
40
44
  ...typeof restStyle === "object" && restStyle ? restStyle : {},
41
- "block-size": typeof own.height === "number" ? `${own.height}px` : own.height ?? "320px"
45
+ "--bs-virtual-list-height": toCssLength(own.height ?? 320)
42
46
  };
43
47
  }
44
48
  }], true);
@@ -53,20 +57,20 @@ function VirtualList(props) {
53
57
  });
54
58
  effect(() => {
55
59
  return {
56
- e: `translateY(${row.start}px)`,
60
+ e: `${row.start}px`,
57
61
  t: `${row.size}px`
58
62
  };
59
63
  }, ({ e, t }, _p$) => {
60
- e !== _p$?.e && setStyleProperty(_el$3, "transform", e);
61
- t !== _p$?.t && setStyleProperty(_el$3, "block-size", t);
64
+ e !== _p$?.e && setStyleProperty(_el$3, "--bs-virtual-list-row-start", e);
65
+ t !== _p$?.t && setStyleProperty(_el$3, "--bs-virtual-list-row-size", t);
62
66
  });
63
67
  return _el$3;
64
68
  })()
65
69
  }));
66
70
  effect(() => `${virtualizer.getTotalSize()}px`, (_v$) => {
67
- setStyleProperty(_el$2, "block-size", _v$);
71
+ setStyleProperty(_el$2, "--bs-virtual-list-total", _v$);
68
72
  });
69
73
  return _el$;
70
- }
74
+ });
71
75
  //#endregion
72
76
  export { VirtualList };
@@ -13,5 +13,7 @@ export interface WatermarkProps extends JSX.HTMLAttributes<HTMLDivElement> {
13
13
  rotate?: number;
14
14
  fontSize?: string;
15
15
  }
16
- export declare function Watermark(props: WatermarkProps): JSX.Element;
16
+ export declare const Watermark: ((props: WatermarkProps) => JSX.Element) & {
17
+ Root: (props: WatermarkProps) => JSX.Element;
18
+ };
17
19
  //#endregion
@@ -1,5 +1,6 @@
1
- import { injectComponentStyle } from "@bysages/core";
1
+ import { n as withSelfRoot } from "../../family-Cmd8HEyK.mjs";
2
2
  import { effect, insert, ref, setStyleProperty, spread, template } from "@solidjs/web";
3
+ import { injectComponentStyle } from "@bysages/core/styling";
3
4
  import { createEffect, createSignal, splitProps } from "solid-js";
4
5
  //#region src/components/watermark/index.tsx
5
6
  var _tmpl$ = /* @__PURE__ */ template(`<div><div data-scope=watermark data-part=content></div><div data-scope=watermark data-part=marks aria-hidden=true>`);
@@ -12,7 +13,7 @@ function toPx(size) {
12
13
  if (size.includes("em")) return value * root;
13
14
  return value;
14
15
  }
15
- function Watermark(props) {
16
+ const Watermark = withSelfRoot(function Watermark(props) {
16
17
  injectComponentStyle("watermark");
17
18
  const [own, rest] = splitProps(props, [
18
19
  "content",
@@ -69,9 +70,9 @@ function Watermark(props) {
69
70
  return rest.children;
70
71
  });
71
72
  effect(() => tile(), (_v$) => {
72
- setStyleProperty(_el$3, "background-image", _v$);
73
+ setStyleProperty(_el$3, "--bs-watermark-image", _v$);
73
74
  });
74
75
  return _el$;
75
- }
76
+ });
76
77
  //#endregion
77
78
  export { Watermark };
@@ -0,0 +1,16 @@
1
+ import { spread } from "solid-js/web";
2
+ //#region src/internal/element.tsx
3
+ /** Detect a host element without assuming one exists during SSR. */
4
+ function isElement(value) {
5
+ return typeof Element !== "undefined" && value instanceof Element;
6
+ }
7
+ /** Graft machine props onto a caller-owned Solid element. Solid elements
8
+ * are concrete nodes rather than cloneable vnodes, so this uses the same
9
+ * runtime spread that JSX spread compiles to.
10
+ */
11
+ function withElementProps(element, props) {
12
+ spread(element, props, element instanceof SVGElement, true);
13
+ return element;
14
+ }
15
+ //#endregion
16
+ export { withElementProps as n, isElement as t };
@@ -0,0 +1,11 @@
1
+ //#region src/internal/family.ts
2
+ /** Attaches anatomy parts to a callable family facade. */
3
+ function defineFamily(facade, parts) {
4
+ return Object.assign(facade, parts);
5
+ }
6
+ /** Gives a single-component family the same callable + Root surface. */
7
+ function withSelfRoot(component) {
8
+ return Object.assign(component, { Root: component });
9
+ }
10
+ //#endregion
11
+ export { withSelfRoot as n, defineFamily as t };