@cloudflare/kumo 1.15.0 → 1.17.0

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 (266) hide show
  1. package/CHANGELOG.md +144 -0
  2. package/ai/USAGE.md +3 -1
  3. package/ai/component-registry.json +511 -66
  4. package/ai/component-registry.md +776 -59
  5. package/ai/schemas.ts +33 -7
  6. package/dist/.build-complete +1 -1
  7. package/dist/ai/schemas.d.ts +158 -39
  8. package/dist/ai/schemas.d.ts.map +1 -1
  9. package/dist/ai/schemas.js +456 -418
  10. package/dist/ai/schemas.js.map +1 -1
  11. package/dist/chunks/{Legend-mkh1v83sz972e29d.js → Legend-o0ntojbaplmszwk0.js} +115 -101
  12. package/dist/chunks/Legend-o0ntojbaplmszwk0.js.map +1 -0
  13. package/dist/chunks/badge-n80t3z8u9ttlxi20.js +120 -0
  14. package/dist/chunks/badge-n80t3z8u9ttlxi20.js.map +1 -0
  15. package/dist/chunks/banner-nz0eryqnz3qd86ln.js +79 -0
  16. package/dist/chunks/banner-nz0eryqnz3qd86ln.js.map +1 -0
  17. package/dist/chunks/{breadcrumbs-m79gm4gjwbfajpna.js → breadcrumbs-cjgn3w4drahvqnuj.js} +3 -3
  18. package/dist/chunks/{breadcrumbs-m79gm4gjwbfajpna.js.map → breadcrumbs-cjgn3w4drahvqnuj.js.map} +1 -1
  19. package/dist/chunks/{button-j0hi0afn33w9lxgi.js → button-odxi0hp4fvi5i2w3.js} +50 -48
  20. package/dist/chunks/button-odxi0hp4fvi5i2w3.js.map +1 -0
  21. package/dist/chunks/{checkbox-bvzuggmadtqawis4.js → checkbox-dx8x0rzv582yjv7n.js} +38 -47
  22. package/dist/chunks/{checkbox-bvzuggmadtqawis4.js.map → checkbox-dx8x0rzv582yjv7n.js.map} +1 -1
  23. package/dist/chunks/{clipboard-text-mwcknzn75qdvigrd.js → clipboard-text-kyk51d1ze7zvdn4q.js} +55 -54
  24. package/dist/chunks/clipboard-text-kyk51d1ze7zvdn4q.js.map +1 -0
  25. package/dist/chunks/{combobox-ndbaroqh1c0u49ye.js → combobox-9fhjzprab46csmon.js} +97 -82
  26. package/dist/chunks/combobox-9fhjzprab46csmon.js.map +1 -0
  27. package/dist/chunks/{command-palette-ejoszjfivybu9yi5.js → command-palette-kenx2bbdzd4kpx36.js} +158 -154
  28. package/dist/chunks/command-palette-kenx2bbdzd4kpx36.js.map +1 -0
  29. package/dist/chunks/{dialog-gkmecnx48ge38jrr.js → dialog-e05ysa8t2fklw065.js} +22 -20
  30. package/dist/chunks/dialog-e05ysa8t2fklw065.js.map +1 -0
  31. package/dist/chunks/{dropdown-i8n7nv3cvkvb1x3e.js → dropdown-g587px7zv3ssaxr4.js} +96 -90
  32. package/dist/chunks/dropdown-g587px7zv3ssaxr4.js.map +1 -0
  33. package/dist/chunks/{empty-hrwtammqp0b2nvtf.js → empty-fuz1un7r7mbz0kim.js} +2 -2
  34. package/dist/chunks/{empty-hrwtammqp0b2nvtf.js.map → empty-fuz1un7r7mbz0kim.js.map} +1 -1
  35. package/dist/chunks/{field-lweivfadxgpqhuqi.js → field-fq504lyu7ttsh5m9.js} +3 -3
  36. package/dist/chunks/{field-lweivfadxgpqhuqi.js.map → field-fq504lyu7ttsh5m9.js.map} +1 -1
  37. package/dist/chunks/hcl-hcu7d6ja6t540ijn.js +8 -0
  38. package/dist/chunks/hcl-hcu7d6ja6t540ijn.js.map +1 -0
  39. package/dist/chunks/{input-area-obli4ufvu40bfpgp.js → input-area-nq40szg9110on89c.js} +4 -4
  40. package/dist/chunks/{input-area-obli4ufvu40bfpgp.js.map → input-area-nq40szg9110on89c.js.map} +1 -1
  41. package/dist/chunks/{input-group-dwtsd04lzf2bcsdo.js → input-group-hbebbyh8fo6aqydn.js} +3 -3
  42. package/dist/chunks/{input-group-dwtsd04lzf2bcsdo.js.map → input-group-hbebbyh8fo6aqydn.js.map} +1 -1
  43. package/dist/chunks/{input-ko2dne1givlxq7sz.js → input-kvhyo3p4859bexvx.js} +4 -4
  44. package/dist/chunks/input-kvhyo3p4859bexvx.js.map +1 -0
  45. package/dist/chunks/{label-kjahhybc191quieo.js → label-j9owppbgnn35mebg.js} +3 -3
  46. package/dist/chunks/{label-kjahhybc191quieo.js.map → label-j9owppbgnn35mebg.js.map} +1 -1
  47. package/dist/chunks/{layer-card-mu2w82x6ko1nhhtr.js → layer-card-l5yjvrxry1dhte57.js} +8 -8
  48. package/dist/chunks/{layer-card-mu2w82x6ko1nhhtr.js.map → layer-card-l5yjvrxry1dhte57.js.map} +1 -1
  49. package/dist/chunks/{link-lpzl5s47pmobk361.js → link-hmmf3k1xn6rm72rt.js} +2 -2
  50. package/dist/chunks/{link-lpzl5s47pmobk361.js.map → link-hmmf3k1xn6rm72rt.js.map} +1 -1
  51. package/dist/chunks/{menubar-ifxxdoa35zz79z1q.js → menubar-abojnm0uwjuni8ok.js} +20 -20
  52. package/dist/chunks/menubar-abojnm0uwjuni8ok.js.map +1 -0
  53. package/dist/chunks/{meter-fbtqfg0okpwmaiju.js → meter-i84dte2f82qmvn7y.js} +2 -2
  54. package/dist/chunks/{meter-fbtqfg0okpwmaiju.js.map → meter-i84dte2f82qmvn7y.js.map} +1 -1
  55. package/dist/chunks/{pagination-eo0gzzm7v5w8niqe.js → pagination-pbd7qqik97ac0l7m.js} +3 -3
  56. package/dist/chunks/{pagination-eo0gzzm7v5w8niqe.js.map → pagination-pbd7qqik97ac0l7m.js.map} +1 -1
  57. package/dist/chunks/{popover-dd7hi5ajeoq9od1i.js → popover-i951xjcgezeqr4iv.js} +31 -28
  58. package/dist/chunks/popover-i951xjcgezeqr4iv.js.map +1 -0
  59. package/dist/chunks/portal-provider-hwmkdmkpvct0cb76.js +18 -0
  60. package/dist/chunks/portal-provider-hwmkdmkpvct0cb76.js.map +1 -0
  61. package/dist/chunks/{radio-oi9iw7ls1t04j377.js → radio-l2vkcue40d84fmo1.js} +13 -16
  62. package/dist/chunks/{radio-oi9iw7ls1t04j377.js.map → radio-l2vkcue40d84fmo1.js.map} +1 -1
  63. package/dist/chunks/{select-0m0xklfwdlx8dwba.js → select-paedwa3nlhpq82ua.js} +39 -37
  64. package/dist/chunks/select-paedwa3nlhpq82ua.js.map +1 -0
  65. package/dist/chunks/{sensitive-input-rjpykxn2llh0thx1.js → sensitive-input-kznmknpp5h1grc6k.js} +97 -91
  66. package/dist/chunks/sensitive-input-kznmknpp5h1grc6k.js.map +1 -0
  67. package/dist/chunks/sidebar-jepeq7gaf4issuw6.js +875 -0
  68. package/dist/chunks/sidebar-jepeq7gaf4issuw6.js.map +1 -0
  69. package/dist/chunks/skeleton-line-epxenksfesr2fkcv.js +33 -0
  70. package/dist/chunks/skeleton-line-epxenksfesr2fkcv.js.map +1 -0
  71. package/dist/chunks/surface-blo81kgy9g0sexgm.js +36 -0
  72. package/dist/chunks/surface-blo81kgy9g0sexgm.js.map +1 -0
  73. package/dist/chunks/{switch-lv4mrrkfl5uc99xo.js → switch-i0zwcp3wq6vsxm1c.js} +64 -64
  74. package/dist/chunks/{switch-lv4mrrkfl5uc99xo.js.map → switch-i0zwcp3wq6vsxm1c.js.map} +1 -1
  75. package/dist/chunks/table-nrcw19tlpduayukl.js +183 -0
  76. package/dist/chunks/table-nrcw19tlpduayukl.js.map +1 -0
  77. package/dist/chunks/tabs-bw92jb303zxw7w4f.js +92 -0
  78. package/dist/chunks/{tabs-hy6oa7xtf96d9mxt.js.map → tabs-bw92jb303zxw7w4f.js.map} +1 -1
  79. package/dist/chunks/{text-gzt92mlji1lug13d.js → text-nmyi1rkwdj37f30f.js} +24 -22
  80. package/dist/chunks/text-nmyi1rkwdj37f30f.js.map +1 -0
  81. package/dist/chunks/{toast-kswfqmjysxcrwij3.js → toast-lrnwby56drs7vtae.js} +61 -59
  82. package/dist/chunks/toast-lrnwby56drs7vtae.js.map +1 -0
  83. package/dist/chunks/toml-nczb2z9n0o23o3ci.js +8 -0
  84. package/dist/chunks/toml-nczb2z9n0o23o3ci.js.map +1 -0
  85. package/dist/chunks/{tooltip-k68wcv9mrigb7rcb.js → tooltip-cit9ltlxfuhwctuj.js} +24 -21
  86. package/dist/chunks/tooltip-cit9ltlxfuhwctuj.js.map +1 -0
  87. package/dist/chunks/{vendor-base-ui-cpvkrhz4zgw9nw2b.js → vendor-base-ui-n30qblevnpk9cc5c.js} +551 -549
  88. package/dist/chunks/{vendor-base-ui-cpvkrhz4zgw9nw2b.js.map → vendor-base-ui-n30qblevnpk9cc5c.js.map} +1 -1
  89. package/dist/code/server.js +11 -9
  90. package/dist/code/server.js.map +1 -1
  91. package/dist/code.js +16 -14
  92. package/dist/code.js.map +1 -1
  93. package/dist/components/badge.js +1 -1
  94. package/dist/components/banner.js +1 -1
  95. package/dist/components/breadcrumbs.js +1 -1
  96. package/dist/components/button.js +1 -1
  97. package/dist/components/chart.js +1 -1
  98. package/dist/components/checkbox.js +1 -1
  99. package/dist/components/clipboard-text.js +1 -1
  100. package/dist/components/combobox.js +1 -1
  101. package/dist/components/command-palette.js +1 -1
  102. package/dist/components/dialog.js +1 -1
  103. package/dist/components/dropdown.js +1 -1
  104. package/dist/components/empty.js +1 -1
  105. package/dist/components/field.js +1 -1
  106. package/dist/components/flow.js +2142 -2090
  107. package/dist/components/flow.js.map +1 -1
  108. package/dist/components/input.js +3 -3
  109. package/dist/components/label.js +1 -1
  110. package/dist/components/layer-card.js +1 -1
  111. package/dist/components/link.js +1 -1
  112. package/dist/components/loader.js +1 -1
  113. package/dist/components/menubar.js +1 -1
  114. package/dist/components/meter.js +1 -1
  115. package/dist/components/pagination.js +1 -1
  116. package/dist/components/popover.js +1 -1
  117. package/dist/components/radio.js +1 -1
  118. package/dist/components/select.js +1 -1
  119. package/dist/components/sensitive-input.js +1 -1
  120. package/dist/components/sidebar.js +35 -0
  121. package/dist/components/sidebar.js.map +1 -0
  122. package/dist/components/surface.js +1 -1
  123. package/dist/components/switch.js +1 -1
  124. package/dist/components/table.js +1 -1
  125. package/dist/components/tabs.js +1 -1
  126. package/dist/components/text.js +1 -1
  127. package/dist/components/toast.js +2 -2
  128. package/dist/components/tooltip.js +1 -1
  129. package/dist/index.js +192 -159
  130. package/dist/index.js.map +1 -1
  131. package/dist/primitives/accordion.js +1 -1
  132. package/dist/primitives/alert-dialog.js +1 -1
  133. package/dist/primitives/autocomplete.js +1 -1
  134. package/dist/primitives/avatar.js +1 -1
  135. package/dist/primitives/button.js +1 -1
  136. package/dist/primitives/checkbox-group.js +1 -1
  137. package/dist/primitives/checkbox.js +1 -1
  138. package/dist/primitives/collapsible.js +1 -1
  139. package/dist/primitives/combobox.js +1 -1
  140. package/dist/primitives/context-menu.js +1 -1
  141. package/dist/primitives/csp-provider.js +1 -1
  142. package/dist/primitives/dialog.js +1 -1
  143. package/dist/primitives/direction-provider.js +1 -1
  144. package/dist/primitives/drawer.js +1 -1
  145. package/dist/primitives/field.js +1 -1
  146. package/dist/primitives/fieldset.js +1 -1
  147. package/dist/primitives/form.js +1 -1
  148. package/dist/primitives/input.js +1 -1
  149. package/dist/primitives/menu.js +1 -1
  150. package/dist/primitives/menubar.js +1 -1
  151. package/dist/primitives/meter.js +1 -1
  152. package/dist/primitives/navigation-menu.js +1 -1
  153. package/dist/primitives/number-field.js +1 -1
  154. package/dist/primitives/popover.js +1 -1
  155. package/dist/primitives/preview-card.js +1 -1
  156. package/dist/primitives/progress.js +1 -1
  157. package/dist/primitives/radio-group.js +1 -1
  158. package/dist/primitives/radio.js +1 -1
  159. package/dist/primitives/scroll-area.js +1 -1
  160. package/dist/primitives/select.js +1 -1
  161. package/dist/primitives/separator.js +1 -1
  162. package/dist/primitives/slider.js +1 -1
  163. package/dist/primitives/switch.js +1 -1
  164. package/dist/primitives/tabs.js +1 -1
  165. package/dist/primitives/toast.js +1 -1
  166. package/dist/primitives/toggle-group.js +1 -1
  167. package/dist/primitives/toggle.js +1 -1
  168. package/dist/primitives/toolbar.js +1 -1
  169. package/dist/primitives/tooltip.js +1 -1
  170. package/dist/primitives.js +1 -1
  171. package/dist/scripts/theme-generator/config.d.ts.map +1 -1
  172. package/dist/scripts/theme-generator/config.js +288 -24
  173. package/dist/scripts/theme-generator/config.js.map +1 -1
  174. package/dist/src/code/provider.d.ts.map +1 -1
  175. package/dist/src/code/server.d.ts.map +1 -1
  176. package/dist/src/code/types.d.ts +1 -1
  177. package/dist/src/code/types.d.ts.map +1 -1
  178. package/dist/src/components/badge/badge.d.ts +95 -22
  179. package/dist/src/components/badge/badge.d.ts.map +1 -1
  180. package/dist/src/components/banner/banner.d.ts +2 -0
  181. package/dist/src/components/banner/banner.d.ts.map +1 -1
  182. package/dist/src/components/button/button.d.ts +2 -0
  183. package/dist/src/components/button/button.d.ts.map +1 -1
  184. package/dist/src/components/chart/EChart.d.ts.map +1 -1
  185. package/dist/src/components/chart/TimeseriesChart.d.ts +11 -1
  186. package/dist/src/components/chart/TimeseriesChart.d.ts.map +1 -1
  187. package/dist/src/components/checkbox/checkbox.d.ts.map +1 -1
  188. package/dist/src/components/clipboard-text/clipboard-text.d.ts +2 -0
  189. package/dist/src/components/clipboard-text/clipboard-text.d.ts.map +1 -1
  190. package/dist/src/components/combobox/combobox.d.ts +8 -1
  191. package/dist/src/components/combobox/combobox.d.ts.map +1 -1
  192. package/dist/src/components/command-palette/command-palette.d.ts +9 -2
  193. package/dist/src/components/command-palette/command-palette.d.ts.map +1 -1
  194. package/dist/src/components/command-palette/types.d.ts +7 -0
  195. package/dist/src/components/command-palette/types.d.ts.map +1 -1
  196. package/dist/src/components/dialog/dialog.d.ts +8 -1
  197. package/dist/src/components/dialog/dialog.d.ts.map +1 -1
  198. package/dist/src/components/dropdown/dropdown.d.ts +17 -2
  199. package/dist/src/components/dropdown/dropdown.d.ts.map +1 -1
  200. package/dist/src/components/flow/diagram.d.ts.map +1 -1
  201. package/dist/src/components/flow/node.d.ts.map +1 -1
  202. package/dist/src/components/flow/parallel.d.ts.map +1 -1
  203. package/dist/src/components/loader/skeleton-line.d.ts +2 -1
  204. package/dist/src/components/loader/skeleton-line.d.ts.map +1 -1
  205. package/dist/src/components/popover/popover.d.ts +8 -1
  206. package/dist/src/components/popover/popover.d.ts.map +1 -1
  207. package/dist/src/components/radio/radio.d.ts.map +1 -1
  208. package/dist/src/components/select/select.d.ts +8 -1
  209. package/dist/src/components/select/select.d.ts.map +1 -1
  210. package/dist/src/components/sensitive-input/sensitive-input.d.ts.map +1 -1
  211. package/dist/src/components/sidebar/index.d.ts +2 -0
  212. package/dist/src/components/sidebar/index.d.ts.map +1 -0
  213. package/dist/src/components/sidebar/sidebar.d.ts +556 -0
  214. package/dist/src/components/sidebar/sidebar.d.ts.map +1 -0
  215. package/dist/src/components/surface/surface.d.ts +23 -23
  216. package/dist/src/components/surface/surface.d.ts.map +1 -1
  217. package/dist/src/components/table/table.d.ts +34 -2
  218. package/dist/src/components/table/table.d.ts.map +1 -1
  219. package/dist/src/components/tabs/tabs.d.ts.map +1 -1
  220. package/dist/src/components/text/text.d.ts +5 -0
  221. package/dist/src/components/text/text.d.ts.map +1 -1
  222. package/dist/src/components/toast/toast.d.ts +16 -9
  223. package/dist/src/components/toast/toast.d.ts.map +1 -1
  224. package/dist/src/components/tooltip/tooltip.d.ts +11 -6
  225. package/dist/src/components/tooltip/tooltip.d.ts.map +1 -1
  226. package/dist/src/index.d.ts +2 -0
  227. package/dist/src/index.d.ts.map +1 -1
  228. package/dist/src/utils/index.d.ts +1 -0
  229. package/dist/src/utils/index.d.ts.map +1 -1
  230. package/dist/src/utils/portal-provider.d.ts +56 -0
  231. package/dist/src/utils/portal-provider.d.ts.map +1 -0
  232. package/dist/styles/kumo-binding.css +49 -46
  233. package/dist/styles/kumo-standalone.css +1 -1
  234. package/dist/styles/theme-fedramp.css +3 -3
  235. package/dist/styles/theme-kumo.css +202 -22
  236. package/dist/utils.js +8 -6
  237. package/dist/utils.js.map +1 -1
  238. package/package.json +7 -3
  239. package/scripts/component-registry/index.ts +12 -0
  240. package/scripts/theme-generator/config.ts +298 -24
  241. package/dist/chunks/Legend-mkh1v83sz972e29d.js.map +0 -1
  242. package/dist/chunks/badge-mrshucy2530o70cq.js +0 -56
  243. package/dist/chunks/badge-mrshucy2530o70cq.js.map +0 -1
  244. package/dist/chunks/banner-vzdjbqsb6em7tmdk.js +0 -75
  245. package/dist/chunks/banner-vzdjbqsb6em7tmdk.js.map +0 -1
  246. package/dist/chunks/button-j0hi0afn33w9lxgi.js.map +0 -1
  247. package/dist/chunks/clipboard-text-mwcknzn75qdvigrd.js.map +0 -1
  248. package/dist/chunks/combobox-ndbaroqh1c0u49ye.js.map +0 -1
  249. package/dist/chunks/command-palette-ejoszjfivybu9yi5.js.map +0 -1
  250. package/dist/chunks/dialog-gkmecnx48ge38jrr.js.map +0 -1
  251. package/dist/chunks/dropdown-i8n7nv3cvkvb1x3e.js.map +0 -1
  252. package/dist/chunks/input-ko2dne1givlxq7sz.js.map +0 -1
  253. package/dist/chunks/menubar-ifxxdoa35zz79z1q.js.map +0 -1
  254. package/dist/chunks/popover-dd7hi5ajeoq9od1i.js.map +0 -1
  255. package/dist/chunks/select-0m0xklfwdlx8dwba.js.map +0 -1
  256. package/dist/chunks/sensitive-input-rjpykxn2llh0thx1.js.map +0 -1
  257. package/dist/chunks/skeleton-line-1j5exu6vv07mmhfb.js +0 -28
  258. package/dist/chunks/skeleton-line-1j5exu6vv07mmhfb.js.map +0 -1
  259. package/dist/chunks/surface-dhshylwccuaz91d1.js +0 -21
  260. package/dist/chunks/surface-dhshylwccuaz91d1.js.map +0 -1
  261. package/dist/chunks/table-fh7jmfip27vdapxm.js +0 -155
  262. package/dist/chunks/table-fh7jmfip27vdapxm.js.map +0 -1
  263. package/dist/chunks/tabs-hy6oa7xtf96d9mxt.js +0 -86
  264. package/dist/chunks/text-gzt92mlji1lug13d.js.map +0 -1
  265. package/dist/chunks/toast-kswfqmjysxcrwij3.js.map +0 -1
  266. package/dist/chunks/tooltip-k68wcv9mrigb7rcb.js.map +0 -1
@@ -20,7 +20,18 @@ export declare const KUMO_TABLE_VARIANTS: {
20
20
  readonly description: "Selected row variant";
21
21
  };
22
22
  };
23
+ readonly sticky: {
24
+ readonly left: {
25
+ readonly classes: "sticky left-0";
26
+ readonly description: "Pin column to the left edge of the scroll container";
27
+ };
28
+ readonly right: {
29
+ readonly classes: "sticky right-0";
30
+ readonly description: "Pin column to the right edge of the scroll container";
31
+ };
32
+ };
23
33
  };
34
+ export type KumoTableStickyColumn = keyof typeof KUMO_TABLE_VARIANTS.sticky;
24
35
  export declare const KUMO_TABLE_DEFAULT_VARIANTS: {
25
36
  readonly layout: "auto";
26
37
  readonly variant: "default";
@@ -64,13 +75,34 @@ export declare const Table: import('react').ForwardRefExoticComponent<import('re
64
75
  } & import('react').RefAttributes<HTMLTableElement>> & {
65
76
  Header: import('react').ForwardRefExoticComponent<import('react').HTMLAttributes<HTMLTableSectionElement> & {
66
77
  variant?: "default" | "compact";
78
+ /**
79
+ * Make the header row stick to the top of the scroll container.
80
+ * Requires the table's parent to have a constrained height with
81
+ * `overflow-y: auto`.
82
+ */
83
+ sticky?: boolean;
67
84
  } & import('react').RefAttributes<HTMLTableSectionElement>>;
68
- Head: import('react').ForwardRefExoticComponent<import('react').HTMLAttributes<HTMLTableCellElement> & import('react').RefAttributes<HTMLTableCellElement>>;
85
+ Head: import('react').ForwardRefExoticComponent<import('react').HTMLAttributes<HTMLTableCellElement> & {
86
+ /**
87
+ * Pin this header cell to the left or right edge of the scroll container.
88
+ * Adds `position: sticky`, an opaque background, and a gradient fade on the
89
+ * inner edge. Sticky header columns render at `z-2` so they sit above both
90
+ * normal cells and sticky body cells (`z-1`).
91
+ */
92
+ sticky?: KumoTableStickyColumn;
93
+ } & import('react').RefAttributes<HTMLTableCellElement>>;
69
94
  Row: import('react').ForwardRefExoticComponent<import('react').HTMLAttributes<HTMLTableRowElement> & {
70
95
  variant?: KumoTableRowVariant;
71
96
  } & import('react').RefAttributes<HTMLTableRowElement>>;
72
97
  Body: import('react').ForwardRefExoticComponent<import('react').HTMLAttributes<HTMLTableSectionElement> & import('react').RefAttributes<HTMLTableSectionElement>>;
73
- Cell: import('react').ForwardRefExoticComponent<import('react').TdHTMLAttributes<HTMLTableCellElement> & import('react').RefAttributes<HTMLTableCellElement>>;
98
+ Cell: import('react').ForwardRefExoticComponent<import('react').TdHTMLAttributes<HTMLTableCellElement> & {
99
+ /**
100
+ * Pin this cell to the left or right edge of the scroll container.
101
+ * Adds `position: sticky`, an opaque background, and a gradient fade on
102
+ * the inner edge. Requires the table's parent to have `overflow-x: auto`.
103
+ */
104
+ sticky?: KumoTableStickyColumn;
105
+ } & import('react').RefAttributes<HTMLTableCellElement>>;
74
106
  CheckCell: import('react').ForwardRefExoticComponent<import('react').TdHTMLAttributes<HTMLTableCellElement> & {
75
107
  checked?: boolean;
76
108
  indeterminate?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../../src/components/table/table.tsx"],"names":[],"mappings":"AAIA,wFAAwF;AACxF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;CAsBtB,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;CAG9B,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,mBAAmB,CAAC,OAAO,CAAC;AAC3E,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,mBAAmB,CAAC,MAAM,CAAC;AAwNtE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,KAAK;IAxNd;;;;;OAKG;aACM,eAAe;;;kBAoBd,SAAS,GAAG,SAAS;;;;kBAuBrB,mBAAmB;;;;;kBA+DnB,OAAO;wBACD,OAAO;wBACP,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI;gBAClC,MAAM;mBACH,OAAO;;;kBA+BR,OAAO;wBACD,OAAO;wBACP,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI;gBAClC,MAAM;mBACH,OAAO;;;;CA2EpB,CAAC"}
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../../src/components/table/table.tsx"],"names":[],"mappings":"AAIA,wFAAwF;AACxF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCtB,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAAG,MAAM,OAAO,mBAAmB,CAAC,MAAM,CAAC;AA6B5E,eAAO,MAAM,2BAA2B;;;CAG9B,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,mBAAmB,CAAC,OAAO,CAAC;AAC3E,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,mBAAmB,CAAC,MAAM,CAAC;AAsPtE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,KAAK;IAtPd;;;;;OAKG;aACM,eAAe;;;kBAoBd,SAAS,GAAG,SAAS;QAC/B;;;;WAIG;iBACM,OAAO;;;QAgBhB;;;;;WAKG;iBACM,qBAAqB;;;kBAcpB,mBAAmB;;;;QAqB7B;;;;WAIG;iBACM,qBAAqB;;;kBAgDpB,OAAO;wBACD,OAAO;wBACP,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI;gBAClC,MAAM;mBACH,OAAO;;;kBA+BR,OAAO;wBACD,OAAO;wBACP,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI;gBAClC,MAAM;mBACH,OAAO;;;;CA2EpB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAInD,gCAAgC;AAChC,eAAO,MAAM,kBAAkB;;CAErB,CAAC;AAEX,eAAO,MAAM,0BAA0B;;CAE7B,CAAC;AAEX,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;CAsBpB,CAAC;AAGX,MAAM,WAAW,qBAAqB;IACpC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;CACvD;AAED,gEAAgE;AAChE,MAAM,MAAM,QAAQ,GAAG;IACrB,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,KAAK,EAAE,SAAS,CAAC;IACjB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;CAClC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,SAAS,GAAG,qBAAqB,GAAG;IAC9C,oCAAoC;IACpC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;IAClB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kDAAkD;IAClD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,aAAa,EACb,aAAa,EACb,eAAe,EACf,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,OAA4C,GAC7C,EAAE,SAAS,kDAsEX"}
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAInD,gCAAgC;AAChC,eAAO,MAAM,kBAAkB;;CAErB,CAAC;AAEX,eAAO,MAAM,0BAA0B;;CAE7B,CAAC;AAEX,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;CAsBpB,CAAC;AAGX,MAAM,WAAW,qBAAqB;IACpC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;CACvD;AAED,gEAAgE;AAChE,MAAM,MAAM,QAAQ,GAAG;IACrB,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,KAAK,EAAE,SAAS,CAAC;IACjB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;CAClC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,SAAS,GAAG,qBAAqB,GAAG;IAC9C,oCAAoC;IACpC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;IAClB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kDAAkD;IAClD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,aAAa,EACb,aAAa,EACb,eAAe,EACf,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,OAA4C,GAC7C,EAAE,SAAS,kDA2EX"}
@@ -122,14 +122,17 @@ type TextPropsInternal<Variant extends TextVariant = "body"> = BaseTextProps & (
122
122
  variant?: Variant;
123
123
  bold?: boolean;
124
124
  size?: TextSize;
125
+ truncate?: boolean;
125
126
  } : Variant extends Monospace ? {
126
127
  variant?: Variant;
127
128
  bold?: never;
128
129
  size?: "lg";
130
+ truncate?: boolean;
129
131
  } : Variant extends Heading ? {
130
132
  variant?: Variant;
131
133
  bold?: never;
132
134
  size?: never;
135
+ truncate?: boolean;
133
136
  } : never);
134
137
  /**
135
138
  * Text component props.
@@ -169,6 +172,8 @@ export interface TextProps {
169
172
  size?: KumoTextSize;
170
173
  /** Whether to use bold font weight (only applies to body variants). */
171
174
  bold?: boolean;
175
+ /** Whether to truncate overflowing text with an ellipsis. Adds `truncate min-w-0` classes. */
176
+ truncate?: boolean;
172
177
  /** The HTML element type to render as (e.g. `"span"`, `"p"`, `"h1"`). Auto-selected based on variant if omitted. */
173
178
  as?: ElementType;
174
179
  /** Text content. */
@@ -1 +1 @@
1
- {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../../src/components/text/text.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,UAAU,EACf,KAAK,YAAY,EAGjB,KAAK,WAAW,EACjB,MAAM,OAAO,CAAC;AAGf,iFAAiF;AACjF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDrB,CAAC;AAEX,eAAO,MAAM,0BAA0B;;;CAG7B,CAAC;AAEX;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BpB,CAAC;AAGX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,kBAAkB,CAAC,OAAO,CAAC;AACtE,MAAM,MAAM,YAAY,GAAG,MAAM,OAAO,kBAAkB,CAAC,IAAI,CAAC;AAEhE,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB;AAED,wBAAgB,YAAY,CAAC,EAC3B,OAA4C,EAC5C,IAAsC,GACvC,GAAE,qBAA0B,UAK5B;AAGD,KAAK,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;AACpD,KAAK,IAAI,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC;AACvD,KAAK,SAAS,GAAG,MAAM,GAAG,gBAAgB,CAAC;AAC3C,KAAK,QAAQ,GAAG,YAAY,CAAC;AAC7B,KAAK,WAAW,GAAG,eAAe,CAAC;AAEnC,KAAK,aAAa,GAAG,IAAI,CACvB,wBAAwB,CAAC,MAAM,CAAC,EAChC,WAAW,GAAG,OAAO,CACtB,GAAG;IACF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,aAAa,CAAC;IAChC,EAAE,CAAC,EAAE,WAAW,CAAC;CAClB,CAAC;AAEF,KAAK,iBAAiB,CAAC,OAAO,SAAS,WAAW,GAAG,MAAM,IAAI,aAAa,GAC1E,CAAC,OAAO,SAAS,IAAI,GACjB;IACE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB,GACD,OAAO,SAAS,SAAS,GACvB;IACE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,IAAI,CAAC;CACb,GACD,OAAO,SAAS,OAAO,GACrB;IACE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,CAAC;CACd,GACD,KAAK,CAAC,CAAC;AAEjB;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,SAAS;IACxB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,uEAAuE;IACvE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,oHAAoH;IACpH,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,oBAAoB;IACpB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AA6DD,eAAO,MAAM,IAAI,EAAwB,CAAC,OAAO,SAAS,WAAW,GAAG,MAAM,EAC5E,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG;IAClC,GAAG,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;CACxC,KACE,KAAK,CAAC,YAAY,CAAC"}
1
+ {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../../src/components/text/text.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { ToastManagerAddOptions, ToastObject } from '@base-ui/react/toast';
2
2
  import { default as React } from 'react';
3
3
  import { ButtonProps } from '../../components/button';
4
+ import { PortalContainer } from '../../utils/portal-provider';
4
5
  /**
5
6
  * Toast styling configuration for Figma plugin consumption.
6
7
  * Toast has no user-facing variants but documents the styling structure.
@@ -19,31 +20,31 @@ export declare const KUMO_TOAST_VARIANTS: {
19
20
  readonly description: "Toast description with muted text color";
20
21
  };
21
22
  readonly close: {
22
- readonly classes: "absolute top-2 right-2 flex h-5 w-5 items-center justify-center rounded border-none bg-transparent text-kumo-subtle hover:bg-kumo-fill-hover hover:text-kumo-strong";
23
+ readonly classes: "absolute top-2 right-2 flex h-5 w-5 items-center justify-center rounded bg-transparent text-kumo-subtle hover:bg-kumo-fill-hover hover:text-kumo-strong";
23
24
  readonly description: "Close button with X icon";
24
25
  };
25
26
  readonly variant: {
26
27
  readonly default: {
27
- readonly classes: "border-kumo-fill bg-kumo-control";
28
+ readonly classes: "border-kumo-fill bg-kumo-base";
28
29
  readonly description: "Default toast style";
29
30
  };
30
31
  readonly success: {
31
- readonly classes: "border-kumo-success bg-kumo-control [&_[data-toast-icon]]:text-kumo-success [&_[data-toast-title]]:text-kumo-success";
32
+ readonly classes: "ring-[0.3px] ring-kumo-success bg-kumo-base [&_[data-toast-icon]]:text-kumo-success [&_[data-toast-title]]:text-kumo-success";
32
33
  readonly description: "Success toast for confirmations and positive outcomes";
33
34
  readonly icon: import('@phosphor-icons/react').Icon;
34
35
  };
35
36
  readonly error: {
36
- readonly classes: "border-kumo-danger bg-kumo-control [&_[data-toast-icon]]:text-kumo-danger [&_[data-toast-title]]:text-kumo-danger";
37
+ readonly classes: "ring-[0.3px] ring-kumo-danger bg-kumo-base [&_[data-toast-icon]]:text-kumo-danger [&_[data-toast-title]]:text-kumo-danger";
37
38
  readonly description: "Error toast for critical issues";
38
39
  readonly icon: import('@phosphor-icons/react').Icon;
39
40
  };
40
41
  readonly warning: {
41
- readonly classes: "border-kumo-warning bg-kumo-control [&_[data-toast-icon]]:text-kumo-warning [&_[data-toast-title]]:text-kumo-warning";
42
+ readonly classes: "ring-[0.3px] ring-kumo-warning bg-kumo-base [&_[data-toast-icon]]:text-kumo-warning [&_[data-toast-title]]:text-kumo-warning";
42
43
  readonly description: "Warning toast for cautionary messages";
43
44
  readonly icon: import('@phosphor-icons/react').Icon;
44
45
  };
45
46
  readonly info: {
46
- readonly classes: "border-kumo-info bg-kumo-control [&_[data-toast-icon]]:text-kumo-info [&_[data-toast-title]]:text-kumo-info";
47
+ readonly classes: "ring-[0.3px] ring-kumo-info bg-kumo-control [&_[data-toast-icon]]:text-kumo-info [&_[data-toast-title]]:text-kumo-info";
47
48
  readonly description: "Info toast for neutral informational messages";
48
49
  readonly icon: import('@phosphor-icons/react').Icon;
49
50
  };
@@ -61,8 +62,8 @@ export declare const KUMO_TOAST_STYLING: {
61
62
  readonly width: 300;
62
63
  readonly padding: 16;
63
64
  readonly borderRadius: 8;
64
- readonly background: "color-secondary";
65
- readonly border: "color-color";
65
+ readonly background: "bg-kumo-base";
66
+ readonly border: "ring-[0.3px] ring-kumo-ring";
66
67
  readonly shadow: "shadow-lg";
67
68
  readonly gap: 4;
68
69
  };
@@ -112,6 +113,12 @@ export declare function toastVariants({ variant, }?: KumoToastVariantsProps): st
112
113
  export interface ToastyProps extends KumoToastVariantsProps {
113
114
  /** Application content. Toasts render via a portal above this. */
114
115
  children: React.ReactNode;
116
+ /**
117
+ * Container element for the portal. Use this to render toasts inside
118
+ * a Shadow DOM or custom container. Overrides `KumoPortalProvider` context.
119
+ * @default document.body (or KumoPortalProvider container if set)
120
+ */
121
+ container?: PortalContainer;
115
122
  }
116
123
  type KumoToastOptionsBase = {
117
124
  variant?: KumoToastVariant;
@@ -156,7 +163,7 @@ export declare const createKumoToastManager: () => import('@base-ui/react').Toas
156
163
  * </Toasty>
157
164
  * ```
158
165
  */
159
- export declare function Toasty({ children }: ToastyProps): import("react/jsx-runtime").JSX.Element;
166
+ export declare function Toasty({ children, container: containerProp }: ToastyProps): import("react/jsx-runtime").JSX.Element;
160
167
  /** Alias for Toasty — provided for discoverability when migrating from other libraries */
161
168
  export declare const ToastProvider: typeof Toasty;
162
169
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../../src/components/toast/toast.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,sBAAsB,EACtB,WAAW,EACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAU,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAS9D;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDtB,CAAC;AAEX,eAAO,MAAM,2BAA2B;;CAE9B,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BrB,CAAC;AAGX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,mBAAmB,CAAC,OAAO,CAAC;AAExE,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,gBAAgB,CAAC;CAC5B;AAED,wBAAgB,aAAa,CAAC,EAC5B,OAA6C,GAC9C,GAAE,sBAA2B,UAO7B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,WAAY,SAAQ,sBAAsB;IACzD,kEAAkE;IAClE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,KAAK,oBAAoB,GAAG;IAC1B,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,IAAI,SAAS,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,GACnE,oBAAoB,CAAC;AAEvB,MAAM,MAAM,0BAA0B,CAAC,IAAI,SAAS,MAAM,IACxD,sBAAsB,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC;AAyFtD,eAAO,MAAM,mBAAmB;YAIF,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;4FArFvC,0BAA0B,CAAC,GAAG,CAAC;;qIAoCjC,MAAM,WAAW,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC;mKAM5D,CAAC;iBAGE,0BAA0B,CAAC,GAAG,CAAC;iEAGtB,0BAA0B,CAAC,GAAG,CAAC;0DAGpC,KAAK,KAAK,0BAA0B,CAAC,GAAG,CAAC;;CAoC7D,CAAC;AAEF,eAAO,MAAM,sBAAsB;mBAzFhB,0BAA0B,CAAC,GAAG,CAAC;iBAoCjC,MAAM,WAAW,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC;cAM5D,CAAC;iBAGE,0BAA0B,CAAC,GAAG,CAAC;iEAGtB,0BAA0B,CAAC,GAAG,CAAC;0DAGpC,KAAK,KAAK,0BAA0B,CAAC,GAAG,CAAC;;CAwC7D,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAW,2CAW/C;AAED,0FAA0F;AAC1F,eAAO,MAAM,aAAa,eAAS,CAAC"}
1
+ {"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../../src/components/toast/toast.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,sBAAsB,EACtB,WAAW,EACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAU,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,6BAA6B,CAAC;AASrC;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDtB,CAAC;AAEX,eAAO,MAAM,2BAA2B;;CAE9B,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BrB,CAAC;AAGX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,mBAAmB,CAAC,OAAO,CAAC;AAExE,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,gBAAgB,CAAC;CAC5B;AAED,wBAAgB,aAAa,CAAC,EAC5B,OAA6C,GAC9C,GAAE,sBAA2B,UAO7B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,WAAY,SAAQ,sBAAsB;IACzD,kEAAkE;IAClE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;;OAIG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED,KAAK,oBAAoB,GAAG;IAC1B,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,IAAI,SAAS,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,GACnE,oBAAoB,CAAC;AAEvB,MAAM,MAAM,0BAA0B,CAAC,IAAI,SAAS,MAAM,IACxD,sBAAsB,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC;AAyFtD,eAAO,MAAM,mBAAmB;YAIF,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;4FArFvC,0BAA0B,CAAC,GAAG,CAAC;;qIAoCjC,MAAM,WAAW,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC;mKAM5D,CAAC;iBAGE,0BAA0B,CAAC,GAAG,CAAC;iEAGtB,0BAA0B,CAAC,GAAG,CAAC;0DAGpC,KAAK,KAAK,0BAA0B,CAAC,GAAG,CAAC;;CAoC7D,CAAC;AAEF,eAAO,MAAM,sBAAsB;mBAzFhB,0BAA0B,CAAC,GAAG,CAAC;iBAoCjC,MAAM,WAAW,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC;cAM5D,CAAC;iBAGE,0BAA0B,CAAC,GAAG,CAAC;iEAGtB,0BAA0B,CAAC,GAAG,CAAC;0DAGpC,KAAK,KAAK,0BAA0B,CAAC,GAAG,CAAC;;CAwC7D,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,MAAM,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,WAAW,2CAczE;AAED,0FAA0F;AAC1F,eAAO,MAAM,aAAa,eAAS,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { Tooltip as TooltipBase } from '@base-ui/react/tooltip';
2
2
  import { ComponentPropsWithoutRef, ReactNode } from 'react';
3
+ import { PortalContainer } from '../../utils/portal-provider';
3
4
  /** Tooltip side variant definitions mapping positions to their Tailwind classes. */
4
5
  export declare const KUMO_TOOLTIP_VARIANTS: {
5
6
  readonly side: {
@@ -46,11 +47,9 @@ type TooltipAlign = "start" | "center" | "end";
46
47
  *
47
48
  * @example
48
49
  * ```tsx
49
- * <TooltipProvider>
50
- * <Tooltip content="Add new item" asChild>
51
- * <Button shape="square" icon={PlusIcon} />
52
- * </Tooltip>
53
- * </TooltipProvider>
50
+ * <Tooltip content="Add new item" asChild>
51
+ * <Button shape="square" icon={PlusIcon} />
52
+ * </Tooltip>
54
53
  * ```
55
54
  */
56
55
  export type TooltipProps = BaseTooltipProps & KumoTooltipVariantsProps & {
@@ -67,6 +66,12 @@ export type TooltipProps = BaseTooltipProps & KumoTooltipVariantsProps & {
67
66
  className?: string;
68
67
  /** Content to display inside the tooltip popup. */
69
68
  content: ReactNode;
69
+ /**
70
+ * Container element for the portal. Use this to render the tooltip inside
71
+ * a Shadow DOM or custom container. Overrides `KumoPortalProvider` context.
72
+ * @default document.body (or KumoPortalProvider container if set)
73
+ */
74
+ container?: PortalContainer;
70
75
  };
71
76
  /**
72
77
  * Accessible popup that shows additional information on hover/focus.
@@ -79,6 +84,6 @@ export type TooltipProps = BaseTooltipProps & KumoTooltipVariantsProps & {
79
84
  * </Tooltip>
80
85
  * ```
81
86
  */
82
- export declare function Tooltip({ content, children, align, asChild, side, className, ...props }: TooltipProps): import("react/jsx-runtime").JSX.Element;
87
+ export declare function Tooltip({ content, children, align, asChild, side, className, container: containerProp, ...props }: TooltipProps): import("react/jsx-runtime").JSX.Element;
83
88
  export {};
84
89
  //# sourceMappingURL=tooltip.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../src/components/tooltip/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGjE,oFAAoF;AACpF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;CAmBxB,CAAC;AAEX,eAAO,MAAM,6BAA6B;;CAEhC,CAAC;AAGX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,qBAAqB,CAAC,IAAI,CAAC;AAEtE,MAAM,WAAW,wBAAwB;IACvC;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,eAAe,CAAC;CACxB;AAED,wBAAgB,eAAe,CAAC,EAC9B,IAAyC,GAC1C,GAAE,wBAA6B,UAY/B;AAED,eAAO,MAAM,eAAe,mEAAuB,CAAC;AAEpD,KAAK,gBAAgB,GAAG,wBAAwB,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;AAI1E,kFAAkF;AAClF,KAAK,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAE/C;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,GAAG,gBAAgB,GACzC,wBAAwB,GAAG;IACzB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,oFAAoF;IACpF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,OAAO,EAAE,SAAS,CAAC;CACpB,CAAC;AAEJ;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CAAC,EACtB,OAAO,EACP,QAAQ,EACR,KAAK,EACL,OAAO,EACP,IAAI,EACJ,SAAS,EACT,GAAG,KAAK,EACT,EAAE,YAAY,2CA8Cd"}
1
+ {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../src/components/tooltip/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEjE,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,6BAA6B,CAAC;AAErC,oFAAoF;AACpF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;CAmBxB,CAAC;AAEX,eAAO,MAAM,6BAA6B;;CAEhC,CAAC;AAGX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,qBAAqB,CAAC,IAAI,CAAC;AAEtE,MAAM,WAAW,wBAAwB;IACvC;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,eAAe,CAAC;CACxB;AAED,wBAAgB,eAAe,CAAC,EAC9B,IAAyC,GAC1C,GAAE,wBAA6B,UAY/B;AAED,eAAO,MAAM,eAAe,mEAAuB,CAAC;AAEpD,KAAK,gBAAgB,GAAG,wBAAwB,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;AAI1E,kFAAkF;AAClF,KAAK,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAE/C;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,GAAG,gBAAgB,GACzC,wBAAwB,GAAG;IACzB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,oFAAoF;IACpF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,OAAO,EAAE,SAAS,CAAC;IACnB;;;;OAIG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B,CAAC;AAEJ;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CAAC,EACtB,OAAO,EACP,QAAQ,EACR,KAAK,EACL,OAAO,EACP,IAAI,EACJ,SAAS,EACT,SAAS,EAAE,aAAa,EACxB,GAAG,KAAK,EACT,EAAE,YAAY,2CAiDd"}
@@ -70,7 +70,9 @@ export { CloudflareLogo, KUMO_CLOUDFLARE_LOGO_VARIANTS, KUMO_CLOUDFLARE_LOGO_DEF
70
70
  export { DatePicker, type DatePickerProps, type DateRange, type DayPickerProps, } from './components/date-picker';
71
71
  export { Flow } from './components/flow';
72
72
  export { Chart, ChartPalette, TimeseriesChart, ChartLegend, } from './components/chart';
73
+ export { Sidebar, SidebarProvider, SidebarRoot, SidebarHeader, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupLabel, SidebarGroupContent, SidebarMenu, SidebarMenuItem, SidebarMenuButton, SidebarMenuAction, SidebarMenuBadge, SidebarMenuSub, SidebarMenuSubItem, SidebarMenuSubButton, SidebarSeparator, SidebarInput, SidebarTrigger, SidebarRail, SidebarResizeHandle, SidebarMenuChevron, SidebarCollapsible, SidebarCollapsibleTrigger, SidebarCollapsibleContent, useSidebar, KUMO_SIDEBAR_VARIANTS, KUMO_SIDEBAR_DEFAULT_VARIANTS, KUMO_SIDEBAR_STYLING, type SidebarSide, type SidebarVariant, type SidebarCollapsible as SidebarCollapsibleType, type SidebarContextValue, type SidebarProviderProps, type SidebarRootProps, type SidebarMenuButtonSize, type SidebarMenuButtonProps, type SidebarMenuSubButtonProps, type SidebarInputProps, } from './components/sidebar';
73
74
  export { cn, safeRandomId } from './utils/cn';
74
75
  export { LinkProvider, useLinkComponent, type LinkComponentProps, } from './utils/link-provider';
76
+ export { KumoPortalProvider, type PortalContainer, } from './utils/portal-provider';
75
77
  export type { ComponentRegistry, ComponentSchema, ComponentStyling, ComponentType, PropSchema, SubComponentSchema, } from './registry/types';
76
78
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAGH,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EACL,MAAM,EACN,aAAa,EACb,UAAU,EACV,cAAc,EACd,KAAK,WAAW,EAChB,KAAK,eAAe,GACrB,MAAM,qBAAqB,CAAC;AAC7B;;GAEG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EACL,MAAM,EACN,UAAU,EACV,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EACL,KAAK,EACL,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,aAAa,EACb,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,EACL,KAAK,UAAU,EACf,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,EACL,aAAa,EACb,KAAK,UAAU,EACf,SAAS,EACT,QAAQ,EACR,KAAK,cAAc,EACnB,UAAU,GACX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EACL,cAAc,EACd,6BAA6B,EAC7B,qCAAqC,EACrC,KAAK,mBAAmB,GACzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,KAAK,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EACL,MAAM,EACN,aAAa,EACb,KAAK,EACL,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EACL,OAAO,EACP,qBAAqB,EACrB,6BAA6B,EAC7B,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,KAAK,mBAAmB,EACxB,6BAA6B,EAC7B,qCAAqC,GACtC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,KAAK,EACL,UAAU,EACV,mBAAmB,EACnB,2BAA2B,EAC3B,aAAa,EACb,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,YAAY,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EACd,6BAA6B,EAC7B,qCAAqC,EACrC,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,6BAA6B,EAClC,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,KAAK,6BAA6B,EAClC,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,KAAK,cAAc,GACpB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,kBAAkB,EAClB,0BAA0B,EAC1B,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,qBAAqB,GAC3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EACL,IAAI,EACJ,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,0BAA0B,EAC1B,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,WAAW,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,cAAc,EACd,6BAA6B,EAC7B,qCAAqC,EACrC,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EAExB,mBAAmB,EACnB,KAAK,wBAAwB,EAE7B,yBAAyB,EACzB,KAAK,gCAAgC,EACrC,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,GAC5B,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EACL,UAAU,EACV,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,cAAc,GACpB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EACL,KAAK,EACL,YAAY,EACZ,eAAe,EACf,WAAW,GACZ,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,KAAK,kBAAkB,GACxB,MAAM,uBAAuB,CAAC;AAG/B,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,kBAAkB,GACnB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export { cn, safeRandomId } from './cn';
2
2
  export { LinkProvider, useLinkComponent, type LinkComponentProps, } from './link-provider';
3
+ export { KumoPortalProvider, type PortalContainer } from './portal-provider';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,KAAK,kBAAkB,GACxB,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,KAAK,kBAAkB,GACxB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,kBAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,56 @@
1
+ import { ReactNode, RefObject } from 'react';
2
+ /**
3
+ * Portal container type - matches Base UI's FloatingPortal container prop.
4
+ * Supports HTMLElement, ShadowRoot, or a ref to either.
5
+ */
6
+ export type PortalContainer = HTMLElement | ShadowRoot | null | RefObject<HTMLElement | ShadowRoot | null>;
7
+ /**
8
+ * KumoPortalProvider — sets the default portal container for all Kumo overlay components.
9
+ *
10
+ * Use this to render Kumo overlays (Dialog, Tooltip, DropdownMenu, Select, Combobox,
11
+ * Popover, CommandPalette, Toast) inside a Shadow DOM or custom container.
12
+ *
13
+ * When not provided, overlays portal to `document.body` (default browser behavior).
14
+ * Individual components can override this via their own `container` prop.
15
+ *
16
+ * @example Shadow DOM usage
17
+ * ```tsx
18
+ * function WebComponent() {
19
+ * const shadowRef = useRef<ShadowRoot>(null);
20
+ *
21
+ * useEffect(() => {
22
+ * shadowRef.current = hostElement.attachShadow({ mode: 'open' });
23
+ * }, []);
24
+ *
25
+ * return (
26
+ * <KumoPortalProvider container={shadowRef.current}>
27
+ * <App />
28
+ * </KumoPortalProvider>
29
+ * );
30
+ * }
31
+ * ```
32
+ *
33
+ * @example Custom container
34
+ * ```tsx
35
+ * const containerRef = useRef<HTMLDivElement>(null);
36
+ *
37
+ * <div ref={containerRef}>
38
+ * <KumoPortalProvider container={containerRef}>
39
+ * <Dialog.Root>...</Dialog.Root>
40
+ * </KumoPortalProvider>
41
+ * </div>
42
+ * ```
43
+ */
44
+ export declare function KumoPortalProvider({ container, children, }: {
45
+ /** The container element or ShadowRoot to portal overlays into. */
46
+ container: PortalContainer;
47
+ children: ReactNode;
48
+ }): import("react/jsx-runtime").JSX.Element;
49
+ /**
50
+ * Hook to get the portal container from context.
51
+ * Returns null if no provider is present (defaults to document.body).
52
+ *
53
+ * @internal Used by overlay components to resolve their portal container.
54
+ */
55
+ export declare function usePortalContainer(): PortalContainer;
56
+ //# sourceMappingURL=portal-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portal-provider.d.ts","sourceRoot":"","sources":["../../../src/utils/portal-provider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf;;;GAGG;AACH,MAAM,MAAM,eAAe,GACvB,WAAW,GACX,UAAU,GACV,IAAI,GACJ,SAAS,CAAC,WAAW,GAAG,UAAU,GAAG,IAAI,CAAC,CAAC;AAI/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,SAAS,EACT,QAAQ,GACT,EAAE;IACD,mEAAmE;IACnE,SAAS,EAAE,eAAe,CAAC;IAC3B,QAAQ,EAAE,SAAS,CAAC;CACrB,2CAMA;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,IAAI,eAAe,CAEpD"}
@@ -9,14 +9,15 @@
9
9
  --color-blue-400: oklch(70.7% 0.165 254.624);
10
10
  --color-blue-800: oklch(42.4% 0.199 265.638);
11
11
 
12
- --color-kumo-neutral-25: oklch(99% 0 0);
13
- --color-kumo-neutral-50: oklch(97.5% 0 0);
14
- --color-kumo-neutral-75: oklch(96.7% 0 0);
15
- --color-kumo-neutral-150: oklch(93.5% 0 0);
16
- --color-kumo-neutral-450: oklch(86% 0 0);
17
- --color-kumo-neutral-850: oklch(22.4% 0 0);
18
- --color-kumo-neutral-925: oklch(18% 0 0);
19
- --color-kumo-neutral-975: oklch(8.5% 0 0);
12
+ --color-kumo-neutral-50: oklch(98.75% 0 0);
13
+ --color-kumo-neutral-75: oklch(98% 0 0);
14
+ --color-kumo-neutral-125: oklch(96.5% 0 0);
15
+ --color-kumo-neutral-450: oklch(89% 0 0);
16
+ --color-kumo-neutral-850: oklch(24% 0 0);
17
+ --color-kumo-neutral-925: oklch(17% 0 0);
18
+ --color-kumo-neutral-950: oklch(15% 0 0);
19
+ --color-kumo-neutral-975: oklch(12% 0 0);
20
+ --color-kumo-neutral-1000: oklch(10% 0 0);
20
21
  }
21
22
 
22
23
  /* Typography is now generated in theme-kumo.css via codegen:themes */
@@ -167,44 +168,46 @@
167
168
  transform-origin: center;
168
169
  }
169
170
 
170
- .skeleton-line {
171
- position: relative;
172
- overflow: hidden;
173
- border-radius: 2px;
174
- height: var(--skeleton-height, 0.5rem);
175
- width: var(--skeleton-width);
176
- background-color: #f3f4f6;
177
- /* neutral-100 for light mode */
178
- }
179
-
180
- .skeleton-line::after {
181
- position: absolute;
182
- top: 0;
183
- right: 0;
184
- bottom: 0;
185
- left: 0;
186
- animation: shimmer var(--shimmer-duration, 1.5s) var(--shimmer-delay, 0s)
187
- infinite ease-in-out;
188
- content: "";
189
- background: linear-gradient(
190
- 90deg,
191
- rgba(0, 0, 0, 0) 0%,
192
- rgba(0, 0, 0, 0.08) 50%,
193
- rgba(0, 0, 0, 0) 100%
194
- );
195
- }
196
-
197
- [data-mode="dark"] .skeleton-line {
198
- background-color: rgba(255, 255, 255, 0.06);
199
- }
200
-
201
- [data-mode="dark"] .skeleton-line::after {
202
- background: linear-gradient(
203
- 90deg,
204
- rgba(255, 255, 255, 0) 0%,
205
- rgba(255, 255, 255, 0.05) 50%,
206
- rgba(255, 255, 255, 0) 100%
207
- );
171
+ @layer base {
172
+ .skeleton-line {
173
+ position: relative;
174
+ overflow: hidden;
175
+ border-radius: 2px;
176
+ height: 0.5rem;
177
+ width: var(--skeleton-width);
178
+ background-color: #f3f4f6;
179
+ /* neutral-100 for light mode */
180
+ }
181
+
182
+ .skeleton-line::after {
183
+ position: absolute;
184
+ top: 0;
185
+ right: 0;
186
+ bottom: 0;
187
+ left: 0;
188
+ animation: shimmer var(--shimmer-duration, 1.5s) var(--shimmer-delay, 0s)
189
+ infinite ease-in-out;
190
+ content: "";
191
+ background: linear-gradient(
192
+ 90deg,
193
+ rgba(0, 0, 0, 0) 0%,
194
+ rgba(0, 0, 0, 0.08) 50%,
195
+ rgba(0, 0, 0, 0) 100%
196
+ );
197
+ }
198
+
199
+ [data-mode="dark"] .skeleton-line {
200
+ background-color: rgba(255, 255, 255, 0.06);
201
+ }
202
+
203
+ [data-mode="dark"] .skeleton-line::after {
204
+ background: linear-gradient(
205
+ 90deg,
206
+ rgba(255, 255, 255, 0) 0%,
207
+ rgba(255, 255, 255, 0.05) 50%,
208
+ rgba(255, 255, 255, 0) 100%
209
+ );
210
+ }
208
211
  }
209
212
 
210
213
  /* Popup outline offset - in dark mode, offset inward to align with inner stroke.