@espressif/dashboard-ui-components 1.11.2 → 1.12.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 (532) hide show
  1. package/.claude/rules/dashboard-ui-consumption.md +176 -5
  2. package/.cursor/rules/dashboard-ui-consumption.mdc +163 -4
  3. package/CHANGELOG.md +1005 -0
  4. package/README.md +240 -7
  5. package/THIRD-PARTY-NOTICES.md +2 -1
  6. package/dist/alert.props-CcKo49Rb.d.ts +44 -0
  7. package/dist/animation/index.d.ts +3 -0
  8. package/dist/animation/index.js +3 -0
  9. package/dist/avatar.props-2q5BsX-R.d.ts +29 -0
  10. package/dist/button-BK-DIR_L.d.ts +21 -0
  11. package/dist/button-BxJ7s6sR.d.ts +76 -0
  12. package/dist/calendar.props-BtCzuWH1.d.ts +12 -0
  13. package/dist/carousel/index.d.ts +2 -0
  14. package/dist/carousel/index.js +2 -0
  15. package/dist/charts/index.d.ts +5 -0
  16. package/dist/charts/index.js +9 -0
  17. package/dist/common/app-logo/app-logo.js +1 -1
  18. package/dist/common/index.d.ts +9 -20
  19. package/dist/common/my-account-menu/my-account-menu.js +45 -13
  20. package/dist/common/profile-card/profile-card.js +3 -2
  21. package/dist/components/accordion/accordion.js +14 -5
  22. package/dist/components/accordion/index.d.ts +36 -0
  23. package/dist/components/accordion/index.js +2 -0
  24. package/dist/components/advanced-search-box/advanced-search-box.js +8 -2
  25. package/dist/components/advanced-search-box/index.d.ts +29 -0
  26. package/dist/components/advanced-search-box/index.js +2 -0
  27. package/dist/components/alert/alert.js +2 -1
  28. package/dist/components/alert/index.d.ts +12 -0
  29. package/dist/components/alert/index.js +2 -0
  30. package/dist/components/anchored-panel/anchored-panel.js +83 -0
  31. package/dist/components/anchored-panel/index.d.ts +31 -0
  32. package/dist/components/anchored-panel/index.js +2 -0
  33. package/dist/components/animated-containers/index.d.ts +13 -0
  34. package/dist/components/animated-containers/index.js +2 -0
  35. package/dist/components/async-multi-select/async-multi-select.js +48 -7
  36. package/dist/components/async-multi-select/index.d.ts +63 -0
  37. package/dist/components/async-multi-select/index.js +2 -0
  38. package/dist/components/avatar/avatar.js +11 -4
  39. package/dist/components/avatar/index.d.ts +8 -0
  40. package/dist/components/avatar/index.js +2 -0
  41. package/dist/components/avatar-group/avatar-group.js +35 -0
  42. package/dist/components/avatar-group/index.d.ts +31 -0
  43. package/dist/components/avatar-group/index.js +2 -0
  44. package/dist/components/badge/index.d.ts +14 -0
  45. package/dist/components/badge/index.js +2 -0
  46. package/dist/components/breadcrumb/index.d.ts +21 -0
  47. package/dist/components/breadcrumb/index.js +2 -0
  48. package/dist/components/bubble/bubble.js +18 -0
  49. package/dist/components/bubble/index.d.ts +19 -0
  50. package/dist/components/bubble/index.js +2 -0
  51. package/dist/components/button/button.js +87 -25
  52. package/dist/components/button/flash-button.js +9 -3
  53. package/dist/components/button/index.d.ts +56 -0
  54. package/dist/components/button/index.js +6 -0
  55. package/dist/components/button-group/index.d.ts +16 -0
  56. package/dist/components/button-group/index.js +2 -0
  57. package/dist/components/calendar/calendar.js +5 -5
  58. package/dist/components/calendar/index.d.ts +11 -0
  59. package/dist/components/calendar/index.js +2 -0
  60. package/dist/components/card/index.d.ts +11 -0
  61. package/dist/components/card/index.js +2 -0
  62. package/dist/components/card-rail/card-rail.js +50 -0
  63. package/dist/components/card-rail/index.d.ts +30 -0
  64. package/dist/components/card-rail/index.js +2 -0
  65. package/dist/components/cards/collapsible-card.js +5 -2
  66. package/dist/components/cards/index.d.ts +16200 -0
  67. package/dist/components/cards/index.js +8 -0
  68. package/dist/components/cards/section-card.js +133 -8
  69. package/dist/components/cards/simple-card.js +5 -2
  70. package/dist/components/carousel/carousel.js +137 -49
  71. package/dist/components/carousel/index.d.ts +130 -0
  72. package/dist/components/carousel/index.js +2 -0
  73. package/dist/components/category-card/category-card.js +111 -0
  74. package/dist/components/category-card/index.d.ts +55 -0
  75. package/dist/components/category-card/index.js +2 -0
  76. package/dist/components/chart/area-chart.js +95 -85
  77. package/dist/components/chart/bar-chart.js +123 -60
  78. package/dist/components/chart/chart.js +127 -3
  79. package/dist/components/chart/composed-chart.js +109 -98
  80. package/dist/components/chart/donut-chart.js +23 -5
  81. package/dist/components/chart/index.d.ts +732 -0
  82. package/dist/components/chart/index.js +9 -0
  83. package/dist/components/chart/line-chart.js +93 -83
  84. package/dist/components/chart/treemap-chart.js +71 -58
  85. package/dist/components/check-badge/check-badge.js +25 -0
  86. package/dist/components/check-badge/index.d.ts +13 -0
  87. package/dist/components/check-badge/index.js +2 -0
  88. package/dist/components/checkbox/index.d.ts +8 -0
  89. package/dist/components/checkbox/index.js +2 -0
  90. package/dist/components/choice-card/choice-card.js +99 -0
  91. package/dist/components/choice-card/index.d.ts +41 -0
  92. package/dist/components/choice-card/index.js +2 -0
  93. package/dist/components/circular-progress/circular-progress.js +5 -2
  94. package/dist/components/circular-progress/index.d.ts +23 -0
  95. package/dist/components/circular-progress/index.js +2 -0
  96. package/dist/components/code/index.d.ts +40 -0
  97. package/dist/components/code/index.js +2 -0
  98. package/dist/components/code-editor/code-editor.js +9 -3
  99. package/dist/components/code-editor/index.d.ts +82 -0
  100. package/dist/components/code-editor/index.js +2 -0
  101. package/dist/components/collapsible/index.d.ts +42 -0
  102. package/dist/components/collapsible/index.js +2 -0
  103. package/dist/components/column-panel/column-panel.js +38 -0
  104. package/dist/components/column-panel/index.d.ts +37 -0
  105. package/dist/components/column-panel/index.js +3 -0
  106. package/dist/components/column-panel/use-panel-flag.js +27 -0
  107. package/dist/components/combobox/index.d.ts +28 -0
  108. package/dist/components/combobox/index.js +2 -0
  109. package/dist/components/confirmation-dialog/confirmation-dialog.js +1 -1
  110. package/dist/components/confirmation-dialog/index.d.ts +40 -0
  111. package/dist/components/confirmation-dialog/index.js +3 -0
  112. package/dist/components/content-container/index.d.ts +16 -0
  113. package/dist/components/content-container/index.js +2 -0
  114. package/dist/components/copiable-text/index.d.ts +33 -0
  115. package/dist/components/copiable-text/index.js +2 -0
  116. package/dist/components/coverflow/_constants/coverflow-poses.js +23 -0
  117. package/dist/components/coverflow/_constants/coverflow-shapes.js +23 -0
  118. package/dist/components/coverflow/_hooks/use-coverflow.js +90 -0
  119. package/dist/components/coverflow/_utils/ring.js +24 -0
  120. package/dist/components/coverflow/coverflow.js +198 -0
  121. package/dist/components/coverflow/index.d.ts +105 -0
  122. package/dist/components/coverflow/index.js +2 -0
  123. package/dist/components/data-table/data-table.js +9 -2
  124. package/dist/components/data-table/index.d.ts +120 -0
  125. package/dist/components/data-table/index.js +3 -0
  126. package/dist/components/date-picker/date-picker.js +5 -2
  127. package/dist/components/date-picker/index.d.ts +50 -0
  128. package/dist/components/date-picker/index.js +2 -0
  129. package/dist/components/date-range-picker/date-range-picker.js +11 -2
  130. package/dist/components/date-range-picker/index.d.ts +100 -0
  131. package/dist/components/date-range-picker/index.js +3 -0
  132. package/dist/components/date-time-picker/date-time-picker.js +5 -2
  133. package/dist/components/date-time-picker/index.d.ts +79 -0
  134. package/dist/components/date-time-picker/index.js +2 -0
  135. package/dist/components/device-icon/index.d.ts +17 -0
  136. package/dist/components/device-icon/index.js +2 -0
  137. package/dist/components/dialog/index.d.ts +38 -0
  138. package/dist/components/dialog/index.js +2 -0
  139. package/dist/components/dropdown-menu/index.d.ts +57 -0
  140. package/dist/components/dropdown-menu/index.js +2 -0
  141. package/dist/components/dynamic-list/dynamic-list.js +4 -4
  142. package/dist/components/dynamic-list/index.d.ts +74 -0
  143. package/dist/components/dynamic-list/index.js +2 -0
  144. package/dist/components/error-display/index.d.ts +17 -0
  145. package/dist/components/error-display/index.js +3 -0
  146. package/dist/components/expandable-text/expandable-text-overlay.js +78 -0
  147. package/dist/components/expandable-text/expandable-text.js +73 -0
  148. package/dist/components/expandable-text/index.d.ts +39 -0
  149. package/dist/components/expandable-text/index.js +2 -0
  150. package/dist/components/expandable-text/use-clamped.js +23 -0
  151. package/dist/components/facet-filters/_hooks/use-filter-group.js +51 -0
  152. package/dist/components/facet-filters/active-filters.js +31 -0
  153. package/dist/components/facet-filters/filter-group.js +110 -0
  154. package/dist/components/facet-filters/filters-panel.js +59 -0
  155. package/dist/components/facet-filters/filters-pill.js +40 -0
  156. package/dist/components/facet-filters/index.d.ts +104 -0
  157. package/dist/components/facet-filters/index.js +6 -0
  158. package/dist/components/facet-filters/use-filters-collapsed.js +21 -0
  159. package/dist/components/feature-grid/feature-grid.js +115 -0
  160. package/dist/components/feature-grid/index.d.ts +53 -0
  161. package/dist/components/feature-grid/index.js +2 -0
  162. package/dist/components/file-input/file-input.js +9 -3
  163. package/dist/components/file-input/index.d.ts +78 -0
  164. package/dist/components/file-input/index.js +2 -0
  165. package/dist/components/file-upload/file-upload.js +10 -5
  166. package/dist/components/file-upload/index.d.ts +38 -0
  167. package/dist/components/file-upload/index.js +2 -0
  168. package/dist/components/filters-bar/filters-bar.js +5 -1
  169. package/dist/components/filters-bar/index.d.ts +26 -0
  170. package/dist/components/filters-bar/index.js +2 -0
  171. package/dist/components/flip-card/flip-card.js +147 -0
  172. package/dist/components/flip-card/index.d.ts +43 -0
  173. package/dist/components/flip-card/index.js +2 -0
  174. package/dist/components/floating-window/_hooks/use-drag-move.js +76 -0
  175. package/dist/components/floating-window/floating-window.js +97 -0
  176. package/dist/components/floating-window/index.d.ts +45 -0
  177. package/dist/components/floating-window/index.js +2 -0
  178. package/dist/components/form/index.d.ts +28 -0
  179. package/dist/components/form/index.js +2 -0
  180. package/dist/components/fullscreen-dialog/fullscreen-dialog.js +6 -2
  181. package/dist/components/fullscreen-dialog/index.d.ts +38 -0
  182. package/dist/components/fullscreen-dialog/index.js +2 -0
  183. package/dist/components/horizontal-stepper/horizontal-stepper.js +122 -0
  184. package/dist/components/horizontal-stepper/index.d.ts +70 -0
  185. package/dist/components/horizontal-stepper/index.js +2 -0
  186. package/dist/components/icon-avatar/index.d.ts +9 -0
  187. package/dist/components/icon-avatar/index.js +2 -0
  188. package/dist/components/icon-text-action-card/icon-text-action-card.js +9 -5
  189. package/dist/components/icon-text-action-card/index.d.ts +11 -0
  190. package/dist/components/icon-text-action-card/index.js +2 -0
  191. package/dist/components/identicon/identicon.js +33 -0
  192. package/dist/components/identicon/index.d.ts +26 -0
  193. package/dist/components/identicon/index.js +2 -0
  194. package/dist/components/illustration/index.d.ts +37 -0
  195. package/dist/components/illustration/index.js +3 -0
  196. package/dist/components/index.d.ts +177 -19529
  197. package/dist/components/index.js +61 -10
  198. package/dist/components/input/index.d.ts +15 -0
  199. package/dist/components/input/index.js +3 -0
  200. package/dist/components/input-group/index.d.ts +35 -0
  201. package/dist/components/input-group/index.js +2 -0
  202. package/dist/components/input-group/input-group.js +41 -0
  203. package/dist/components/input-otp/index.d.ts +63 -0
  204. package/dist/components/input-otp/index.js +2 -0
  205. package/dist/components/key-value-manager/index.d.ts +63 -0
  206. package/dist/components/key-value-manager/index.js +2 -0
  207. package/dist/components/key-value-manager/key-value-manager-table.js +7 -5
  208. package/dist/components/label/index.d.ts +8 -0
  209. package/dist/components/label/index.js +2 -0
  210. package/dist/components/link/index.d.ts +33 -0
  211. package/dist/components/link/index.js +2 -0
  212. package/dist/components/list/index.d.ts +9 -0
  213. package/dist/components/list/index.js +3 -0
  214. package/dist/components/list/list-item.utils.js +1 -1
  215. package/dist/components/list/list.js +3 -1
  216. package/dist/components/list-details/index.d.ts +51 -0
  217. package/dist/components/list-details/index.js +2 -0
  218. package/dist/components/list-details/list-details.js +5 -2
  219. package/dist/components/lottie-animation-container/index.d.ts +10 -0
  220. package/dist/components/lottie-animation-container/index.js +2 -0
  221. package/dist/components/lottie-animation-container/lottie-animation-container.js +22 -3
  222. package/dist/components/lottie-animations/index.d.ts +8 -0
  223. package/dist/components/lottie-animations/index.js +2 -0
  224. package/dist/components/markdown-content/index.d.ts +32 -0
  225. package/dist/components/markdown-content/index.js +2 -0
  226. package/dist/components/media-card/index.d.ts +125 -0
  227. package/dist/components/media-card/index.js +4 -0
  228. package/dist/components/media-card/media-card-image.js +59 -0
  229. package/dist/components/media-card/media-card-reveal.js +76 -0
  230. package/dist/components/media-card/media-card.classes.js +37 -0
  231. package/dist/components/media-card/media-card.js +91 -0
  232. package/dist/components/media-stage/index.d.ts +41 -0
  233. package/dist/components/media-stage/index.js +2 -0
  234. package/dist/components/media-stage/media-stage.js +48 -0
  235. package/dist/components/menu/index.d.ts +14 -0
  236. package/dist/components/menu/index.js +2 -0
  237. package/dist/components/message-scroller/_hooks/use-follow-bottom.js +85 -0
  238. package/dist/components/message-scroller/index.d.ts +29 -0
  239. package/dist/components/message-scroller/index.js +2 -0
  240. package/dist/components/message-scroller/message-scroller.js +65 -0
  241. package/dist/components/mini-bar-chart/index.d.ts +40 -0
  242. package/dist/components/mini-bar-chart/index.js +2 -0
  243. package/dist/components/mini-bar-chart/mini-bar-chart.js +93 -0
  244. package/dist/components/monospace-content/index.d.ts +43 -0
  245. package/dist/components/monospace-content/index.js +2 -0
  246. package/dist/components/monospace-content/monospace-content.js +1 -1
  247. package/dist/components/nav-bar/index.d.ts +148 -0
  248. package/dist/components/nav-bar/index.js +2 -0
  249. package/dist/components/nav-bar/nav-bar-details-panel.js +158 -44
  250. package/dist/components/nav-bar/nav-bar-mobile-menu.js +93 -27
  251. package/dist/components/nav-bar/nav-bar.js +256 -138
  252. package/dist/components/nav-bar/use-nav-bar-hover-details.js +80 -0
  253. package/dist/components/nav-bar/use-nav-bar-overflow.js +5 -5
  254. package/dist/components/notice-strip/index.d.ts +32 -0
  255. package/dist/components/notice-strip/index.js +2 -0
  256. package/dist/components/notice-strip/notice-strip.js +57 -0
  257. package/dist/components/option-card-group/index.d.ts +50 -0
  258. package/dist/components/option-card-group/index.js +2 -0
  259. package/dist/components/option-card-group/option-card-group.js +76 -0
  260. package/dist/components/overflow-badge-list/index.d.ts +63 -0
  261. package/dist/components/overflow-badge-list/index.js +2 -0
  262. package/dist/components/overflow-badge-list/overflow-badge-list.js +78 -19
  263. package/dist/components/page-banner/index.d.ts +33 -0
  264. package/dist/components/page-banner/index.js +2 -0
  265. package/dist/components/page-banner/page-banner.js +56 -0
  266. package/dist/components/page-container/index.d.ts +20 -0
  267. package/dist/components/page-container/index.js +3 -0
  268. package/dist/components/page-container/page-container.js +5 -5
  269. package/dist/components/pagination/index.d.ts +31 -0
  270. package/dist/components/pagination/index.js +3 -0
  271. package/dist/components/popover/index.d.ts +60 -0
  272. package/dist/components/popover/index.js +3 -0
  273. package/dist/components/preview-card/index.d.ts +24 -0
  274. package/dist/components/preview-card/index.js +2 -0
  275. package/dist/components/progress-bar/index.d.ts +32 -0
  276. package/dist/components/progress-bar/index.js +2 -0
  277. package/dist/components/progress-bar/progress-bar.js +22 -6
  278. package/dist/components/radio-group/index.d.ts +24 -0
  279. package/dist/components/radio-group/index.js +2 -0
  280. package/dist/components/rank-numeral/index.d.ts +30 -0
  281. package/dist/components/rank-numeral/index.js +2 -0
  282. package/dist/components/rank-numeral/rank-numeral.js +26 -0
  283. package/dist/components/reaction-button/index.d.ts +32 -0
  284. package/dist/components/reaction-button/index.js +2 -0
  285. package/dist/components/reaction-button/reaction-button.js +50 -0
  286. package/dist/components/readout/index.d.ts +31 -0
  287. package/dist/components/readout/index.js +2 -0
  288. package/dist/components/readout/readout.js +63 -0
  289. package/dist/components/requirement-list/index.d.ts +52 -0
  290. package/dist/components/requirement-list/index.js +2 -0
  291. package/dist/components/requirement-list/requirement-list.js +29 -8
  292. package/dist/components/resizable/index.d.ts +31 -0
  293. package/dist/components/resizable/index.js +4 -0
  294. package/dist/components/resizable/resizable-group.js +23 -0
  295. package/dist/components/resizable/resizable-panel.js +28 -0
  296. package/dist/components/resizable/resizable-separator.js +24 -0
  297. package/dist/components/reveal/index.d.ts +23 -0
  298. package/dist/components/reveal/index.js +2 -0
  299. package/dist/components/reveal/reveal.js +24 -0
  300. package/dist/components/scroll-area/index.d.ts +27 -0
  301. package/dist/components/scroll-area/index.js +2 -0
  302. package/dist/components/scrollable-sections/index.d.ts +58 -0
  303. package/dist/components/scrollable-sections/index.js +2 -0
  304. package/dist/components/scrollable-sections/scrollable-sections.js +11 -3
  305. package/dist/components/search-box/index.d.ts +32 -0
  306. package/dist/components/search-box/index.js +2 -0
  307. package/dist/components/search-box/search-box.js +18 -3
  308. package/dist/components/search-field-shell.js +1 -1
  309. package/dist/components/select/index.d.ts +44 -0
  310. package/dist/components/select/index.js +2 -0
  311. package/dist/components/selectable-card-list/checkbox-card-list.js +5 -3
  312. package/dist/components/selectable-card-list/index.d.ts +76 -0
  313. package/dist/components/selectable-card-list/index.js +2 -0
  314. package/dist/components/selectable-card-list/radio-card-list.js +12 -6
  315. package/dist/components/selectable-card-list/selectable-card-list-shared.js +24 -12
  316. package/dist/components/selectable-card-list/selectable-card-list.js +12 -3
  317. package/dist/components/separator/index.d.ts +24 -0
  318. package/dist/components/separator/index.js +2 -0
  319. package/dist/components/share-menu/index.d.ts +55 -0
  320. package/dist/components/share-menu/index.js +2 -0
  321. package/dist/components/share-menu/share-marks.js +31 -0
  322. package/dist/components/share-menu/share-menu.js +140 -0
  323. package/dist/components/share-menu/share-urls.js +15 -0
  324. package/dist/components/sheet/index.d.ts +41 -0
  325. package/dist/components/sheet/index.js +2 -0
  326. package/dist/components/showcase-card/index.d.ts +53 -0
  327. package/dist/components/showcase-card/index.js +2 -0
  328. package/dist/components/showcase-card/showcase-card.js +75 -0
  329. package/dist/components/sidebar/index.d.ts +109 -0
  330. package/dist/components/sidebar/index.js +4 -0
  331. package/dist/components/sidebar/sidebar.js +56 -40
  332. package/dist/components/simple-clickable-card/index.d.ts +11 -0
  333. package/dist/components/simple-clickable-card/index.js +2 -0
  334. package/dist/components/simple-clickable-card/simple-clickable-card-shared.js +2 -2
  335. package/dist/components/simple-clickable-card/simple-clickable-card.js +5 -2
  336. package/dist/components/simple-info-card/index.d.ts +25 -0
  337. package/dist/components/simple-info-card/index.js +2 -0
  338. package/dist/components/simple-info-card/simple-info-card.js +6 -3
  339. package/dist/components/simple-list/index.d.ts +63 -0
  340. package/dist/components/simple-list/index.js +2 -0
  341. package/dist/components/simple-list/simple-list.js +3 -1
  342. package/dist/components/simple-paginated-list/index.d.ts +20 -0
  343. package/dist/components/simple-paginated-list/index.js +2 -0
  344. package/dist/components/simplified-date/index.d.ts +18 -0
  345. package/dist/components/simplified-date/index.js +2 -0
  346. package/dist/components/skeleton/index.d.ts +5 -0
  347. package/dist/components/skeleton/index.js +2 -0
  348. package/dist/components/skeletons/index.d.ts +11 -0
  349. package/dist/components/skeletons/index.js +2 -0
  350. package/dist/components/sort-menu/index.d.ts +34 -0
  351. package/dist/components/sort-menu/index.js +2 -0
  352. package/dist/components/sort-menu/sort-menu.js +39 -0
  353. package/dist/components/spinner/index.d.ts +15 -0
  354. package/dist/components/spinner/index.js +2 -0
  355. package/dist/components/stat-card/index.d.ts +43 -0
  356. package/dist/components/stat-card/index.js +2 -0
  357. package/dist/components/stat-card/stat-card.js +31 -12
  358. package/dist/components/status-badge/index.d.ts +24 -0
  359. package/dist/components/status-badge/index.js +2 -0
  360. package/dist/components/status-badge/status-badge.js +3 -2
  361. package/dist/components/status-card-list/index.d.ts +24 -0
  362. package/dist/components/status-card-list/index.js +2 -0
  363. package/dist/components/status-card-list/status-card-list.js +8 -4
  364. package/dist/components/step-tabs/index.d.ts +94 -0
  365. package/dist/components/step-tabs/index.js +2 -0
  366. package/dist/components/step-tabs/step-tabs.js +202 -0
  367. package/dist/components/style-scope/index.d.ts +32 -0
  368. package/dist/components/style-scope/index.js +2 -0
  369. package/dist/components/style-scope/style-scope.js +49 -0
  370. package/dist/components/switch/index.d.ts +15 -0
  371. package/dist/components/switch/index.js +2 -0
  372. package/dist/components/table/index.d.ts +18 -0
  373. package/dist/components/table/index.js +2 -0
  374. package/dist/components/tabs/index.d.ts +103 -0
  375. package/dist/components/tabs/index.js +2 -0
  376. package/dist/components/tag/index.d.ts +31 -0
  377. package/dist/components/tag/index.js +2 -0
  378. package/dist/components/tag/tag.js +79 -28
  379. package/dist/components/tag-input/index.d.ts +36 -0
  380. package/dist/components/tag-input/index.js +2 -0
  381. package/dist/components/tag-input/tag-input.js +10 -4
  382. package/dist/components/text-effects/index.d.ts +53 -0
  383. package/dist/components/text-effects/index.js +6 -0
  384. package/dist/components/textarea/index.d.ts +16 -0
  385. package/dist/components/textarea/index.js +2 -0
  386. package/dist/components/thumbnail-strip/index.d.ts +42 -0
  387. package/dist/components/thumbnail-strip/index.js +2 -0
  388. package/dist/components/thumbnail-strip/thumbnail-strip.js +124 -0
  389. package/dist/components/thumbnail-strip/use-scroll-edges.js +41 -0
  390. package/dist/components/time-picker/index.d.ts +13 -0
  391. package/dist/components/time-picker/index.js +2 -0
  392. package/dist/components/timeline/index.d.ts +39 -0
  393. package/dist/components/timeline/index.js +2 -0
  394. package/dist/components/timeline/timeline.js +85 -0
  395. package/dist/components/toast/index.d.ts +56 -0
  396. package/dist/components/toast/index.js +2 -0
  397. package/dist/components/toast/toast.js +42 -32
  398. package/dist/components/togglable-items-list/index.d.ts +28 -0
  399. package/dist/components/togglable-items-list/index.js +2 -0
  400. package/dist/components/toggle-group/index.d.ts +35 -0
  401. package/dist/components/toggle-group/index.js +2 -0
  402. package/dist/components/toolbar/index.d.ts +58 -0
  403. package/dist/components/toolbar/index.js +3 -0
  404. package/dist/components/toolbar/toolbar-button.js +40 -0
  405. package/dist/components/toolbar/toolbar.js +56 -0
  406. package/dist/components/tooltip/index.d.ts +29 -0
  407. package/dist/components/tooltip/index.js +3 -0
  408. package/dist/components/tooltip/tooltip.js +12 -2
  409. package/dist/components/transfer-list/index.d.ts +36 -0
  410. package/dist/components/transfer-list/index.js +2 -0
  411. package/dist/components/transfer-list/transfer-list.js +1 -1
  412. package/dist/components/truncated-line-with-tooltip/index.d.ts +22 -0
  413. package/dist/components/truncated-line-with-tooltip/index.js +2 -0
  414. package/dist/components/truncated-line-with-tooltip/truncated-line-with-tooltip.js +26 -8
  415. package/dist/components/typography/index.d.ts +19 -0
  416. package/dist/components/typography/index.js +3 -0
  417. package/dist/components/use-mobile/index.d.ts +3 -0
  418. package/dist/components/use-mobile/index.js +2 -0
  419. package/dist/components/user-type-badge/index.d.ts +39 -0
  420. package/dist/components/user-type-badge/index.js +3 -0
  421. package/dist/components/user-type-badge/user-type-badge.js +2 -1
  422. package/dist/components/vertical-stepper/index.d.ts +7 -0
  423. package/dist/components/vertical-stepper/index.js +2 -0
  424. package/dist/components/vertical-stepper/vertical-stepper.js +33 -6
  425. package/dist/components/view-toggle/index.d.ts +38 -0
  426. package/dist/components/view-toggle/index.js +2 -0
  427. package/dist/components/view-toggle/view-toggle.js +56 -0
  428. package/dist/core/animate-ui/components/animate/code.js +83 -9
  429. package/dist/core/animate-ui/components/animate/tabs.js +234 -19
  430. package/dist/core/animate-ui/components/animate/tooltip.js +10 -2
  431. package/dist/core/animate-ui/components/base/preview-card.js +20 -3
  432. package/dist/core/animate-ui/components/buttons/copy.js +12 -6
  433. package/dist/core/animate-ui/components/radix/dialog.js +17 -3
  434. package/dist/core/animate-ui/components/radix/dropdown-menu.js +26 -9
  435. package/dist/core/animate-ui/components/radix/sheet.js +20 -4
  436. package/dist/core/animate-ui/components/radix/sidebar.js +9 -9
  437. package/dist/core/animate-ui/components/radix/toggle-group.js +103 -13
  438. package/dist/core/animate-ui/components/radix/toggle.js +5 -5
  439. package/dist/core/animate-ui/primitives/animate/code-block.js +31 -4
  440. package/dist/core/animate-ui/primitives/animate/shiki-highlighter.js +5 -2
  441. package/dist/core/animate-ui/primitives/animate/tabs.js +7 -4
  442. package/dist/core/animate-ui/primitives/animate/tooltip.js +10 -3
  443. package/dist/core/animate-ui/primitives/base/preview-card.js +2 -2
  444. package/dist/core/animate-ui/primitives/base/progress.js +1 -1
  445. package/dist/core/animate-ui/primitives/base/radio.js +3 -3
  446. package/dist/core/animate-ui/primitives/effects/highlight.js +1 -0
  447. package/dist/core/animate-ui/primitives/radix/accordion.js +1 -1
  448. package/dist/core/animate-ui/primitives/radix/dialog.js +6 -3
  449. package/dist/core/animate-ui/primitives/radix/dropdown-menu.js +2 -2
  450. package/dist/core/animate-ui/primitives/radix/sheet.js +7 -3
  451. package/dist/core/animate-ui/primitives/radix/switch.js +2 -2
  452. package/dist/core/animate-ui/primitives/radix/toggle-group.js +2 -2
  453. package/dist/core/badge.js +5 -2
  454. package/dist/core/breadcrumb.js +1 -1
  455. package/dist/core/button/button.js +8 -8
  456. package/dist/core/button/craft-button.js +8 -2
  457. package/dist/core/button.js +17 -7
  458. package/dist/core/card.js +23 -5
  459. package/dist/core/combobox/combobox.js +8 -2
  460. package/dist/core/command.js +3 -3
  461. package/dist/core/form.js +1 -1
  462. package/dist/core/hooks/use-nested-layer-press-guard.js +46 -0
  463. package/dist/core/hooks/use-on-screen.js +33 -0
  464. package/dist/core/hooks/use-prefers-reduced-motion.js +19 -0
  465. package/dist/core/hooks/use-scroll-overflow.js +20 -0
  466. package/dist/core/index.d.ts +30 -5
  467. package/dist/core/index.js +5 -2
  468. package/dist/core/input/input-password.js +13 -9
  469. package/dist/core/input/input.js +38 -12
  470. package/dist/core/input-otp/input-otp.js +9 -5
  471. package/dist/core/popover-group.js +48 -0
  472. package/dist/core/popover-hover.js +127 -0
  473. package/dist/core/popover.js +75 -6
  474. package/dist/core/select.js +35 -20
  475. package/dist/core/table.js +5 -3
  476. package/dist/core/textarea/textarea.js +11 -3
  477. package/dist/data-table/index.d.ts +4 -0
  478. package/dist/data-table/index.js +3 -0
  479. package/dist/date/index.d.ts +11 -0
  480. package/dist/date/index.js +7 -0
  481. package/dist/forms/index.d.ts +4 -0
  482. package/dist/forms/index.js +2 -0
  483. package/dist/icon-avatar.props-RYtw2eSW.d.ts +31 -0
  484. package/dist/icon-text-action-card.props-B2ggncUK.d.ts +53 -0
  485. package/dist/index.d.ts +169 -15
  486. package/dist/index.js +63 -10
  487. package/dist/input-CYI1hhGc.d.ts +38 -0
  488. package/dist/layouts/index.d.ts +132 -8
  489. package/dist/layouts/index.js +3 -1
  490. package/dist/layouts/minimal-workspace-layout/minimal-workspace-layout-context.js +5 -0
  491. package/dist/layouts/minimal-workspace-layout/minimal-workspace-layout.js +404 -0
  492. package/dist/layouts/minimal-workspace-layout/rail-logo.js +90 -0
  493. package/dist/layouts/minimal-workspace-layout/sidebar-trigger.js +42 -0
  494. package/dist/layouts/shared/account-menu-props.js +21 -0
  495. package/dist/layouts/shared/footer-branding.js +34 -0
  496. package/dist/layouts/shared/sidebar-logo.js +59 -0
  497. package/dist/layouts/workspace-layout/account-menu/account-menu.js +9 -3
  498. package/dist/layouts/workspace-layout/footer/footer.js +1 -1
  499. package/dist/layouts/workspace-layout/header/header.js +1 -1
  500. package/dist/layouts/workspace-layout/workspace-layout.js +28 -80
  501. package/dist/{list.props-x1j3CbcF.d.ts → list.props-DP_xPTqU.d.ts} +2 -1
  502. package/dist/markdown/index.d.ts +11 -0
  503. package/dist/markdown/index.js +5 -0
  504. package/dist/my-account-menu.props-C7DK71WC.d.ts +67 -0
  505. package/dist/page-container.props-JutTvKFq.d.ts +48 -0
  506. package/dist/resizable.props-RxFY5tm_.d.ts +44 -0
  507. package/dist/section-card-B7c5uc08.d.ts +84 -0
  508. package/dist/simple-clickable-card.props-BrPCw7CR.d.ts +51 -0
  509. package/dist/slot-DGErA9zi.d.ts +10 -0
  510. package/dist/status-badge.props-lKlEOfRt.d.ts +32 -0
  511. package/dist/style-axes-DSQ2DGc5.d.ts +133 -0
  512. package/dist/toast/index.d.ts +6 -0
  513. package/dist/toast/index.js +2 -0
  514. package/dist/tooltip-C0bYa8a3.d.ts +37 -0
  515. package/dist/{types-DtUxK-Am.d.ts → types-CkXflqg7.d.ts} +31 -1
  516. package/dist/utils/cn.js +6 -1
  517. package/dist/utils/color.js +35 -10
  518. package/dist/utils/index.d.ts +18 -2
  519. package/dist/utils/index.js +4 -1
  520. package/dist/utils/silver-shine.js +16 -1
  521. package/dist/utils/style-axes.js +227 -0
  522. package/dist/utils/variant.js +104 -8
  523. package/dist/utils/view-transition.js +21 -0
  524. package/dist/variant-D81RhpbR.d.ts +104 -0
  525. package/dist/vertical-stepper.props-BXYcbW70.d.ts +29 -0
  526. package/package.json +52 -6
  527. package/src/styles/colors.css +100 -4
  528. package/src/styles/globals.css +8 -131
  529. package/src/styles/style-axes.css +21 -0
  530. package/src/styles/theme.css +696 -0
  531. package/dist/app-logo.props-Ct7QBdTd.d.ts +0 -40
  532. package/dist/popover-ByLD3-Qv.d.ts +0 -204
@@ -0,0 +1,109 @@
1
+ import * as React from 'react';
2
+ import { e as SidebarProps$1 } from '../../types-CkXflqg7.js';
3
+ export { S as SidebarEndActionConfig, a as SidebarGroupConfig, b as SidebarItemConfig, c as SidebarLinkComponentProps, d as SidebarNavEntry, f as SidebarTopLevelLinkConfig, i as isSidebarGroup } from '../../types-CkXflqg7.js';
4
+ import * as class_variance_authority_types from 'class-variance-authority/types';
5
+ import { VariantProps } from 'class-variance-authority';
6
+ import { Transition } from 'motion/react';
7
+ import { a as Button } from '../../button-BK-DIR_L.js';
8
+ import { I as Input } from '../../input-CYI1hhGc.js';
9
+ import { Separator } from '../separator/index.js';
10
+ import { T as TooltipContent } from '../../tooltip-C0bYa8a3.js';
11
+ import '../../style-axes-DSQ2DGc5.js';
12
+ import '../../index-BQANnKs9.js';
13
+ import '@radix-ui/react-separator';
14
+ import '../../slot-DGErA9zi.js';
15
+
16
+ declare function Sidebar$1({ items, currentPath, header, headerHeight, footer, linkComponent: LinkComponent, collapsible, variant, focusActiveGroup, density, flyoutRadius, flyoutElevation, beforeContent, headerClassName, className, mobileClassName, id, onClick, }: SidebarProps$1): React.JSX.Element;
17
+
18
+ type SidebarContextProps = {
19
+ state: 'expanded' | 'collapsed';
20
+ open: boolean;
21
+ setOpen: (open: boolean) => void;
22
+ openMobile: boolean;
23
+ setOpenMobile: (open: boolean) => void;
24
+ isMobile: boolean;
25
+ toggleSidebar: () => void;
26
+ };
27
+ declare const useSidebar: () => SidebarContextProps;
28
+ type SidebarProviderProps = React.ComponentProps<'div'> & {
29
+ defaultOpen?: boolean;
30
+ open?: boolean;
31
+ onOpenChange?: (open: boolean) => void;
32
+ };
33
+ declare function SidebarProvider({ defaultOpen, open: openProp, onOpenChange: setOpenProp, className, style, children, ...props }: SidebarProviderProps): React.JSX.Element;
34
+ type SidebarProps = React.ComponentProps<'div'> & {
35
+ side?: 'left' | 'right';
36
+ variant?: 'sidebar' | 'floating' | 'inset';
37
+ collapsible?: 'offcanvas' | 'icon' | 'none';
38
+ containerClassName?: string;
39
+ /** Extra classes for the mobile sheet's panel (`SheetContent`). */
40
+ mobileClassName?: string;
41
+ animateOnHover?: boolean;
42
+ transition?: Transition;
43
+ };
44
+ declare function Sidebar({ side, variant, collapsible, className, children, animateOnHover, containerClassName, mobileClassName, transition, ...props }: SidebarProps): React.JSX.Element;
45
+ type SidebarTriggerProps = React.ComponentProps<typeof Button>;
46
+ declare function SidebarTrigger({ className, onClick, ...props }: SidebarTriggerProps): React.JSX.Element;
47
+ type SidebarRailProps = React.ComponentProps<'button'>;
48
+ declare function SidebarRail({ className, ...props }: SidebarRailProps): React.JSX.Element;
49
+ type SidebarInsetProps = React.ComponentProps<'main'>;
50
+ declare function SidebarInset({ className, ...props }: SidebarInsetProps): React.JSX.Element;
51
+ type SidebarInputProps = React.ComponentProps<typeof Input>;
52
+ declare function SidebarInput({ className, ...props }: SidebarInputProps): React.JSX.Element;
53
+ type SidebarHeaderProps = React.ComponentProps<'div'>;
54
+ declare function SidebarHeader({ className, ...props }: SidebarHeaderProps): React.JSX.Element;
55
+ type SidebarFooterProps = React.ComponentProps<'div'>;
56
+ declare function SidebarFooter({ className, ...props }: SidebarFooterProps): React.JSX.Element;
57
+ type SidebarSeparatorProps = React.ComponentProps<typeof Separator>;
58
+ declare function SidebarSeparator({ className, ...props }: SidebarSeparatorProps): React.JSX.Element;
59
+ type SidebarContentProps = React.ComponentProps<'div'>;
60
+ declare function SidebarContent({ className, children, ...props }: SidebarContentProps): React.JSX.Element;
61
+ type SidebarGroupProps = React.ComponentProps<'div'>;
62
+ declare function SidebarGroup({ className, ...props }: SidebarGroupProps): React.JSX.Element;
63
+ type SidebarGroupLabelProps = React.ComponentProps<'div'> & {
64
+ asChild?: boolean;
65
+ };
66
+ declare function SidebarGroupLabel({ className, asChild, ...props }: SidebarGroupLabelProps): React.JSX.Element;
67
+ type SidebarGroupActionProps = React.ComponentProps<'button'> & {
68
+ asChild?: boolean;
69
+ };
70
+ declare function SidebarGroupAction({ className, asChild, ...props }: SidebarGroupActionProps): React.JSX.Element;
71
+ type SidebarGroupContentProps = React.ComponentProps<'div'>;
72
+ declare function SidebarGroupContent({ className, ...props }: SidebarGroupContentProps): React.JSX.Element;
73
+ type SidebarMenuProps = React.ComponentProps<'ul'>;
74
+ declare function SidebarMenu({ className, ...props }: SidebarMenuProps): React.JSX.Element;
75
+ type SidebarMenuItemProps = React.ComponentProps<'li'>;
76
+ declare function SidebarMenuItem({ className, ...props }: SidebarMenuItemProps): React.JSX.Element;
77
+ declare const sidebarMenuButtonVariants: (props?: ({
78
+ variant?: "default" | "outline" | null | undefined;
79
+ size?: "sm" | "default" | "lg" | null | undefined;
80
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
81
+ type SidebarMenuButtonProps = React.ComponentProps<'button'> & {
82
+ asChild?: boolean;
83
+ isActive?: boolean;
84
+ tooltip?: string | React.ComponentProps<typeof TooltipContent>;
85
+ } & VariantProps<typeof sidebarMenuButtonVariants>;
86
+ declare function SidebarMenuButton({ asChild, isActive, variant, size, tooltip, className, ...props }: SidebarMenuButtonProps): React.JSX.Element;
87
+ type SidebarMenuActionProps = React.ComponentProps<'button'> & {
88
+ asChild?: boolean;
89
+ showOnHover?: boolean;
90
+ };
91
+ declare function SidebarMenuAction({ className, asChild, showOnHover, ...props }: SidebarMenuActionProps): React.JSX.Element;
92
+ type SidebarMenuBadgeProps = React.ComponentProps<'div'>;
93
+ declare function SidebarMenuBadge({ className, ...props }: SidebarMenuBadgeProps): React.JSX.Element;
94
+ type SidebarMenuSkeletonProps = React.ComponentProps<'div'> & {
95
+ showIcon?: boolean;
96
+ };
97
+ declare function SidebarMenuSkeleton({ className, showIcon, ...props }: SidebarMenuSkeletonProps): React.JSX.Element;
98
+ type SidebarMenuSubProps = React.ComponentProps<'ul'>;
99
+ declare function SidebarMenuSub({ className, ...props }: SidebarMenuSubProps): React.JSX.Element;
100
+ type SidebarMenuSubItemProps = React.ComponentProps<'li'>;
101
+ declare function SidebarMenuSubItem({ className, ...props }: SidebarMenuSubItemProps): React.JSX.Element;
102
+ type SidebarMenuSubButtonProps = React.ComponentProps<'a'> & {
103
+ asChild?: boolean;
104
+ size?: 'sm' | 'md';
105
+ isActive?: boolean;
106
+ };
107
+ declare function SidebarMenuSubButton({ asChild, size, isActive, className, ...props }: SidebarMenuSubButtonProps): React.JSX.Element;
108
+
109
+ export { Sidebar$1 as Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, Sidebar as SidebarPrimitive, SidebarProps$1 as SidebarProps, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };
@@ -0,0 +1,4 @@
1
+ import { Sidebar as Sidebar$1, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar } from "../../core/animate-ui/components/radix/sidebar.js";
2
+ import { isSidebarGroup } from "./types.js";
3
+ import Sidebar from "./sidebar.js";
4
+ export { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, Sidebar$1 as SidebarPrimitive, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, isSidebarGroup, useSidebar };
@@ -1,4 +1,5 @@
1
1
  import { cn } from "../../utils/cn.js";
2
+ import { densityStyle } from "../../utils/style-axes.js";
2
3
  import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger } from "../../core/animate-ui/components/radix/dropdown-menu.js";
3
4
  import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "../../core/collapsible.js";
4
5
  import Tooltip from "../tooltip/tooltip.js";
@@ -105,7 +106,7 @@ function GroupMenuItems({ group, isSelected, linkComponent: LinkComponent, onIte
105
106
  * Collapsed sidebar (icon-only): group rendered as a single icon with flyout Menu.
106
107
  * Uses controlled DropdownMenu so clicking an item closes the menu.
107
108
  */
108
- function CollapsedSidebarGroup({ group, isSelected, linkComponent: LinkComponent }) {
109
+ function CollapsedSidebarGroup({ group, isSelected, linkComponent: LinkComponent, flyoutRadius, flyoutElevation }) {
109
110
  const [open, setOpen] = useState(false);
110
111
  const pickedWithPointer = useRef(false);
111
112
  return /* @__PURE__ */ jsx(SidebarGroup, {
@@ -130,7 +131,9 @@ function CollapsedSidebarGroup({ group, isSelected, linkComponent: LinkComponent
130
131
  side: "right",
131
132
  align: "start",
132
133
  sideOffset: 8,
133
- className: "z-50 max-w-xs rounded-2xl shadow-lg will-change-[opacity,transform] py-1.5 overflow-visible select-none",
134
+ radius: flyoutRadius,
135
+ elevation: flyoutElevation,
136
+ className: "z-50 max-w-xs rounded-[var(--espd-own-radius,var(--espd-radius-overlay,var(--radius-2xl)))] shadow-[shadow:var(--espd-own-elevation,var(--espd-elevation-overlay,var(--shadow-lg)))] will-change-[opacity,transform] py-1.5 select-none",
134
137
  style: { minWidth: 180 },
135
138
  onCloseAutoFocus: (e) => {
136
139
  if (pickedWithPointer.current) e.preventDefault();
@@ -149,7 +152,7 @@ function CollapsedSidebarGroup({ group, isSelected, linkComponent: LinkComponent
149
152
  })
150
153
  });
151
154
  }
152
- var groupHeaderClass = cn("flex w-full items-center gap-2 rounded-md p-2 h-7 overflow-hidden font-medium text-sidebar-foreground hover:bg-sidebar-accent/50 transition-colors cursor-pointer", rowIconClass);
155
+ var groupHeaderClass = cn("flex w-full items-center gap-2 rounded-[var(--espd-own-radius,var(--espd-radius-item,var(--radius-md)))] p-2 h-[var(--espd-sidebar-row-height-sm,calc(var(--spacing)*7))] overflow-hidden font-medium text-sidebar-foreground hover:bg-sidebar-accent/50 transition-colors cursor-pointer", rowIconClass);
153
156
  /**
154
157
  * Expanded sidebar group with inline collapsible items.
155
158
  * Clicking the group header toggles expand/collapse. No flyout menus here —
@@ -195,7 +198,7 @@ function TopLevelLinkRow({ item, isCollapsed, isMobile, renderMenuItem }) {
195
198
  })
196
199
  });
197
200
  }
198
- function Sidebar({ items, currentPath, header, headerHeight, footer, linkComponent: LinkComponent, collapsible = "icon", variant = "sidebar", focusActiveGroup = false }) {
201
+ function Sidebar({ items, currentPath, header, headerHeight, footer, linkComponent: LinkComponent, collapsible = "icon", variant = "sidebar", focusActiveGroup = false, density, flyoutRadius, flyoutElevation, beforeContent, headerClassName, className, mobileClassName, id, onClick }) {
199
202
  const { state, isMobile, setOpenMobile } = useSidebar();
200
203
  const isCollapsed = state === "collapsed";
201
204
  /** On mobile the sidebar is a sheet overlaying the page: navigating away should dismiss it. */
@@ -243,57 +246,62 @@ function Sidebar({ items, currentPath, header, headerHeight, footer, linkCompone
243
246
  * Segment-aware so sibling routes with a shared prefix stay independent: at
244
247
  * `/components/input-password` only that row lights up, not `/components/input` too.
245
248
  * A nested route still selects its parent row (`/nodes/42` selects `/nodes`).
249
+ * A row for the root (`/`, a Home link) is selected only on the root: every
250
+ * path starts with it, so as a prefix it would light up beside every other row.
246
251
  */
247
252
  const isSelected = (path) => {
248
- return isPathPrefixOf(path, currentPath);
253
+ return path === "/" ? currentPath === "/" : isPathPrefixOf(path, currentPath);
249
254
  };
250
255
  const renderMenuItem = (item) => {
251
256
  const EndActionIcon = item.endAction?.icon;
252
257
  const active = isSelected(item.path);
253
- return /* @__PURE__ */ jsxs(SidebarMenuItem, { children: [/* @__PURE__ */ jsx(SidebarMenuButton, {
254
- asChild: true,
255
- isActive: active,
256
- size: "sm",
257
- tooltip: item.label,
258
- className: cn(rowIconClass, active && "bg-sidebar-accent text-sidebar-accent-foreground", item.endAction && "pr-8"),
259
- children: /* @__PURE__ */ jsx(LinkComponent, {
260
- to: item.path,
261
- children: /* @__PURE__ */ jsxs("span", {
262
- className: "contents",
263
- onClick: closeMobileSidebar,
264
- children: [/* @__PURE__ */ jsx(ItemIcon, {
265
- icon: item.icon,
266
- active
267
- }), /* @__PURE__ */ jsx("span", {
268
- className: cn("whitespace-nowrap max-w-[168px] truncate", active ? "font-semibold text-sidebar-accent-foreground" : "font-medium text-sidebar-foreground"),
269
- style: rowFontStyle,
270
- children: item.label
271
- })]
272
- })
273
- })
274
- }), item.endAction && EndActionIcon && /* @__PURE__ */ jsx(Tooltip, {
275
- content: item.endAction.tooltip,
276
- side: "right",
277
- sideOffset: 8,
278
- children: /* @__PURE__ */ jsx(SidebarMenuAction, {
258
+ return /* @__PURE__ */ jsxs(SidebarMenuItem, {
259
+ onClick: closeMobileSidebar,
260
+ children: [/* @__PURE__ */ jsx(SidebarMenuButton, {
279
261
  asChild: true,
280
- className: cn(rowIconClass, "right-1.5"),
262
+ isActive: active,
263
+ size: "sm",
264
+ tooltip: item.label,
265
+ className: cn(rowIconClass, active && "bg-sidebar-accent text-sidebar-accent-foreground", item.endAction && "pr-8"),
281
266
  children: /* @__PURE__ */ jsx(LinkComponent, {
282
- to: item.endAction.path,
283
- children: /* @__PURE__ */ jsx("span", {
267
+ to: item.path,
268
+ children: /* @__PURE__ */ jsxs("span", {
284
269
  className: "contents",
285
- onClick: closeMobileSidebar,
286
- children: /* @__PURE__ */ jsx(EndActionIcon, {})
270
+ children: [/* @__PURE__ */ jsx(ItemIcon, {
271
+ icon: item.icon,
272
+ active
273
+ }), /* @__PURE__ */ jsx("span", {
274
+ className: cn("whitespace-nowrap max-w-[168px] truncate", active ? "font-semibold text-sidebar-accent-foreground" : "font-medium text-sidebar-foreground"),
275
+ style: rowFontStyle,
276
+ children: item.label
277
+ })]
278
+ })
279
+ })
280
+ }), item.endAction && EndActionIcon && /* @__PURE__ */ jsx(Tooltip, {
281
+ content: item.endAction.tooltip,
282
+ side: "right",
283
+ sideOffset: 8,
284
+ children: /* @__PURE__ */ jsx(SidebarMenuAction, {
285
+ asChild: true,
286
+ className: cn(rowIconClass, "right-1.5"),
287
+ children: /* @__PURE__ */ jsx(LinkComponent, {
288
+ to: item.endAction.path,
289
+ children: /* @__PURE__ */ jsx("span", {
290
+ className: "contents",
291
+ children: /* @__PURE__ */ jsx(EndActionIcon, {})
292
+ })
287
293
  })
288
294
  })
289
- })
290
- })] }, item.id);
295
+ })]
296
+ }, item.id);
291
297
  };
292
298
  const renderGroup = (group) => {
293
299
  if (isCollapsed && !isMobile) return /* @__PURE__ */ jsx(CollapsedSidebarGroup, {
294
300
  group,
295
301
  isSelected,
296
- linkComponent: LinkComponent
302
+ linkComponent: LinkComponent,
303
+ flyoutRadius,
304
+ flyoutElevation
297
305
  }, group.id);
298
306
  return /* @__PURE__ */ jsx(ExpandedSidebarGroup, {
299
307
  group,
@@ -314,9 +322,16 @@ function Sidebar({ items, currentPath, header, headerHeight, footer, linkCompone
314
322
  return /* @__PURE__ */ jsxs(Sidebar$1, {
315
323
  collapsible,
316
324
  variant,
325
+ style: densityStyle(density),
326
+ mobileClassName,
327
+ ...!isMobile && {
328
+ className,
329
+ id,
330
+ onClick
331
+ },
317
332
  children: [
318
333
  (header || isMobile) && /* @__PURE__ */ jsxs(SidebarHeader, {
319
- className: cn(headerHeight ? "flex flex-row items-center gap-0 px-2 py-0 box-border shrink-0" : "flex items-start", isMobile ? "justify-between" : "justify-center"),
334
+ className: cn(headerHeight ? "flex flex-row items-center gap-0 px-2 py-0 box-border shrink-0" : "flex items-start", isMobile ? "justify-between" : "justify-center", headerClassName),
320
335
  style: headerHeight ? {
321
336
  height: headerHeight,
322
337
  minHeight: headerHeight
@@ -332,6 +347,7 @@ function Sidebar({ items, currentPath, header, headerHeight, footer, linkCompone
332
347
  })]
333
348
  })]
334
349
  }),
350
+ beforeContent,
335
351
  /* @__PURE__ */ jsx(SidebarContent, {
336
352
  className: "overflow-hidden",
337
353
  children: items.map((entry) => renderEntry(entry))
@@ -0,0 +1,11 @@
1
+ import * as React from 'react';
2
+ import { S as SimpleClickableCardProps } from '../../simple-clickable-card.props-BrPCw7CR.js';
3
+ export { a as SimpleClickableCardSharedProps, b as SimpleClickableCardVariant } from '../../simple-clickable-card.props-BrPCw7CR.js';
4
+ import '../../index-BQANnKs9.js';
5
+ import '../../variant-D81RhpbR.js';
6
+ import '../../style-axes-DSQ2DGc5.js';
7
+ import '../../icon-avatar.props-RYtw2eSW.js';
8
+
9
+ declare const SimpleClickableCard: React.ForwardRefExoticComponent<SimpleClickableCardProps & React.RefAttributes<HTMLButtonElement>>;
10
+
11
+ export { SimpleClickableCard, SimpleClickableCardProps };
@@ -0,0 +1,2 @@
1
+ import { SimpleClickableCard } from "./simple-clickable-card.js";
2
+ export { SimpleClickableCard };
@@ -3,9 +3,9 @@ import { cn } from "../../utils/cn.js";
3
3
  import { isPresetColor } from "../../utils/color.js";
4
4
  import { SilverMetallicBorderOverlay, SilverShineOverlay } from "../../utils/silver-shine.js";
5
5
  import { PRESET_GRADIENT_BACKDROP, PRESET_GRADIENT_FRAME, SILVER_GRADIENT_BACKDROP, VARIANT_GRADIENT_BACKDROP_BASE, VARIANT_GRADIENT_HOVER_OVERLAY_CLASS, arbitraryGradientBackgroundImage, resolveVariantStyles } from "../../utils/variant.js";
6
+ import { TruncatedLineWithTooltip } from "../truncated-line-with-tooltip/truncated-line-with-tooltip.js";
6
7
  import { IconAvatar } from "../icon-avatar/icon-avatar.js";
7
8
  import { Typography } from "../typography/typography.js";
8
- import { TruncatedLineWithTooltip } from "../truncated-line-with-tooltip/truncated-line-with-tooltip.js";
9
9
  import * as React$1 from "react";
10
10
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
11
11
  //#region src/components/simple-clickable-card/simple-clickable-card-shared.tsx
@@ -83,7 +83,7 @@ function resolveIconAvatarDefaults(variant, cardColor) {
83
83
  color: cardColor,
84
84
  variant: void 0
85
85
  };
86
- const foreground = isPresetColor(cardColor) ? `var(--color-${cardColor}-foreground)` : "#ffffff";
86
+ const foreground = isPresetColor(cardColor) ? `var(--color-${cardColor}-foreground)` : "var(--espd-on-solid-foreground, #ffffff)";
87
87
  return {
88
88
  color: cardColor,
89
89
  variant: "solid",
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
  import { cn } from "../../utils/cn.js";
3
+ import { useStyleAxes } from "../../utils/style-axes.js";
3
4
  import { TooltipProvider } from "../../core/animate-ui/components/animate/tooltip.js";
4
5
  import { renderGradientBackdropLayers, renderLeadingIconRow, renderTitleAndDescriptionBlocks, ringTransitionClass, useSimpleClickableCardSurface } from "./simple-clickable-card-shared.js";
5
6
  import * as React$1 from "react";
@@ -33,7 +34,8 @@ function trailingChevronRow(options) {
33
34
  }))]
34
35
  });
35
36
  }
36
- var SimpleClickableCard = React$1.forwardRef(({ icon, leadingIcon, title, description, truncateTitle = false, truncateDescription = false, onClick, color = "gray", iconAvatarVariant: iconAvatarVariantProp, iconAvatarColor: iconAvatarColorProp, size = "default", variant = "soft", className, type = "button", disabled, hideEndIcon = false, endIcon, ...rest }, ref) => {
37
+ var SimpleClickableCard = React$1.forwardRef(({ icon, leadingIcon, title, description, truncateTitle = false, truncateDescription = false, onClick, color = "gray", iconAvatarVariant: iconAvatarVariantProp, iconAvatarColor: iconAvatarColorProp, size = "default", variant = "soft", className, type = "button", disabled, hideEndIcon = false, endIcon, radius, ...rest }, ref) => {
38
+ const { partStyle } = useStyleAxes({ radius }, ["radius"]);
37
39
  const { onMouseEnter: onMouseEnterProp, onMouseLeave: onMouseLeaveProp, ...buttonRest } = rest;
38
40
  const { s, styles, isArbitraryGradient, surfaceStyleWithoutGradientBg, presetGradientPair, surfaceContainerClass, presetRingClasses, ringAccentStyle, iconAvatarColor: resolvedIconAvatarColor, iconAvatarVariant: resolvedIconAvatarVariant, iconAvatarDiscStyle } = useSimpleClickableCardSurface({
39
41
  variant,
@@ -91,8 +93,9 @@ var SimpleClickableCard = React$1.forwardRef(({ icon, leadingIcon, title, descri
91
93
  onClick,
92
94
  onMouseEnter: onMouseEnterProp,
93
95
  onMouseLeave: onMouseLeaveProp,
94
- className: cn("relative isolate inline-flex w-full cursor-pointer items-center overflow-hidden rounded-xl text-left ring-offset-background", ringTransitionClass, variant === "gradient" && "group", "focus-visible:outline-none hover:ring-2 hover:ring-offset-2 focus-visible:ring-2 focus-visible:ring-offset-2", presetRingClasses, "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50", s.rowPad, s.gap, surfaceContainerClass, className),
96
+ className: cn("relative isolate inline-flex w-full cursor-pointer items-center overflow-hidden rounded-[var(--espd-own-radius,var(--espd-radius-surface,var(--radius-xl)))] text-left ring-offset-background", ringTransitionClass, variant === "gradient" && "group", "focus-visible:outline-none hover:ring-2 hover:ring-offset-2 focus-visible:ring-2 focus-visible:ring-offset-2", presetRingClasses, "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50", s.rowPad, s.gap, surfaceContainerClass, className),
95
97
  style: {
98
+ ...partStyle,
96
99
  ...isArbitraryGradient ? surfaceStyleWithoutGradientBg : styles.containerStyle,
97
100
  ...ringAccentStyle
98
101
  },
@@ -0,0 +1,25 @@
1
+ import * as React from 'react';
2
+ import { HTMLAttributes, ReactNode } from 'react';
3
+ import { a as SimpleClickableCardSharedProps } from '../../simple-clickable-card.props-BrPCw7CR.js';
4
+ import { k as StyleAxisProps } from '../../style-axes-DSQ2DGc5.js';
5
+ import '../../index-BQANnKs9.js';
6
+ import '../../variant-D81RhpbR.js';
7
+ import '../../icon-avatar.props-RYtw2eSW.js';
8
+
9
+ /** Display-only card body; only the info icon is interactive (tab/focus). */
10
+ interface SimpleInfoCardProps extends SimpleClickableCardSharedProps, Pick<StyleAxisProps, "radius">, Omit<HTMLAttributes<HTMLDivElement>, keyof SimpleClickableCardSharedProps | "title"> {
11
+ /** When omitted or empty, the info trigger and popover are not rendered. */
12
+ infoContent?: ReactNode;
13
+ /** Overrides default `bottom`. */
14
+ popoverSide?: "top" | "right" | "bottom" | "left";
15
+ /** Overrides default `end` (mock alignment). */
16
+ popoverAlign?: "start" | "center" | "end";
17
+ /** `aria-label` on the info trigger. */
18
+ infoIconLabel?: string;
19
+ /** When set, disables the info trigger and dims the shell. */
20
+ disabled?: boolean;
21
+ }
22
+
23
+ declare const SimpleInfoCard: React.ForwardRefExoticComponent<SimpleInfoCardProps & React.RefAttributes<HTMLDivElement>>;
24
+
25
+ export { SimpleInfoCard, type SimpleInfoCardProps };
@@ -0,0 +1,2 @@
1
+ import { SimpleInfoCard } from "./simple-info-card.js";
2
+ export { SimpleInfoCard };
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import { cn } from "../../utils/cn.js";
3
3
  import { isPresetColor } from "../../utils/color.js";
4
+ import { useStyleAxes } from "../../utils/style-axes.js";
4
5
  import { TooltipProvider } from "../../core/animate-ui/components/animate/tooltip.js";
5
6
  import { Button } from "../button/button.js";
6
7
  import { Popover, PopoverContent, PopoverTrigger } from "../../core/popover.js";
@@ -52,10 +53,11 @@ var SOLID_INFO_ICON_FG_CLASS = {
52
53
  };
53
54
  function infoTriggerIconFgClass(variant, cardColor, infoButtonColor) {
54
55
  if (variant === "solid" && cardColor !== void 0 && isPresetColor(cardColor)) return SOLID_INFO_ICON_FG_CLASS[cardColor];
55
- if (variant === "solid" && typeof cardColor === "string" && !isPresetColor(cardColor)) return "text-white/60";
56
+ if (variant === "solid" && typeof cardColor === "string" && !isPresetColor(cardColor)) return "text-[color:var(--espd-on-solid-foreground,#fff)]/60";
56
57
  return INFO_ICON_FG_CLASS[infoButtonColor];
57
58
  }
58
- var SimpleInfoCard = React$1.forwardRef(({ icon, title, description, infoContent, truncateTitle = false, truncateDescription = false, color = "gray", iconAvatarVariant: iconAvatarVariantProp, iconAvatarColor: iconAvatarColorProp, size = "default", variant = "soft", className, disabled, popoverSide = "bottom", popoverAlign = "end", infoIconLabel = "More information", ...divRest }, ref) => {
59
+ var SimpleInfoCard = React$1.forwardRef(({ icon, title, description, infoContent, truncateTitle = false, truncateDescription = false, color = "gray", iconAvatarVariant: iconAvatarVariantProp, iconAvatarColor: iconAvatarColorProp, size = "default", variant = "soft", className, disabled, popoverSide = "bottom", popoverAlign = "end", infoIconLabel = "More information", radius, ...divRest }, ref) => {
60
+ const { partStyle } = useStyleAxes({ radius }, ["radius"]);
59
61
  const { style: userStyle, ...shellDivRest } = divRest;
60
62
  const showInfo = hasRenderableInfoContent(infoContent);
61
63
  const { s, styles, isArbitraryGradient, surfaceStyleWithoutGradientBg, presetGradientPair, surfaceContainerClass, ringAccentStyle, iconAvatarColor: resolvedIconAvatarColor, iconAvatarVariant: resolvedIconAvatarVariant, iconAvatarDiscStyle } = useSimpleClickableCardSurfaceShell({
@@ -135,8 +137,9 @@ var SimpleInfoCard = React$1.forwardRef(({ icon, title, description, infoContent
135
137
  closeDelay: 100,
136
138
  children: /* @__PURE__ */ jsxs("div", {
137
139
  ref,
138
- className: cn("relative isolate inline-flex w-full max-w-full items-center overflow-hidden rounded-xl ring-offset-background", variant === "gradient" && "group", disabled && "pointer-events-none opacity-50", s.rowPad, showInfo ? s.gap : void 0, surfaceContainerClass, className),
140
+ className: cn("relative isolate inline-flex w-full max-w-full items-center overflow-hidden rounded-[var(--espd-own-radius,var(--espd-radius-surface,var(--radius-xl)))] ring-offset-background", variant === "gradient" && "group", disabled && "pointer-events-none opacity-50", s.rowPad, showInfo ? s.gap : void 0, surfaceContainerClass, className),
139
141
  style: {
142
+ ...partStyle,
140
143
  ...shellStyle,
141
144
  ...userStyle
142
145
  },
@@ -0,0 +1,63 @@
1
+ import * as React from 'react';
2
+ import { ReactNode } from 'react';
3
+ import { LucideIcon } from 'lucide-react';
4
+ import { d as DensityProps } from '../../style-axes-DSQ2DGc5.js';
5
+
6
+ type SimpleListItemDirection = "row" | "column";
7
+ type SimpleListIconStyle = "inline" | "avatar" | "none";
8
+ type SimpleListAvatarSize = "sm" | "default" | "lg";
9
+ type SimpleListSize = "sm" | "default" | "lg";
10
+ interface SimpleListItem {
11
+ /** Stable key for React reconciliation. */
12
+ key: string;
13
+ label: ReactNode;
14
+ /**
15
+ * Pre-rendered content. If null/undefined and `hideIfEmpty` is not set
16
+ * to `false`, the row is skipped.
17
+ */
18
+ content?: ReactNode;
19
+ /**
20
+ * Lucide icon component OR ReactNode. Component form is preferred so
21
+ * the resolver can apply size classes automatically.
22
+ */
23
+ icon?: LucideIcon | ReactNode;
24
+ /** Per-item override of the list-level `direction`. */
25
+ direction?: SimpleListItemDirection;
26
+ /**
27
+ * When true (default), skip this row if `content` is null/undefined.
28
+ * Set to `false` to keep the row visible even with empty content.
29
+ */
30
+ hideIfEmpty?: boolean;
31
+ /** Extra classes for the row wrapper. */
32
+ className?: string;
33
+ }
34
+ interface SimpleListProps extends DensityProps {
35
+ items: SimpleListItem[];
36
+ /** Overall list spacing and typography scale. Default: `"default"`. */
37
+ size?: SimpleListSize;
38
+ /**
39
+ * Default direction for items that don't specify their own. Default: `"column"`.
40
+ * `"row"` puts label and value on one line from the `sm` breakpoint (640px)
41
+ * up; below it, row items stack like column items.
42
+ */
43
+ direction?: SimpleListItemDirection;
44
+ /** How to render the leading icon. Default: `"inline"`. */
45
+ iconStyle?: SimpleListIconStyle;
46
+ /**
47
+ * Avatar circle size. Only used when `iconStyle === "avatar"`.
48
+ * Default: `"default"` (40px). The icon inside is always exactly half
49
+ * the avatar size.
50
+ */
51
+ avatarSize?: SimpleListAvatarSize;
52
+ /** Show `<Separator />` between visible rows. Default: `true`. */
53
+ separators?: boolean;
54
+ /** Vertical gap between rows (Tailwind gap class). Default: `"gap-5"`. */
55
+ gapClassName?: string;
56
+ /** Rendered when no rows are visible after filtering. Default: `null`. */
57
+ emptyState?: ReactNode;
58
+ className?: string;
59
+ }
60
+
61
+ declare function SimpleList({ items, size, direction, iconStyle, avatarSize, separators, gapClassName, emptyState, className, density, }: SimpleListProps): React.JSX.Element | null;
62
+
63
+ export { SimpleList, type SimpleListAvatarSize, type SimpleListIconStyle, type SimpleListItem, type SimpleListItemDirection, type SimpleListProps };
@@ -0,0 +1,2 @@
1
+ import { SimpleList } from "./simple-list.js";
2
+ export { SimpleList };
@@ -1,4 +1,5 @@
1
1
  import { cn } from "../../utils/cn.js";
2
+ import { densityStyle } from "../../utils/style-axes.js";
2
3
  import { Avatar, AvatarFallback } from "../../core/avatar.js";
3
4
  import { Separator } from "../../core/separator.js";
4
5
  import { Label } from "../../core/label.js";
@@ -120,7 +121,7 @@ function ItemRow({ item, effectiveDirection, iconStyle, avatarSize, size }) {
120
121
  children: [labelNode, item.content]
121
122
  });
122
123
  }
123
- function SimpleList({ items, size = "default", direction = "column", iconStyle = "inline", avatarSize = "default", separators = true, gapClassName, emptyState, className }) {
124
+ function SimpleList({ items, size = "default", direction = "column", iconStyle = "inline", avatarSize = "default", separators = true, gapClassName, emptyState, className, density }) {
124
125
  const listSizeStyles = LIST_SIZE_STYLES[size];
125
126
  const visibleItems = items.filter((item) => {
126
127
  if ((item.hideIfEmpty ?? true) && item.content == null) return false;
@@ -129,6 +130,7 @@ function SimpleList({ items, size = "default", direction = "column", iconStyle =
129
130
  if (visibleItems.length === 0) return emptyState != null ? /* @__PURE__ */ jsx(Fragment$1, { children: emptyState }) : null;
130
131
  return /* @__PURE__ */ jsx("div", {
131
132
  className: cn("flex flex-col", gapClassName ?? listSizeStyles.listGap, className),
133
+ style: densityStyle(density),
132
134
  children: visibleItems.map((item, index) => {
133
135
  const effectiveDirection = item.direction ?? direction;
134
136
  const isLast = index === visibleItems.length - 1;
@@ -0,0 +1,20 @@
1
+ import * as React from 'react';
2
+ import { ReactNode } from 'react';
3
+
4
+ interface SimplePaginatedListItem {
5
+ id: string;
6
+ label: string;
7
+ icon?: ReactNode;
8
+ action?: ReactNode;
9
+ }
10
+ type SimplePaginatedListSize = "sm" | "default" | "lg";
11
+ interface SimplePaginatedListProps {
12
+ items: SimplePaginatedListItem[];
13
+ itemsPerPage?: number;
14
+ size?: SimplePaginatedListSize;
15
+ className?: string;
16
+ }
17
+
18
+ declare function SimplePaginatedList({ items, itemsPerPage, size, className, }: SimplePaginatedListProps): React.JSX.Element;
19
+
20
+ export { SimplePaginatedList, type SimplePaginatedListItem, type SimplePaginatedListProps, type SimplePaginatedListSize };
@@ -0,0 +1,2 @@
1
+ import { SimplePaginatedList } from "./simple-paginated-list.js";
2
+ export { SimplePaginatedList };
@@ -0,0 +1,18 @@
1
+ import * as React from 'react';
2
+
3
+ interface SimplifiedDateProps {
4
+ /** Unix timestamp in seconds or milliseconds */
5
+ ts?: number;
6
+ /** Token-based format string for the detailed date (tokens: dd, MM, yyyy, HH, mm, ss). Defaults to "dd/MM/yyyy HH:mm:ss" */
7
+ dateFormat?: string;
8
+ /**
9
+ * When true, shows relative time (e.g. "5m ago") with a tooltip of the formatted date.
10
+ * When false (default), shows only the formatted date with no tooltip.
11
+ */
12
+ relative?: boolean;
13
+ className?: string;
14
+ }
15
+
16
+ declare function SimplifiedDate({ ts, dateFormat, className, relative }: SimplifiedDateProps): React.JSX.Element | null;
17
+
18
+ export { SimplifiedDate, type SimplifiedDateProps };
@@ -0,0 +1,2 @@
1
+ import { SimplifiedDate } from "./simplified-date.js";
2
+ export { SimplifiedDate };
@@ -0,0 +1,5 @@
1
+ import * as React$1 from 'react';
2
+
3
+ declare function Skeleton({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): React$1.JSX.Element;
4
+
5
+ export { Skeleton };
@@ -0,0 +1,2 @@
1
+ import { Skeleton } from "../../core/skeleton.js";
2
+ export { Skeleton };
@@ -0,0 +1,11 @@
1
+ import * as React from 'react';
2
+
3
+ interface TableSkeletonProps {
4
+ totalRows?: number;
5
+ totalColumns?: number;
6
+ showBorder?: boolean;
7
+ padFirstColumn?: boolean;
8
+ }
9
+ declare function TableSkeleton({ totalRows, totalColumns, showBorder, padFirstColumn, }: TableSkeletonProps): React.JSX.Element;
10
+
11
+ export { TableSkeleton };
@@ -0,0 +1,2 @@
1
+ import { TableSkeleton } from "./table-skeleton.js";
2
+ export { TableSkeleton };
@@ -0,0 +1,34 @@
1
+ import * as React from 'react';
2
+ import { ReactNode } from 'react';
3
+ import { a as ButtonIconOnlyBreakpoint } from '../../button-BxJ7s6sR.js';
4
+ import '../../button-BK-DIR_L.js';
5
+ import 'class-variance-authority/types';
6
+ import 'class-variance-authority';
7
+ import '../../style-axes-DSQ2DGc5.js';
8
+ import '../../index-BQANnKs9.js';
9
+
10
+ interface SortMenuProps<T extends string> {
11
+ /** The current order. */
12
+ value: T;
13
+ /** Every order offered, in menu order. */
14
+ options: readonly T[];
15
+ onChange: (value: T) => void;
16
+ /** How an order reads ("Most builds"). */
17
+ labelOf: (value: T) => string;
18
+ /** What is being sorted, for the button's accessible name ("Sort makers"). */
19
+ label: string;
20
+ /** The button's leading icon. Default: the up-down arrows of a sort. */
21
+ icon?: ReactNode;
22
+ /** Below this breakpoint the button shows its icons only (the choice stays its accessible name), to leave a narrow row to a search box. */
23
+ iconOnlyBelow?: ButtonIconOnlyBreakpoint;
24
+ /** Which edge of the button the menu lines up with: `start` for a picker at the left of a row. Default `end`. */
25
+ align?: "start" | "end";
26
+ }
27
+
28
+ /**
29
+ * A one-of picker: the current choice as the button's label, the choices in a
30
+ * menu. A sort by default; with another `icon`, any filter of the same shape.
31
+ */
32
+ declare function SortMenu<T extends string>({ value, options, onChange, labelOf, label, icon, iconOnlyBelow, align }: SortMenuProps<T>): React.JSX.Element;
33
+
34
+ export { SortMenu, type SortMenuProps };
@@ -0,0 +1,2 @@
1
+ import { SortMenu } from "./sort-menu.js";
2
+ export { SortMenu };