@rookcom/monarch-react 0.0.0-stage → 0.3.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 (589) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/README.md +4 -2
  3. package/dist/components/actions/button/button.d.ts +40 -0
  4. package/dist/components/actions/button/button.d.ts.map +1 -0
  5. package/dist/components/actions/button/button.js +69 -0
  6. package/dist/components/actions/button/button.js.map +1 -0
  7. package/dist/components/actions/button/index.d.ts +2 -0
  8. package/dist/components/actions/button/index.d.ts.map +1 -0
  9. package/dist/components/actions/button/index.js +2 -0
  10. package/dist/components/actions/button/index.js.map +1 -0
  11. package/dist/components/actions/copy-button/copy-button.d.ts +71 -0
  12. package/dist/components/actions/copy-button/copy-button.d.ts.map +1 -0
  13. package/dist/components/actions/copy-button/copy-button.js +150 -0
  14. package/dist/components/actions/copy-button/copy-button.js.map +1 -0
  15. package/dist/components/actions/copy-button/index.d.ts +2 -0
  16. package/dist/components/actions/copy-button/index.d.ts.map +1 -0
  17. package/dist/components/actions/copy-button/index.js +2 -0
  18. package/dist/components/actions/copy-button/index.js.map +1 -0
  19. package/dist/components/actions/copy-field/copy-field.d.ts +47 -0
  20. package/dist/components/actions/copy-field/copy-field.d.ts.map +1 -0
  21. package/dist/components/actions/copy-field/copy-field.js +37 -0
  22. package/dist/components/actions/copy-field/copy-field.js.map +1 -0
  23. package/dist/components/actions/copy-field/index.d.ts +2 -0
  24. package/dist/components/actions/copy-field/index.d.ts.map +1 -0
  25. package/dist/components/actions/copy-field/index.js +2 -0
  26. package/dist/components/actions/copy-field/index.js.map +1 -0
  27. package/dist/components/billing/money/index.d.ts +2 -0
  28. package/dist/components/billing/money/index.d.ts.map +1 -0
  29. package/dist/components/billing/money/index.js +2 -0
  30. package/dist/components/billing/money/index.js.map +1 -0
  31. package/dist/components/billing/money/money.d.ts +44 -0
  32. package/dist/components/billing/money/money.d.ts.map +1 -0
  33. package/dist/components/billing/money/money.js +75 -0
  34. package/dist/components/billing/money/money.js.map +1 -0
  35. package/dist/components/data-display/accordion/accordion.d.ts +17 -0
  36. package/dist/components/data-display/accordion/accordion.d.ts.map +1 -0
  37. package/dist/components/data-display/accordion/accordion.js +23 -0
  38. package/dist/components/data-display/accordion/accordion.js.map +1 -0
  39. package/dist/components/data-display/accordion/index.d.ts +2 -0
  40. package/dist/components/data-display/accordion/index.d.ts.map +1 -0
  41. package/dist/components/data-display/accordion/index.js +2 -0
  42. package/dist/components/data-display/accordion/index.js.map +1 -0
  43. package/dist/components/data-display/badge/badge.d.ts +13 -0
  44. package/dist/components/data-display/badge/badge.d.ts.map +1 -0
  45. package/dist/components/data-display/badge/badge.js +7 -0
  46. package/dist/components/data-display/badge/badge.js.map +1 -0
  47. package/dist/components/data-display/badge/index.d.ts +2 -0
  48. package/dist/components/data-display/badge/index.d.ts.map +1 -0
  49. package/dist/components/data-display/badge/index.js +2 -0
  50. package/dist/components/data-display/badge/index.js.map +1 -0
  51. package/dist/components/data-display/card/card.d.ts +18 -0
  52. package/dist/components/data-display/card/card.d.ts.map +1 -0
  53. package/dist/components/data-display/card/card.js +21 -0
  54. package/dist/components/data-display/card/card.js.map +1 -0
  55. package/dist/components/data-display/card/index.d.ts +2 -0
  56. package/dist/components/data-display/card/index.d.ts.map +1 -0
  57. package/dist/components/data-display/card/index.js +2 -0
  58. package/dist/components/data-display/card/index.js.map +1 -0
  59. package/dist/components/data-display/description-list/description-list.d.ts +17 -0
  60. package/dist/components/data-display/description-list/description-list.d.ts.map +1 -0
  61. package/dist/components/data-display/description-list/description-list.js +10 -0
  62. package/dist/components/data-display/description-list/description-list.js.map +1 -0
  63. package/dist/components/data-display/description-list/index.d.ts +2 -0
  64. package/dist/components/data-display/description-list/index.d.ts.map +1 -0
  65. package/dist/components/data-display/description-list/index.js +2 -0
  66. package/dist/components/data-display/description-list/index.js.map +1 -0
  67. package/dist/components/data-display/progress-bar/index.d.ts +2 -0
  68. package/dist/components/data-display/progress-bar/index.d.ts.map +1 -0
  69. package/dist/components/data-display/progress-bar/index.js +2 -0
  70. package/dist/components/data-display/progress-bar/index.js.map +1 -0
  71. package/dist/components/data-display/progress-bar/progress-bar.d.ts +57 -0
  72. package/dist/components/data-display/progress-bar/progress-bar.d.ts.map +1 -0
  73. package/dist/components/data-display/progress-bar/progress-bar.js +57 -0
  74. package/dist/components/data-display/progress-bar/progress-bar.js.map +1 -0
  75. package/dist/components/data-display/relative-time/index.d.ts +2 -0
  76. package/dist/components/data-display/relative-time/index.d.ts.map +1 -0
  77. package/dist/components/data-display/relative-time/index.js +2 -0
  78. package/dist/components/data-display/relative-time/index.js.map +1 -0
  79. package/dist/components/data-display/relative-time/relative-time.d.ts +66 -0
  80. package/dist/components/data-display/relative-time/relative-time.d.ts.map +1 -0
  81. package/dist/components/data-display/relative-time/relative-time.js +102 -0
  82. package/dist/components/data-display/relative-time/relative-time.js.map +1 -0
  83. package/dist/components/data-display/stat-card/index.d.ts +2 -0
  84. package/dist/components/data-display/stat-card/index.d.ts.map +1 -0
  85. package/dist/components/data-display/stat-card/index.js +2 -0
  86. package/dist/components/data-display/stat-card/index.js.map +1 -0
  87. package/dist/components/data-display/stat-card/stat-card.d.ts +19 -0
  88. package/dist/components/data-display/stat-card/stat-card.d.ts.map +1 -0
  89. package/dist/components/data-display/stat-card/stat-card.js +11 -0
  90. package/dist/components/data-display/stat-card/stat-card.js.map +1 -0
  91. package/dist/components/data-display/status-badge/index.d.ts +2 -0
  92. package/dist/components/data-display/status-badge/index.d.ts.map +1 -0
  93. package/dist/components/data-display/status-badge/index.js +2 -0
  94. package/dist/components/data-display/status-badge/index.js.map +1 -0
  95. package/dist/components/data-display/status-badge/status-badge.d.ts +169 -0
  96. package/dist/components/data-display/status-badge/status-badge.d.ts.map +1 -0
  97. package/dist/components/data-display/status-badge/status-badge.js +139 -0
  98. package/dist/components/data-display/status-badge/status-badge.js.map +1 -0
  99. package/dist/components/data-grid/data-table/data-table.d.ts +53 -0
  100. package/dist/components/data-grid/data-table/data-table.d.ts.map +1 -0
  101. package/dist/components/data-grid/data-table/data-table.js +47 -0
  102. package/dist/components/data-grid/data-table/data-table.js.map +1 -0
  103. package/dist/components/data-grid/data-table/index.d.ts +2 -0
  104. package/dist/components/data-grid/data-table/index.d.ts.map +1 -0
  105. package/dist/components/data-grid/data-table/index.js +2 -0
  106. package/dist/components/data-grid/data-table/index.js.map +1 -0
  107. package/dist/components/data-grid/load-more/index.d.ts +2 -0
  108. package/dist/components/data-grid/load-more/index.d.ts.map +1 -0
  109. package/dist/components/data-grid/load-more/index.js +2 -0
  110. package/dist/components/data-grid/load-more/index.js.map +1 -0
  111. package/dist/components/data-grid/load-more/load-more.d.ts +97 -0
  112. package/dist/components/data-grid/load-more/load-more.d.ts.map +1 -0
  113. package/dist/components/data-grid/load-more/load-more.js +184 -0
  114. package/dist/components/data-grid/load-more/load-more.js.map +1 -0
  115. package/dist/components/feedback/alert/alert.d.ts +17 -0
  116. package/dist/components/feedback/alert/alert.d.ts.map +1 -0
  117. package/dist/components/feedback/alert/alert.js +17 -0
  118. package/dist/components/feedback/alert/alert.js.map +1 -0
  119. package/dist/components/feedback/alert/index.d.ts +2 -0
  120. package/dist/components/feedback/alert/index.d.ts.map +1 -0
  121. package/dist/components/feedback/alert/index.js +2 -0
  122. package/dist/components/feedback/alert/index.js.map +1 -0
  123. package/dist/components/feedback/callout-banner/callout-banner.d.ts +66 -0
  124. package/dist/components/feedback/callout-banner/callout-banner.d.ts.map +1 -0
  125. package/dist/components/feedback/callout-banner/callout-banner.js +35 -0
  126. package/dist/components/feedback/callout-banner/callout-banner.js.map +1 -0
  127. package/dist/components/feedback/callout-banner/index.d.ts +2 -0
  128. package/dist/components/feedback/callout-banner/index.d.ts.map +1 -0
  129. package/dist/components/feedback/callout-banner/index.js +2 -0
  130. package/dist/components/feedback/callout-banner/index.js.map +1 -0
  131. package/dist/components/feedback/empty-state/empty-state.d.ts +59 -0
  132. package/dist/components/feedback/empty-state/empty-state.d.ts.map +1 -0
  133. package/dist/components/feedback/empty-state/empty-state.js +16 -0
  134. package/dist/components/feedback/empty-state/empty-state.js.map +1 -0
  135. package/dist/components/feedback/empty-state/index.d.ts +2 -0
  136. package/dist/components/feedback/empty-state/index.d.ts.map +1 -0
  137. package/dist/components/feedback/empty-state/index.js +2 -0
  138. package/dist/components/feedback/empty-state/index.js.map +1 -0
  139. package/dist/components/feedback/error-page/error-page.d.ts +66 -0
  140. package/dist/components/feedback/error-page/error-page.d.ts.map +1 -0
  141. package/dist/components/feedback/error-page/error-page.js +43 -0
  142. package/dist/components/feedback/error-page/error-page.js.map +1 -0
  143. package/dist/components/feedback/error-page/index.d.ts +2 -0
  144. package/dist/components/feedback/error-page/index.d.ts.map +1 -0
  145. package/dist/components/feedback/error-page/index.js +2 -0
  146. package/dist/components/feedback/error-page/index.js.map +1 -0
  147. package/dist/components/feedback/error-state/error-state.boundary.d.ts +45 -0
  148. package/dist/components/feedback/error-state/error-state.boundary.d.ts.map +1 -0
  149. package/dist/components/feedback/error-state/error-state.boundary.js +40 -0
  150. package/dist/components/feedback/error-state/error-state.boundary.js.map +1 -0
  151. package/dist/components/feedback/error-state/error-state.d.ts +51 -0
  152. package/dist/components/feedback/error-state/error-state.d.ts.map +1 -0
  153. package/dist/components/feedback/error-state/error-state.js +47 -0
  154. package/dist/components/feedback/error-state/error-state.js.map +1 -0
  155. package/dist/components/feedback/error-state/index.d.ts +3 -0
  156. package/dist/components/feedback/error-state/index.d.ts.map +1 -0
  157. package/dist/components/feedback/error-state/index.js +3 -0
  158. package/dist/components/feedback/error-state/index.js.map +1 -0
  159. package/dist/components/feedback/inline-error-retry/index.d.ts +2 -0
  160. package/dist/components/feedback/inline-error-retry/index.d.ts.map +1 -0
  161. package/dist/components/feedback/inline-error-retry/index.js +2 -0
  162. package/dist/components/feedback/inline-error-retry/index.js.map +1 -0
  163. package/dist/components/feedback/inline-error-retry/inline-error-retry.d.ts +41 -0
  164. package/dist/components/feedback/inline-error-retry/inline-error-retry.d.ts.map +1 -0
  165. package/dist/components/feedback/inline-error-retry/inline-error-retry.js +75 -0
  166. package/dist/components/feedback/inline-error-retry/inline-error-retry.js.map +1 -0
  167. package/dist/components/feedback/inline-notice/index.d.ts +2 -0
  168. package/dist/components/feedback/inline-notice/index.d.ts.map +1 -0
  169. package/dist/components/feedback/inline-notice/index.js +2 -0
  170. package/dist/components/feedback/inline-notice/index.js.map +1 -0
  171. package/dist/components/feedback/inline-notice/inline-notice.d.ts +40 -0
  172. package/dist/components/feedback/inline-notice/inline-notice.d.ts.map +1 -0
  173. package/dist/components/feedback/inline-notice/inline-notice.js +29 -0
  174. package/dist/components/feedback/inline-notice/inline-notice.js.map +1 -0
  175. package/dist/components/feedback/loading-state/index.d.ts +2 -0
  176. package/dist/components/feedback/loading-state/index.d.ts.map +1 -0
  177. package/dist/components/feedback/loading-state/index.js +2 -0
  178. package/dist/components/feedback/loading-state/index.js.map +1 -0
  179. package/dist/components/feedback/loading-state/loading-state.d.ts +17 -0
  180. package/dist/components/feedback/loading-state/loading-state.d.ts.map +1 -0
  181. package/dist/components/feedback/loading-state/loading-state.js +12 -0
  182. package/dist/components/feedback/loading-state/loading-state.js.map +1 -0
  183. package/dist/components/feedback/skeleton/index.d.ts +2 -0
  184. package/dist/components/feedback/skeleton/index.d.ts.map +1 -0
  185. package/dist/components/feedback/skeleton/index.js +2 -0
  186. package/dist/components/feedback/skeleton/index.js.map +1 -0
  187. package/dist/components/feedback/skeleton/skeleton.d.ts +12 -0
  188. package/dist/components/feedback/skeleton/skeleton.d.ts.map +1 -0
  189. package/dist/components/feedback/skeleton/skeleton.js +10 -0
  190. package/dist/components/feedback/skeleton/skeleton.js.map +1 -0
  191. package/dist/components/feedback/spinner/index.d.ts +2 -0
  192. package/dist/components/feedback/spinner/index.d.ts.map +1 -0
  193. package/dist/components/feedback/spinner/index.js +2 -0
  194. package/dist/components/feedback/spinner/index.js.map +1 -0
  195. package/dist/components/feedback/spinner/spinner.d.ts +12 -0
  196. package/dist/components/feedback/spinner/spinner.d.ts.map +1 -0
  197. package/dist/components/feedback/spinner/spinner.js +10 -0
  198. package/dist/components/feedback/spinner/spinner.js.map +1 -0
  199. package/dist/components/feedback/toast/index.d.ts +2 -0
  200. package/dist/components/feedback/toast/index.d.ts.map +1 -0
  201. package/dist/components/feedback/toast/index.js +2 -0
  202. package/dist/components/feedback/toast/index.js.map +1 -0
  203. package/dist/components/feedback/toast/toast.d.ts +109 -0
  204. package/dist/components/feedback/toast/toast.d.ts.map +1 -0
  205. package/dist/components/feedback/toast/toast.js +187 -0
  206. package/dist/components/feedback/toast/toast.js.map +1 -0
  207. package/dist/components/forms/checkbox/checkbox.d.ts +15 -0
  208. package/dist/components/forms/checkbox/checkbox.d.ts.map +1 -0
  209. package/dist/components/forms/checkbox/checkbox.js +23 -0
  210. package/dist/components/forms/checkbox/checkbox.js.map +1 -0
  211. package/dist/components/forms/checkbox/index.d.ts +2 -0
  212. package/dist/components/forms/checkbox/index.d.ts.map +1 -0
  213. package/dist/components/forms/checkbox/index.js +2 -0
  214. package/dist/components/forms/checkbox/index.js.map +1 -0
  215. package/dist/components/forms/combobox/combobox.d.ts +35 -0
  216. package/dist/components/forms/combobox/combobox.d.ts.map +1 -0
  217. package/dist/components/forms/combobox/combobox.js +152 -0
  218. package/dist/components/forms/combobox/combobox.js.map +1 -0
  219. package/dist/components/forms/combobox/index.d.ts +2 -0
  220. package/dist/components/forms/combobox/index.d.ts.map +1 -0
  221. package/dist/components/forms/combobox/index.js +2 -0
  222. package/dist/components/forms/combobox/index.js.map +1 -0
  223. package/dist/components/forms/form-field/form-field.d.ts +104 -0
  224. package/dist/components/forms/form-field/form-field.d.ts.map +1 -0
  225. package/dist/components/forms/form-field/form-field.js +114 -0
  226. package/dist/components/forms/form-field/form-field.js.map +1 -0
  227. package/dist/components/forms/form-field/index.d.ts +2 -0
  228. package/dist/components/forms/form-field/index.d.ts.map +1 -0
  229. package/dist/components/forms/form-field/index.js +2 -0
  230. package/dist/components/forms/form-field/index.js.map +1 -0
  231. package/dist/components/forms/inline-edit-text/index.d.ts +2 -0
  232. package/dist/components/forms/inline-edit-text/index.d.ts.map +1 -0
  233. package/dist/components/forms/inline-edit-text/index.js +2 -0
  234. package/dist/components/forms/inline-edit-text/index.js.map +1 -0
  235. package/dist/components/forms/inline-edit-text/inline-edit-text.d.ts +63 -0
  236. package/dist/components/forms/inline-edit-text/inline-edit-text.d.ts.map +1 -0
  237. package/dist/components/forms/inline-edit-text/inline-edit-text.js +175 -0
  238. package/dist/components/forms/inline-edit-text/inline-edit-text.js.map +1 -0
  239. package/dist/components/forms/otp-pin-input/index.d.ts +2 -0
  240. package/dist/components/forms/otp-pin-input/index.d.ts.map +1 -0
  241. package/dist/components/forms/otp-pin-input/index.js +2 -0
  242. package/dist/components/forms/otp-pin-input/index.js.map +1 -0
  243. package/dist/components/forms/otp-pin-input/otp-pin-input.d.ts +32 -0
  244. package/dist/components/forms/otp-pin-input/otp-pin-input.d.ts.map +1 -0
  245. package/dist/components/forms/otp-pin-input/otp-pin-input.js +73 -0
  246. package/dist/components/forms/otp-pin-input/otp-pin-input.js.map +1 -0
  247. package/dist/components/forms/segmented-control/index.d.ts +2 -0
  248. package/dist/components/forms/segmented-control/index.d.ts.map +1 -0
  249. package/dist/components/forms/segmented-control/index.js +2 -0
  250. package/dist/components/forms/segmented-control/index.js.map +1 -0
  251. package/dist/components/forms/segmented-control/segmented-control.d.ts +62 -0
  252. package/dist/components/forms/segmented-control/segmented-control.d.ts.map +1 -0
  253. package/dist/components/forms/segmented-control/segmented-control.js +139 -0
  254. package/dist/components/forms/segmented-control/segmented-control.js.map +1 -0
  255. package/dist/components/forms/select/index.d.ts +2 -0
  256. package/dist/components/forms/select/index.d.ts.map +1 -0
  257. package/dist/components/forms/select/index.js +2 -0
  258. package/dist/components/forms/select/index.js.map +1 -0
  259. package/dist/components/forms/select/select.d.ts +27 -0
  260. package/dist/components/forms/select/select.d.ts.map +1 -0
  261. package/dist/components/forms/select/select.js +39 -0
  262. package/dist/components/forms/select/select.js.map +1 -0
  263. package/dist/components/forms/switch/index.d.ts +2 -0
  264. package/dist/components/forms/switch/index.d.ts.map +1 -0
  265. package/dist/components/forms/switch/index.js +2 -0
  266. package/dist/components/forms/switch/index.js.map +1 -0
  267. package/dist/components/forms/switch/switch.d.ts +13 -0
  268. package/dist/components/forms/switch/switch.d.ts.map +1 -0
  269. package/dist/components/forms/switch/switch.js +21 -0
  270. package/dist/components/forms/switch/switch.js.map +1 -0
  271. package/dist/components/forms/switch-settings-list/index.d.ts +2 -0
  272. package/dist/components/forms/switch-settings-list/index.d.ts.map +1 -0
  273. package/dist/components/forms/switch-settings-list/index.js +2 -0
  274. package/dist/components/forms/switch-settings-list/index.js.map +1 -0
  275. package/dist/components/forms/switch-settings-list/switch-settings-list.d.ts +58 -0
  276. package/dist/components/forms/switch-settings-list/switch-settings-list.d.ts.map +1 -0
  277. package/dist/components/forms/switch-settings-list/switch-settings-list.js +123 -0
  278. package/dist/components/forms/switch-settings-list/switch-settings-list.js.map +1 -0
  279. package/dist/components/forms/tag-input/index.d.ts +2 -0
  280. package/dist/components/forms/tag-input/index.d.ts.map +1 -0
  281. package/dist/components/forms/tag-input/index.js +2 -0
  282. package/dist/components/forms/tag-input/index.js.map +1 -0
  283. package/dist/components/forms/tag-input/tag-input.d.ts +60 -0
  284. package/dist/components/forms/tag-input/tag-input.d.ts.map +1 -0
  285. package/dist/components/forms/tag-input/tag-input.js +258 -0
  286. package/dist/components/forms/tag-input/tag-input.js.map +1 -0
  287. package/dist/components/forms/text-field/index.d.ts +2 -0
  288. package/dist/components/forms/text-field/index.d.ts.map +1 -0
  289. package/dist/components/forms/text-field/index.js +2 -0
  290. package/dist/components/forms/text-field/index.js.map +1 -0
  291. package/dist/components/forms/text-field/text-field.d.ts +15 -0
  292. package/dist/components/forms/text-field/text-field.d.ts.map +1 -0
  293. package/dist/components/forms/text-field/text-field.js +14 -0
  294. package/dist/components/forms/text-field/text-field.js.map +1 -0
  295. package/dist/components/geo/location-fields/index.d.ts +2 -0
  296. package/dist/components/geo/location-fields/index.d.ts.map +1 -0
  297. package/dist/components/geo/location-fields/index.js +2 -0
  298. package/dist/components/geo/location-fields/index.js.map +1 -0
  299. package/dist/components/geo/location-fields/location-fields.d.ts +104 -0
  300. package/dist/components/geo/location-fields/location-fields.d.ts.map +1 -0
  301. package/dist/components/geo/location-fields/location-fields.js +248 -0
  302. package/dist/components/geo/location-fields/location-fields.js.map +1 -0
  303. package/dist/components/identity/avatar/avatar.d.ts +68 -0
  304. package/dist/components/identity/avatar/avatar.d.ts.map +1 -0
  305. package/dist/components/identity/avatar/avatar.js +73 -0
  306. package/dist/components/identity/avatar/avatar.js.map +1 -0
  307. package/dist/components/identity/avatar/index.d.ts +2 -0
  308. package/dist/components/identity/avatar/index.d.ts.map +1 -0
  309. package/dist/components/identity/avatar/index.js +2 -0
  310. package/dist/components/identity/avatar/index.js.map +1 -0
  311. package/dist/components/identity/username-availability-input/index.d.ts +2 -0
  312. package/dist/components/identity/username-availability-input/index.d.ts.map +1 -0
  313. package/dist/components/identity/username-availability-input/index.js +2 -0
  314. package/dist/components/identity/username-availability-input/index.js.map +1 -0
  315. package/dist/components/identity/username-availability-input/username-availability-input.d.ts +71 -0
  316. package/dist/components/identity/username-availability-input/username-availability-input.d.ts.map +1 -0
  317. package/dist/components/identity/username-availability-input/username-availability-input.js +110 -0
  318. package/dist/components/identity/username-availability-input/username-availability-input.js.map +1 -0
  319. package/dist/components/layout/section-header/index.d.ts +2 -0
  320. package/dist/components/layout/section-header/index.d.ts.map +1 -0
  321. package/dist/components/layout/section-header/index.js +2 -0
  322. package/dist/components/layout/section-header/index.js.map +1 -0
  323. package/dist/components/layout/section-header/section-header.d.ts +49 -0
  324. package/dist/components/layout/section-header/section-header.d.ts.map +1 -0
  325. package/dist/components/layout/section-header/section-header.js +39 -0
  326. package/dist/components/layout/section-header/section-header.js.map +1 -0
  327. package/dist/components/layout/separator/index.d.ts +2 -0
  328. package/dist/components/layout/separator/index.d.ts.map +1 -0
  329. package/dist/components/layout/separator/index.js +2 -0
  330. package/dist/components/layout/separator/index.js.map +1 -0
  331. package/dist/components/layout/separator/separator.d.ts +4 -0
  332. package/dist/components/layout/separator/separator.d.ts.map +1 -0
  333. package/dist/components/layout/separator/separator.js +9 -0
  334. package/dist/components/layout/separator/separator.js.map +1 -0
  335. package/dist/components/layout/visually-hidden/index.d.ts +2 -0
  336. package/dist/components/layout/visually-hidden/index.d.ts.map +1 -0
  337. package/dist/components/layout/visually-hidden/index.js +2 -0
  338. package/dist/components/layout/visually-hidden/index.js.map +1 -0
  339. package/dist/components/layout/visually-hidden/visually-hidden.d.ts +4 -0
  340. package/dist/components/layout/visually-hidden/visually-hidden.d.ts.map +1 -0
  341. package/dist/components/layout/visually-hidden/visually-hidden.js +7 -0
  342. package/dist/components/layout/visually-hidden/visually-hidden.js.map +1 -0
  343. package/dist/components/navigation/back-link/back-link.d.ts +18 -0
  344. package/dist/components/navigation/back-link/back-link.d.ts.map +1 -0
  345. package/dist/components/navigation/back-link/back-link.js +16 -0
  346. package/dist/components/navigation/back-link/back-link.js.map +1 -0
  347. package/dist/components/navigation/back-link/index.d.ts +2 -0
  348. package/dist/components/navigation/back-link/index.d.ts.map +1 -0
  349. package/dist/components/navigation/back-link/index.js +2 -0
  350. package/dist/components/navigation/back-link/index.js.map +1 -0
  351. package/dist/components/navigation/breadcrumb/breadcrumb.d.ts +19 -0
  352. package/dist/components/navigation/breadcrumb/breadcrumb.d.ts.map +1 -0
  353. package/dist/components/navigation/breadcrumb/breadcrumb.js +19 -0
  354. package/dist/components/navigation/breadcrumb/breadcrumb.js.map +1 -0
  355. package/dist/components/navigation/breadcrumb/index.d.ts +2 -0
  356. package/dist/components/navigation/breadcrumb/index.d.ts.map +1 -0
  357. package/dist/components/navigation/breadcrumb/index.js +2 -0
  358. package/dist/components/navigation/breadcrumb/index.js.map +1 -0
  359. package/dist/components/navigation/link/index.d.ts +2 -0
  360. package/dist/components/navigation/link/index.d.ts.map +1 -0
  361. package/dist/components/navigation/link/index.js +2 -0
  362. package/dist/components/navigation/link/index.js.map +1 -0
  363. package/dist/components/navigation/link/link.d.ts +13 -0
  364. package/dist/components/navigation/link/link.d.ts.map +1 -0
  365. package/dist/components/navigation/link/link.js +18 -0
  366. package/dist/components/navigation/link/link.js.map +1 -0
  367. package/dist/components/navigation/pagination/index.d.ts +2 -0
  368. package/dist/components/navigation/pagination/index.d.ts.map +1 -0
  369. package/dist/components/navigation/pagination/index.js +2 -0
  370. package/dist/components/navigation/pagination/index.js.map +1 -0
  371. package/dist/components/navigation/pagination/pagination.d.ts +18 -0
  372. package/dist/components/navigation/pagination/pagination.d.ts.map +1 -0
  373. package/dist/components/navigation/pagination/pagination.js +40 -0
  374. package/dist/components/navigation/pagination/pagination.js.map +1 -0
  375. package/dist/components/navigation/tabs/index.d.ts +2 -0
  376. package/dist/components/navigation/tabs/index.d.ts.map +1 -0
  377. package/dist/components/navigation/tabs/index.js +2 -0
  378. package/dist/components/navigation/tabs/index.js.map +1 -0
  379. package/dist/components/navigation/tabs/tabs.d.ts +121 -0
  380. package/dist/components/navigation/tabs/tabs.d.ts.map +1 -0
  381. package/dist/components/navigation/tabs/tabs.js +127 -0
  382. package/dist/components/navigation/tabs/tabs.js.map +1 -0
  383. package/dist/components/overlays/confirm-dialog/confirm-dialog.d.ts +107 -0
  384. package/dist/components/overlays/confirm-dialog/confirm-dialog.d.ts.map +1 -0
  385. package/dist/components/overlays/confirm-dialog/confirm-dialog.js +186 -0
  386. package/dist/components/overlays/confirm-dialog/confirm-dialog.js.map +1 -0
  387. package/dist/components/overlays/confirm-dialog/index.d.ts +2 -0
  388. package/dist/components/overlays/confirm-dialog/index.d.ts.map +1 -0
  389. package/dist/components/overlays/confirm-dialog/index.js +2 -0
  390. package/dist/components/overlays/confirm-dialog/index.js.map +1 -0
  391. package/dist/components/overlays/dialog/dialog.d.ts +48 -0
  392. package/dist/components/overlays/dialog/dialog.d.ts.map +1 -0
  393. package/dist/components/overlays/dialog/dialog.js +35 -0
  394. package/dist/components/overlays/dialog/dialog.js.map +1 -0
  395. package/dist/components/overlays/dialog/index.d.ts +2 -0
  396. package/dist/components/overlays/dialog/index.d.ts.map +1 -0
  397. package/dist/components/overlays/dialog/index.js +2 -0
  398. package/dist/components/overlays/dialog/index.js.map +1 -0
  399. package/dist/components/overlays/dropdown-menu/dropdown-menu.d.ts +24 -0
  400. package/dist/components/overlays/dropdown-menu/dropdown-menu.d.ts.map +1 -0
  401. package/dist/components/overlays/dropdown-menu/dropdown-menu.js +41 -0
  402. package/dist/components/overlays/dropdown-menu/dropdown-menu.js.map +1 -0
  403. package/dist/components/overlays/dropdown-menu/index.d.ts +2 -0
  404. package/dist/components/overlays/dropdown-menu/index.d.ts.map +1 -0
  405. package/dist/components/overlays/dropdown-menu/index.js +2 -0
  406. package/dist/components/overlays/dropdown-menu/index.js.map +1 -0
  407. package/dist/components/overlays/popover/index.d.ts +2 -0
  408. package/dist/components/overlays/popover/index.d.ts.map +1 -0
  409. package/dist/components/overlays/popover/index.js +2 -0
  410. package/dist/components/overlays/popover/index.js.map +1 -0
  411. package/dist/components/overlays/popover/popover.d.ts +8 -0
  412. package/dist/components/overlays/popover/popover.d.ts.map +1 -0
  413. package/dist/components/overlays/popover/popover.js +14 -0
  414. package/dist/components/overlays/popover/popover.js.map +1 -0
  415. package/dist/components/overlays/responsive-dialog/index.d.ts +2 -0
  416. package/dist/components/overlays/responsive-dialog/index.d.ts.map +1 -0
  417. package/dist/components/overlays/responsive-dialog/index.js +2 -0
  418. package/dist/components/overlays/responsive-dialog/index.js.map +1 -0
  419. package/dist/components/overlays/responsive-dialog/responsive-dialog.d.ts +25 -0
  420. package/dist/components/overlays/responsive-dialog/responsive-dialog.d.ts.map +1 -0
  421. package/dist/components/overlays/responsive-dialog/responsive-dialog.js +22 -0
  422. package/dist/components/overlays/responsive-dialog/responsive-dialog.js.map +1 -0
  423. package/dist/components/overlays/sheet/index.d.ts +2 -0
  424. package/dist/components/overlays/sheet/index.d.ts.map +1 -0
  425. package/dist/components/overlays/sheet/index.js +2 -0
  426. package/dist/components/overlays/sheet/index.js.map +1 -0
  427. package/dist/components/overlays/sheet/sheet.d.ts +53 -0
  428. package/dist/components/overlays/sheet/sheet.d.ts.map +1 -0
  429. package/dist/components/overlays/sheet/sheet.js +43 -0
  430. package/dist/components/overlays/sheet/sheet.js.map +1 -0
  431. package/dist/components/overlays/tooltip/index.d.ts +2 -0
  432. package/dist/components/overlays/tooltip/index.d.ts.map +1 -0
  433. package/dist/components/overlays/tooltip/index.js +2 -0
  434. package/dist/components/overlays/tooltip/index.js.map +1 -0
  435. package/dist/components/overlays/tooltip/tooltip.d.ts +20 -0
  436. package/dist/components/overlays/tooltip/tooltip.d.ts.map +1 -0
  437. package/dist/components/overlays/tooltip/tooltip.js +12 -0
  438. package/dist/components/overlays/tooltip/tooltip.js.map +1 -0
  439. package/dist/components/search/search-input/index.d.ts +2 -0
  440. package/dist/components/search/search-input/index.d.ts.map +1 -0
  441. package/dist/components/search/search-input/index.js +2 -0
  442. package/dist/components/search/search-input/index.js.map +1 -0
  443. package/dist/components/search/search-input/search-input.d.ts +48 -0
  444. package/dist/components/search/search-input/search-input.d.ts.map +1 -0
  445. package/dist/components/search/search-input/search-input.js +140 -0
  446. package/dist/components/search/search-input/search-input.js.map +1 -0
  447. package/dist/components/technical/secret-field/index.d.ts +2 -0
  448. package/dist/components/technical/secret-field/index.d.ts.map +1 -0
  449. package/dist/components/technical/secret-field/index.js +2 -0
  450. package/dist/components/technical/secret-field/index.js.map +1 -0
  451. package/dist/components/technical/secret-field/secret-field.d.ts +38 -0
  452. package/dist/components/technical/secret-field/secret-field.d.ts.map +1 -0
  453. package/dist/components/technical/secret-field/secret-field.js +42 -0
  454. package/dist/components/technical/secret-field/secret-field.js.map +1 -0
  455. package/dist/components/typography/kbd/index.d.ts +2 -0
  456. package/dist/components/typography/kbd/index.d.ts.map +1 -0
  457. package/dist/components/typography/kbd/index.js +2 -0
  458. package/dist/components/typography/kbd/index.js.map +1 -0
  459. package/dist/components/typography/kbd/kbd.d.ts +4 -0
  460. package/dist/components/typography/kbd/kbd.d.ts.map +1 -0
  461. package/dist/components/typography/kbd/kbd.js +7 -0
  462. package/dist/components/typography/kbd/kbd.js.map +1 -0
  463. package/dist/entries/marketing.d.ts +9 -0
  464. package/dist/entries/marketing.d.ts.map +1 -0
  465. package/dist/entries/marketing.js +9 -0
  466. package/dist/entries/marketing.js.map +1 -0
  467. package/dist/index.d.ts +64 -0
  468. package/dist/index.d.ts.map +1 -0
  469. package/dist/index.js +67 -0
  470. package/dist/index.js.map +1 -0
  471. package/dist/internal/cx.d.ts +3 -0
  472. package/dist/internal/cx.d.ts.map +1 -0
  473. package/dist/internal/cx.js +6 -0
  474. package/dist/internal/cx.js.map +1 -0
  475. package/dist/internal/dismiss.d.ts +23 -0
  476. package/dist/internal/dismiss.d.ts.map +1 -0
  477. package/dist/internal/dismiss.js +36 -0
  478. package/dist/internal/dismiss.js.map +1 -0
  479. package/dist/internal/dismissible.d.ts +26 -0
  480. package/dist/internal/dismissible.d.ts.map +1 -0
  481. package/dist/internal/dismissible.js +82 -0
  482. package/dist/internal/dismissible.js.map +1 -0
  483. package/dist/internal/icons.d.ts +26 -0
  484. package/dist/internal/icons.d.ts.map +1 -0
  485. package/dist/internal/icons.js +81 -0
  486. package/dist/internal/icons.js.map +1 -0
  487. package/dist/internal/inert.d.ts +7 -0
  488. package/dist/internal/inert.d.ts.map +1 -0
  489. package/dist/internal/inert.js +10 -0
  490. package/dist/internal/inert.js.map +1 -0
  491. package/dist/manifest.json +8532 -0
  492. package/dist/patterns/actions/toolbar/index.d.ts +2 -0
  493. package/dist/patterns/actions/toolbar/index.d.ts.map +1 -0
  494. package/dist/patterns/actions/toolbar/index.js +2 -0
  495. package/dist/patterns/actions/toolbar/index.js.map +1 -0
  496. package/dist/patterns/actions/toolbar/toolbar.d.ts +20 -0
  497. package/dist/patterns/actions/toolbar/toolbar.d.ts.map +1 -0
  498. package/dist/patterns/actions/toolbar/toolbar.js +46 -0
  499. package/dist/patterns/actions/toolbar/toolbar.js.map +1 -0
  500. package/dist/patterns/layout/marketing-hero/index.d.ts +2 -0
  501. package/dist/patterns/layout/marketing-hero/index.d.ts.map +1 -0
  502. package/dist/patterns/layout/marketing-hero/index.js +2 -0
  503. package/dist/patterns/layout/marketing-hero/index.js.map +1 -0
  504. package/dist/patterns/layout/marketing-hero/marketing-hero.d.ts +24 -0
  505. package/dist/patterns/layout/marketing-hero/marketing-hero.d.ts.map +1 -0
  506. package/dist/patterns/layout/marketing-hero/marketing-hero.js +7 -0
  507. package/dist/patterns/layout/marketing-hero/marketing-hero.js.map +1 -0
  508. package/dist/patterns/layout/marketing-section-blocks/index.d.ts +7 -0
  509. package/dist/patterns/layout/marketing-section-blocks/index.d.ts.map +1 -0
  510. package/dist/patterns/layout/marketing-section-blocks/index.js +7 -0
  511. package/dist/patterns/layout/marketing-section-blocks/index.js.map +1 -0
  512. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.cta-band.d.ts +15 -0
  513. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.cta-band.d.ts.map +1 -0
  514. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.cta-band.js +7 -0
  515. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.cta-band.js.map +1 -0
  516. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.d.ts +37 -0
  517. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.d.ts.map +1 -0
  518. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.faq.d.ts +23 -0
  519. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.faq.d.ts.map +1 -0
  520. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.faq.js +15 -0
  521. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.faq.js.map +1 -0
  522. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.feature-grid.d.ts +25 -0
  523. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.feature-grid.d.ts.map +1 -0
  524. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.feature-grid.js +10 -0
  525. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.feature-grid.js.map +1 -0
  526. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.js +14 -0
  527. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.js.map +1 -0
  528. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.product-frame.d.ts +25 -0
  529. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.product-frame.d.ts.map +1 -0
  530. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.product-frame.js +12 -0
  531. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.product-frame.js.map +1 -0
  532. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.stat-strip.d.ts +14 -0
  533. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.stat-strip.d.ts.map +1 -0
  534. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.stat-strip.js +7 -0
  535. package/dist/patterns/layout/marketing-section-blocks/marketing-section-blocks.stat-strip.js.map +1 -0
  536. package/dist/patterns/layout/marketing-site-shell/index.d.ts +4 -0
  537. package/dist/patterns/layout/marketing-site-shell/index.d.ts.map +1 -0
  538. package/dist/patterns/layout/marketing-site-shell/index.js +3 -0
  539. package/dist/patterns/layout/marketing-site-shell/index.js.map +1 -0
  540. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.d.ts +31 -0
  541. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.d.ts.map +1 -0
  542. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.footer.d.ts +33 -0
  543. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.footer.d.ts.map +1 -0
  544. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.footer.js +11 -0
  545. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.footer.js.map +1 -0
  546. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.js +32 -0
  547. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.js.map +1 -0
  548. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.link.d.ts +10 -0
  549. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.link.d.ts.map +1 -0
  550. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.link.js +8 -0
  551. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.link.js.map +1 -0
  552. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.types.d.ts +24 -0
  553. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.types.d.ts.map +1 -0
  554. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.types.js +4 -0
  555. package/dist/patterns/layout/marketing-site-shell/marketing-site-shell.types.js.map +1 -0
  556. package/dist/patterns/layout/page-header/index.d.ts +2 -0
  557. package/dist/patterns/layout/page-header/index.d.ts.map +1 -0
  558. package/dist/patterns/layout/page-header/index.js +2 -0
  559. package/dist/patterns/layout/page-header/index.js.map +1 -0
  560. package/dist/patterns/layout/page-header/page-header.d.ts +17 -0
  561. package/dist/patterns/layout/page-header/page-header.d.ts.map +1 -0
  562. package/dist/patterns/layout/page-header/page-header.js +7 -0
  563. package/dist/patterns/layout/page-header/page-header.js.map +1 -0
  564. package/dist/patterns/layout/settings-section/index.d.ts +2 -0
  565. package/dist/patterns/layout/settings-section/index.d.ts.map +1 -0
  566. package/dist/patterns/layout/settings-section/index.js +2 -0
  567. package/dist/patterns/layout/settings-section/index.js.map +1 -0
  568. package/dist/patterns/layout/settings-section/settings-section.d.ts +33 -0
  569. package/dist/patterns/layout/settings-section/settings-section.d.ts.map +1 -0
  570. package/dist/patterns/layout/settings-section/settings-section.js +15 -0
  571. package/dist/patterns/layout/settings-section/settings-section.js.map +1 -0
  572. package/dist/patterns/layout/split-layout/index.d.ts +2 -0
  573. package/dist/patterns/layout/split-layout/index.d.ts.map +1 -0
  574. package/dist/patterns/layout/split-layout/index.js +2 -0
  575. package/dist/patterns/layout/split-layout/index.js.map +1 -0
  576. package/dist/patterns/layout/split-layout/split-layout.d.ts +21 -0
  577. package/dist/patterns/layout/split-layout/split-layout.d.ts.map +1 -0
  578. package/dist/patterns/layout/split-layout/split-layout.js +10 -0
  579. package/dist/patterns/layout/split-layout/split-layout.js.map +1 -0
  580. package/dist/patterns/search/filter-bar/filter-bar.d.ts +25 -0
  581. package/dist/patterns/search/filter-bar/filter-bar.d.ts.map +1 -0
  582. package/dist/patterns/search/filter-bar/filter-bar.js +13 -0
  583. package/dist/patterns/search/filter-bar/filter-bar.js.map +1 -0
  584. package/dist/patterns/search/filter-bar/index.d.ts +2 -0
  585. package/dist/patterns/search/filter-bar/index.d.ts.map +1 -0
  586. package/dist/patterns/search/filter-bar/index.js +2 -0
  587. package/dist/patterns/search/filter-bar/index.js.map +1 -0
  588. package/dist/styles.css +5621 -0
  589. package/package.json +75 -4
@@ -0,0 +1,53 @@
1
+ import { type HTMLAttributes, type TableHTMLAttributes, type TdHTMLAttributes, type ThHTMLAttributes } from 'react';
2
+ import { type CheckboxProps } from '../../forms/checkbox/index.js';
3
+ export interface TableProps extends TableHTMLAttributes<HTMLTableElement> {
4
+ /** Row height. `compact` for dense data, `comfortable` (default) for mixed content. */
5
+ density?: 'compact' | 'comfortable';
6
+ /** Keep the header visible while the body scrolls (the wrapper needs a height). */
7
+ stickyHeader?: boolean;
8
+ }
9
+ /**
10
+ * Data table primitives. Wrap in `<Card flush>` for a framed table. Pass a
11
+ * `<TableCaption>` or `aria-label` so the table has an accessible name.
12
+ */
13
+ export declare const Table: import("react").ForwardRefExoticComponent<TableProps & import("react").RefAttributes<HTMLTableElement>>;
14
+ export declare function TableHeader({ className, ...rest }: HTMLAttributes<HTMLTableSectionElement>): import("react").JSX.Element;
15
+ export declare function TableBody({ className, ...rest }: HTMLAttributes<HTMLTableSectionElement>): import("react").JSX.Element;
16
+ export interface TableRowProps extends HTMLAttributes<HTMLTableRowElement> {
17
+ /** Highlights the row (also sets aria-selected). */
18
+ selected?: boolean;
19
+ /** Pointer affordance for rows that open something on click. Keep a real link or button inside. */
20
+ interactive?: boolean;
21
+ }
22
+ export declare function TableRow({ selected, interactive, className, ...rest }: TableRowProps): import("react").JSX.Element;
23
+ export type SortDirection = 'ascending' | 'descending' | 'none';
24
+ export interface TableHeadProps extends ThHTMLAttributes<HTMLTableCellElement> {
25
+ /** Current sort of this column. Renders a SortButton and sets aria-sort. */
26
+ sort?: SortDirection;
27
+ /** Called when the sort button is pressed. Required when `sort` is set. */
28
+ onSortChange?: (next: 'ascending' | 'descending') => void;
29
+ /** Right-align numbers. */
30
+ numeric?: boolean;
31
+ }
32
+ export declare function TableHead({ sort, onSortChange, numeric, className, children, scope, ...rest }: TableHeadProps): import("react").JSX.Element;
33
+ export interface SortButtonProps {
34
+ direction: SortDirection;
35
+ onClick: () => void;
36
+ children: React.ReactNode;
37
+ }
38
+ /** Column sort toggle; its accessible name states the current direction. */
39
+ export declare function SortButton({ direction, onClick, children }: SortButtonProps): import("react").JSX.Element;
40
+ export interface TableCellProps extends TdHTMLAttributes<HTMLTableCellElement> {
41
+ numeric?: boolean;
42
+ }
43
+ export declare function TableCell({ numeric, className, ...rest }: TableCellProps): import("react").JSX.Element;
44
+ export declare function TableCaption({ className, ...rest }: HTMLAttributes<HTMLTableCaptionElement>): import("react").JSX.Element;
45
+ export interface TableSelectCellProps extends Omit<CheckboxProps, 'label' | 'description'> {
46
+ /** Accessible name, e.g. "Select ticket 42" or "Select all". */
47
+ label: string;
48
+ /** Render as a header cell (for the select-all checkbox). */
49
+ header?: boolean;
50
+ }
51
+ /** Narrow checkbox column for row selection. */
52
+ export declare function TableSelectCell({ label, header, className, ...rest }: TableSelectCellProps): import("react").JSX.Element;
53
+ //# sourceMappingURL=data-table.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../../../src/components/data-grid/data-table/data-table.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,OAAO,CAAC;AAGf,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE7E,MAAM,WAAW,UAAW,SAAQ,mBAAmB,CAAC,gBAAgB,CAAC;IACvE,uFAAuF;IACvF,OAAO,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;IACpC,mFAAmF;IACnF,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;GAGG;AACH,eAAO,MAAM,KAAK,yGAehB,CAAC;AAEH,wBAAgB,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,uBAAuB,CAAC,+BAE1F;AAED,wBAAgB,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,uBAAuB,CAAC,+BAExF;AAED,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,mBAAmB,CAAC;IACxE,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mGAAmG;IACnG,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,aAAa,+BAUpF;AAED,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,YAAY,GAAG,MAAM,CAAC;AAEhE,MAAM,WAAW,cAAe,SAAQ,gBAAgB,CAAC,oBAAoB,CAAC;IAC5E,4EAA4E;IAC5E,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,KAAK,IAAI,CAAC;IAC1D,2BAA2B;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,SAAS,EACT,QAAQ,EACR,KAAa,EACb,GAAG,IAAI,EACR,EAAE,cAAc,+BAsBhB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,aAAa,CAAC;IACzB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,eAAe,+BAc3E;AAED,MAAM,WAAW,cAAe,SAAQ,gBAAgB,CAAC,oBAAoB,CAAC;IAC5E,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,SAAS,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,+BAIxE;AAED,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,uBAAuB,CAAC,+BAE3F;AAED,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,aAAa,EAAE,OAAO,GAAG,aAAa,CAAC;IACxF,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,gDAAgD;AAChD,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,MAAc,EACd,SAAS,EACT,GAAG,IAAI,EACR,EAAE,oBAAoB,+BAUtB"}
@@ -0,0 +1,47 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { forwardRef, } from 'react';
4
+ import { cx } from '../../../internal/cx.js';
5
+ import { ChevronDownGlyph } from '../../../internal/icons.js';
6
+ import { Checkbox } from '../../forms/checkbox/index.js';
7
+ /**
8
+ * Data table primitives. Wrap in `<Card flush>` for a framed table. Pass a
9
+ * `<TableCaption>` or `aria-label` so the table has an accessible name.
10
+ */
11
+ export const Table = forwardRef(function Table({ density = 'comfortable', stickyHeader = false, className, ...rest }, ref) {
12
+ return (_jsx("div", { className: "mn-table-wrap", children: _jsx("table", { ref: ref, ...rest, "data-density": density, "data-sticky": stickyHeader || undefined, className: cx('mn-table', className) }) }));
13
+ });
14
+ export function TableHeader({ className, ...rest }) {
15
+ return _jsx("thead", { ...rest, className: cx('mn-table__header', className) });
16
+ }
17
+ export function TableBody({ className, ...rest }) {
18
+ return _jsx("tbody", { ...rest, className: cx('mn-table__body', className) });
19
+ }
20
+ export function TableRow({ selected, interactive, className, ...rest }) {
21
+ return (_jsx("tr", { ...rest, "aria-selected": selected ?? rest['aria-selected'], "data-selected": selected || undefined, "data-interactive": interactive || undefined, className: cx('mn-table__row', className) }));
22
+ }
23
+ export function TableHead({ sort, onSortChange, numeric, className, children, scope = 'col', ...rest }) {
24
+ const sortable = sort !== undefined;
25
+ return (_jsx("th", { ...rest, scope: scope, "aria-sort": sortable && sort !== 'none' ? sort : undefined, "data-numeric": numeric || undefined, className: cx('mn-table__head', className), children: sortable ? (_jsx(SortButton, { direction: sort, onClick: () => onSortChange?.(sort === 'ascending' ? 'descending' : 'ascending'), children: children })) : (children) }));
26
+ }
27
+ /** Column sort toggle; its accessible name states the current direction. */
28
+ export function SortButton({ direction, onClick, children }) {
29
+ const state = direction === 'ascending'
30
+ ? 'sorted ascending'
31
+ : direction === 'descending'
32
+ ? 'sorted descending'
33
+ : 'not sorted';
34
+ return (_jsxs("button", { type: "button", className: "mn-table__sort", "data-direction": direction, onClick: onClick, children: [children, _jsxs("span", { className: "mn-visually-hidden", children: [", ", state] }), _jsx(ChevronDownGlyph, { className: "mn-table__sort-icon" })] }));
35
+ }
36
+ export function TableCell({ numeric, className, ...rest }) {
37
+ return (_jsx("td", { ...rest, "data-numeric": numeric || undefined, className: cx('mn-table__cell', className) }));
38
+ }
39
+ export function TableCaption({ className, ...rest }) {
40
+ return _jsx("caption", { ...rest, className: cx('mn-table__caption', className) });
41
+ }
42
+ /** Narrow checkbox column for row selection. */
43
+ export function TableSelectCell({ label, header = false, className, ...rest }) {
44
+ const Tag = header ? 'th' : 'td';
45
+ return (_jsx(Tag, { ...(header ? { scope: 'col' } : {}), className: cx('mn-table__select', header ? 'mn-table__head' : 'mn-table__cell', className), children: _jsx(Checkbox, { "aria-label": label, ...rest }) }));
46
+ }
47
+ //# sourceMappingURL=data-table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-table.js","sourceRoot":"","sources":["../../../../src/components/data-grid/data-table/data-table.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './data-table.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/data-grid/data-table/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './data-table.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/data-grid/data-table/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './load-more.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/data-grid/load-more/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './load-more.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/data-grid/load-more/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,97 @@
1
+ import { type HTMLAttributes, type ReactNode } from 'react';
2
+ /** One page from a cursor-paginated source. `nextCursor` null or undefined means the end. */
3
+ export interface LoadMorePage<T, C> {
4
+ items: T[];
5
+ nextCursor?: C | null;
6
+ /** Total number of items, when the server knows it. */
7
+ total?: number;
8
+ }
9
+ export interface UseLoadMoreOptions<T, C> {
10
+ /**
11
+ * Fetches one page. `cursor` is undefined for the first page. Abort the
12
+ * request when `signal` fires (on `reset` and unmount).
13
+ */
14
+ fetchPage: (cursor: C | undefined, context: {
15
+ signal: AbortSignal;
16
+ }) => Promise<LoadMorePage<T, C>>;
17
+ /** Server-rendered or cached first page; skips the initial request. */
18
+ initialPage?: LoadMorePage<T, C>;
19
+ /** Load the first page on mount when there is no `initialPage`. Default `true`. */
20
+ loadOnMount?: boolean;
21
+ }
22
+ export type LoadMoreStatus = 'idle' | 'loading' | 'error' | 'done';
23
+ export interface UseLoadMoreResult<T> {
24
+ /** Every item loaded so far, in order. */
25
+ items: T[];
26
+ status: LoadMoreStatus;
27
+ /** The last error thrown by `fetchPage`, cleared on the next attempt. */
28
+ error: unknown;
29
+ hasMore: boolean;
30
+ /** Total from the latest page, when the server sent one. */
31
+ total: number | undefined;
32
+ /** Items added by the latest successful page. */
33
+ lastPageCount: number;
34
+ /** Loads the next page. Does nothing while loading or at the end. */
35
+ loadMore: () => void;
36
+ /** Repeats the request that failed. */
37
+ retry: () => void;
38
+ /** Drops every item and loads the first page again (for example after a filter change). */
39
+ reset: () => void;
40
+ /** Props for `<LoadMore>`, so the two wire together in one spread. */
41
+ loadMoreProps: Pick<LoadMoreProps, 'hasMore' | 'loading' | 'error' | 'onLoadMore' | 'onRetry' | 'loadedCount' | 'totalCount'>;
42
+ }
43
+ /**
44
+ * Cursor pagination state: accumulates pages, tracks loading, error and end
45
+ * states, ignores stale responses and aborts in-flight requests on reset and
46
+ * unmount. Fetching stays in the product: pass `fetchPage`.
47
+ */
48
+ export declare function useLoadMore<T, C = string>(options: UseLoadMoreOptions<T, C>): UseLoadMoreResult<T>;
49
+ export interface LoadMoreProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> {
50
+ /** There is another page to load. */
51
+ hasMore: boolean;
52
+ /** A page is being fetched. The button stays focusable and shows a spinner. */
53
+ loading?: boolean;
54
+ /** The last fetch failed. Shows `errorLabel` and turns the button into Retry. Auto-load pauses. */
55
+ error?: boolean;
56
+ /** Loads the next page. */
57
+ onLoadMore: () => void;
58
+ /** Called by the Retry button. Default: `onLoadMore`. */
59
+ onRetry?: () => void;
60
+ /** Items currently on screen. Changes are announced ("20 more items loaded"). */
61
+ loadedCount?: number;
62
+ /** Total items, when the server knows it. */
63
+ totalCount?: number | undefined;
64
+ /** Noun for counts and announcements. Default `{ one: 'item', other: 'items' }`. */
65
+ noun?: {
66
+ one: string;
67
+ other: string;
68
+ };
69
+ /** Show "Showing 40 of 120 items" next to the button. Default `true` when `loadedCount` is given. */
70
+ showCount?: boolean;
71
+ /**
72
+ * Load the next page when the control scrolls into view
73
+ * (IntersectionObserver). The button always stays as the fallback and for
74
+ * keyboard users; auto-load pauses after an error. Default `false`.
75
+ */
76
+ autoLoad?: boolean;
77
+ /** IntersectionObserver root margin for `autoLoad`. Default `200px`. */
78
+ autoLoadMargin?: string;
79
+ /** Button text. Default "Load more". */
80
+ label?: ReactNode;
81
+ /** Button text while loading. Default "Loading…". */
82
+ loadingLabel?: ReactNode;
83
+ /** Error message. Default "Couldn’t load more." */
84
+ errorLabel?: ReactNode;
85
+ /** Retry button text. Default "Retry". */
86
+ retryLabel?: ReactNode;
87
+ /** Shown when everything is loaded; `null` hides it. Default "That’s everything". */
88
+ endLabel?: ReactNode;
89
+ }
90
+ /**
91
+ * The footer of a cursor-paginated list: a Load more button with loading,
92
+ * error and retry, end-of-list states and polite announcements, plus
93
+ * optional auto-load on scroll. Pair it with `useLoadMore`, or drive it from
94
+ * any data library through its props.
95
+ */
96
+ export declare const LoadMore: import("react").ForwardRefExoticComponent<LoadMoreProps & import("react").RefAttributes<HTMLDivElement>>;
97
+ //# sourceMappingURL=load-more.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-more.d.ts","sourceRoot":"","sources":["../../../../src/components/data-grid/load-more/load-more.tsx"],"names":[],"mappings":"AAEA,OAAO,EAML,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAQf,6FAA6F;AAC7F,MAAM,WAAW,YAAY,CAAC,CAAC,EAAE,CAAC;IAChC,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,UAAU,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACtB,uDAAuD;IACvD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC,EAAE,CAAC;IACtC;;;OAGG;IACH,SAAS,EAAE,CACT,MAAM,EAAE,CAAC,GAAG,SAAS,EACrB,OAAO,EAAE;QAAE,MAAM,EAAE,WAAW,CAAA;KAAE,KAC7B,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACjC,uEAAuE;IACvE,WAAW,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,mFAAmF;IACnF,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAEnE,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,0CAA0C;IAC1C,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,MAAM,EAAE,cAAc,CAAC;IACvB,yEAAyE;IACzE,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,4DAA4D;IAC5D,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,iDAAiD;IACjD,aAAa,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,uCAAuC;IACvC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,2FAA2F;IAC3F,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,sEAAsE;IACtE,aAAa,EAAE,IAAI,CACjB,aAAa,EACb,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,YAAY,GAAG,SAAS,GAAG,aAAa,GAAG,YAAY,CAC1F,CAAC;CACH;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,EACvC,OAAO,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,GAChC,iBAAiB,CAAC,CAAC,CAAC,CAiGtB;AAMD,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC;IACrF,qCAAqC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mGAAmG;IACnG,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,2BAA2B;IAC3B,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,yDAAyD;IACzD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,iFAAiF;IACjF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,oFAAoF;IACpF,IAAI,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,qGAAqG;IACrG,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wEAAwE;IACxE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,wCAAwC;IACxC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,qDAAqD;IACrD,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,mDAAmD;IACnD,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,qFAAqF;IACrF,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAQD;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,0GAgInB,CAAC"}
@@ -0,0 +1,184 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { forwardRef, useCallback, useEffect, useRef, useState, } from 'react';
4
+ import { cx } from '../../../internal/cx.js';
5
+ import { Button } from '../../actions/button/index.js';
6
+ /**
7
+ * Cursor pagination state: accumulates pages, tracks loading, error and end
8
+ * states, ignores stale responses and aborts in-flight requests on reset and
9
+ * unmount. Fetching stays in the product: pass `fetchPage`.
10
+ */
11
+ export function useLoadMore(options) {
12
+ const { initialPage, loadOnMount = true } = options;
13
+ const fetchRef = useRef(options.fetchPage);
14
+ useEffect(() => {
15
+ fetchRef.current = options.fetchPage;
16
+ });
17
+ const [items, setItems] = useState(() => initialPage?.items ?? []);
18
+ const [cursor, setCursor] = useState(() => initialPage?.nextCursor ?? undefined);
19
+ const [started, setStarted] = useState(initialPage !== undefined);
20
+ const [status, setStatus] = useState(() => initialPage && (initialPage.nextCursor === null || initialPage.nextCursor === undefined)
21
+ ? 'done'
22
+ : 'idle');
23
+ const [error, setError] = useState(undefined);
24
+ const [total, setTotal] = useState(initialPage?.total);
25
+ const [lastPageCount, setLastPageCount] = useState(initialPage?.items.length ?? 0);
26
+ const request = useRef(null);
27
+ const seq = useRef(0);
28
+ const state = useRef({ cursor, status, started });
29
+ state.current = { cursor, status, started };
30
+ const run = useCallback((from, replace) => {
31
+ request.current?.controller.abort();
32
+ const id = ++seq.current;
33
+ const controller = new AbortController();
34
+ request.current = { id, controller };
35
+ // Synchronously, so a second call in the same tick sees the request in flight.
36
+ state.current = { ...state.current, status: 'loading' };
37
+ setStatus('loading');
38
+ setError(undefined);
39
+ fetchRef.current(from, { signal: controller.signal }).then((page) => {
40
+ if (request.current?.id !== id)
41
+ return;
42
+ request.current = null;
43
+ setItems((prev) => (replace ? page.items : [...prev, ...page.items]));
44
+ setLastPageCount(page.items.length);
45
+ setTotal(page.total);
46
+ const next = page.nextCursor ?? undefined;
47
+ setCursor(next);
48
+ setStarted(true);
49
+ setStatus(next === undefined ? 'done' : 'idle');
50
+ }, (err) => {
51
+ if (request.current?.id !== id || controller.signal.aborted)
52
+ return;
53
+ request.current = null;
54
+ setError(err);
55
+ setStatus('error');
56
+ });
57
+ }, []);
58
+ const loadMore = useCallback(() => {
59
+ const s = state.current;
60
+ if (s.status === 'loading' || s.status === 'done')
61
+ return;
62
+ run(s.started ? s.cursor : undefined, !s.started);
63
+ }, [run]);
64
+ const reset = useCallback(() => {
65
+ setItems([]);
66
+ setCursor(undefined);
67
+ setStarted(false);
68
+ setTotal(undefined);
69
+ setLastPageCount(0);
70
+ state.current = { cursor: undefined, status: 'idle', started: false };
71
+ run(undefined, true);
72
+ }, [run]);
73
+ useEffect(() => {
74
+ if (initialPage === undefined && loadOnMount)
75
+ run(undefined, true);
76
+ return () => request.current?.controller.abort();
77
+ // Mount only: later loads are explicit (loadMore, retry, reset).
78
+ }, []); // eslint-disable-line react-hooks/exhaustive-deps
79
+ const hasMore = status !== 'done';
80
+ return {
81
+ items,
82
+ status,
83
+ error,
84
+ hasMore,
85
+ total,
86
+ lastPageCount,
87
+ loadMore,
88
+ retry: loadMore,
89
+ reset,
90
+ loadMoreProps: {
91
+ hasMore,
92
+ loading: status === 'loading',
93
+ error: status === 'error',
94
+ onLoadMore: loadMore,
95
+ onRetry: loadMore,
96
+ loadedCount: items.length,
97
+ totalCount: total,
98
+ },
99
+ };
100
+ }
101
+ function plural(n, noun) {
102
+ return n === 1 ? noun.one : noun.other;
103
+ }
104
+ const DEFAULT_NOUN = { one: 'item', other: 'items' };
105
+ /**
106
+ * The footer of a cursor-paginated list: a Load more button with loading,
107
+ * error and retry, end-of-list states and polite announcements, plus
108
+ * optional auto-load on scroll. Pair it with `useLoadMore`, or drive it from
109
+ * any data library through its props.
110
+ */
111
+ export const LoadMore = forwardRef(function LoadMore({ hasMore, loading = false, error = false, onLoadMore, onRetry, loadedCount, totalCount, noun = DEFAULT_NOUN, showCount, autoLoad = false, autoLoadMargin = '200px', label = 'Load more', loadingLabel = 'Loading…', errorLabel = 'Couldn’t load more.', retryLabel = 'Retry', endLabel = 'That’s everything', className, ...rest }, ref) {
112
+ const rootRef = useRef(null);
113
+ const buttonRef = useRef(null);
114
+ const endRef = useRef(null);
115
+ const [announcement, setAnnouncement] = useState('');
116
+ const prevCount = useRef(loadedCount);
117
+ const prevError = useRef(error);
118
+ const prevHasMore = useRef(hasMore);
119
+ const buttonHadFocus = useRef(false);
120
+ const setRefs = useCallback((node) => {
121
+ rootRef.current = node;
122
+ if (typeof ref === 'function')
123
+ ref(node);
124
+ else if (ref)
125
+ ref.current = node;
126
+ }, [ref]);
127
+ // Announce what changed: new items, a failure, or the end of the list.
128
+ useEffect(() => {
129
+ const parts = [];
130
+ const before = prevCount.current;
131
+ if (loadedCount !== undefined && before !== undefined && loadedCount > before) {
132
+ const added = loadedCount - before;
133
+ parts.push(`${added} more ${plural(added, noun)} loaded.`);
134
+ }
135
+ if (error && !prevError.current) {
136
+ parts.push(typeof errorLabel === 'string' ? errorLabel : 'Couldn’t load more.');
137
+ }
138
+ if (!hasMore && prevHasMore.current && typeof endLabel === 'string')
139
+ parts.push(endLabel);
140
+ prevCount.current = loadedCount;
141
+ prevError.current = error;
142
+ prevHasMore.current = hasMore;
143
+ if (parts.length)
144
+ setAnnouncement(parts.join(' '));
145
+ }, [loadedCount, error, hasMore, noun, errorLabel, endLabel]);
146
+ // The button disappears at the end; keep keyboard focus on the list footer.
147
+ useEffect(() => {
148
+ if (!hasMore && buttonHadFocus.current) {
149
+ buttonHadFocus.current = false;
150
+ const active = typeof document === 'undefined' ? null : document.activeElement;
151
+ // Only when focus was actually lost with the button, never stealing it from elsewhere.
152
+ if (active === null || active === document.body) {
153
+ (endRef.current ?? rootRef.current)?.focus();
154
+ }
155
+ }
156
+ }, [hasMore]);
157
+ // Auto-load: fire when the footer scrolls into view; the button stays as the fallback.
158
+ useEffect(() => {
159
+ const node = rootRef.current;
160
+ if (!autoLoad || !hasMore || loading || error || !node)
161
+ return;
162
+ if (typeof IntersectionObserver === 'undefined')
163
+ return;
164
+ const observer = new IntersectionObserver((entries) => {
165
+ if (entries.some((e) => e.isIntersecting))
166
+ onLoadMore();
167
+ }, { rootMargin: autoLoadMargin });
168
+ observer.observe(node);
169
+ return () => observer.disconnect();
170
+ }, [autoLoad, hasMore, loading, error, onLoadMore, autoLoadMargin]);
171
+ const state = error ? 'error' : loading ? 'loading' : hasMore ? 'idle' : 'done';
172
+ const countVisible = (showCount ?? loadedCount !== undefined) && loadedCount !== undefined;
173
+ const count = countVisible
174
+ ? totalCount !== undefined
175
+ ? `Showing ${loadedCount} of ${totalCount} ${plural(totalCount, noun)}`
176
+ : `Showing ${loadedCount} ${plural(loadedCount, noun)}`
177
+ : null;
178
+ return (_jsxs("div", { ref: setRefs, ...rest, tabIndex: -1, className: cx('mn-load-more', className), "data-state": state, children: [count ? _jsx("p", { className: "mn-load-more__count", children: count }) : null, error ? _jsx("p", { className: "mn-load-more__error", children: errorLabel }) : null, hasMore ? (_jsx(Button, { ref: buttonRef, size: "sm", loading: loading, onFocus: () => (buttonHadFocus.current = true), onBlur: (event) => {
179
+ // A blur caused by the button unmounting has no related target; keep the flag then.
180
+ if (event.relatedTarget)
181
+ buttonHadFocus.current = false;
182
+ }, onClick: () => (error ? (onRetry ?? onLoadMore)() : onLoadMore()), children: loading ? loadingLabel : error ? retryLabel : label })) : endLabel !== null ? (_jsx("p", { ref: endRef, tabIndex: -1, className: "mn-load-more__end", children: endLabel })) : null, _jsx("span", { role: "status", "aria-live": "polite", "aria-atomic": "true", className: "mn-visually-hidden", children: announcement })] }));
183
+ });
184
+ //# sourceMappingURL=load-more.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-more.js","sourceRoot":"","sources":["../../../../src/components/data-grid/load-more/load-more.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EACL,UAAU,EACV,WAAW,EACX,SAAS,EACT,MAAM,EACN,QAAQ,GAGT,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,EAAE,EAAE,MAAM,yBAAyB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAuDvD;;;;GAIG;AACH,MAAM,UAAU,WAAW,CACzB,OAAiC;IAEjC,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3C,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAM,GAAG,EAAE,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IACxE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAgB,GAAG,EAAE,CAAC,WAAW,EAAE,UAAU,IAAI,SAAS,CAAC,CAAC;IAChG,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC;IAClE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAiB,GAAG,EAAE,CACxD,WAAW,IAAI,CAAC,WAAW,CAAC,UAAU,KAAK,IAAI,IAAI,WAAW,CAAC,UAAU,KAAK,SAAS,CAAC;QACtF,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,MAAM,CACX,CAAC;IACF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAU,SAAS,CAAC,CAAC;IACvD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAqB,WAAW,EAAE,KAAK,CAAC,CAAC;IAC3E,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IAEnF,MAAM,OAAO,GAAG,MAAM,CAAqD,IAAI,CAAC,CAAC;IACjF,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IAClD,KAAK,CAAC,OAAO,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAE5C,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,IAAmB,EAAE,OAAgB,EAAE,EAAE;QAChE,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC;QACpC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC;QACzB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,OAAO,CAAC,OAAO,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC;QACrC,+EAA+E;QAC/E,KAAK,CAAC,OAAO,GAAG,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QACxD,SAAS,CAAC,SAAS,CAAC,CAAC;QACrB,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpB,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CACxD,CAAC,IAAI,EAAE,EAAE;YACP,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE;gBAAE,OAAO;YACvC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;YACvB,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACtE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACpC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,CAAC;YAC1C,SAAS,CAAC,IAAI,CAAC,CAAC;YAChB,UAAU,CAAC,IAAI,CAAC,CAAC;YACjB,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAClD,CAAC,EACD,CAAC,GAAY,EAAE,EAAE;YACf,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;gBAAE,OAAO;YACpE,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;YACvB,QAAQ,CAAC,GAAG,CAAC,CAAC;YACd,SAAS,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC,CACF,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;QAChC,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QACxB,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM;YAAE,OAAO;QAC1D,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,SAAS,CAAC,SAAS,CAAC,CAAC;QACrB,UAAU,CAAC,KAAK,CAAC,CAAC;QAClB,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpB,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACpB,KAAK,CAAC,OAAO,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACtE,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW;YAAE,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACnE,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC;QACjD,iEAAiE;IACnE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kDAAkD;IAE1D,MAAM,OAAO,GAAG,MAAM,KAAK,MAAM,CAAC;IAClC,OAAO;QACL,KAAK;QACL,MAAM;QACN,KAAK;QACL,OAAO;QACP,KAAK;QACL,aAAa;QACb,QAAQ;QACR,KAAK,EAAE,QAAQ;QACf,KAAK;QACL,aAAa,EAAE;YACb,OAAO;YACP,OAAO,EAAE,MAAM,KAAK,SAAS;YAC7B,KAAK,EAAE,MAAM,KAAK,OAAO;YACzB,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE,QAAQ;YACjB,WAAW,EAAE,KAAK,CAAC,MAAM;YACzB,UAAU,EAAE,KAAK;SAClB;KACF,CAAC;AACJ,CAAC;AA6CD,SAAS,MAAM,CAAC,CAAS,EAAE,IAAoC;IAC7D,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;AACzC,CAAC;AAED,MAAM,YAAY,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAErD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAgC,SAAS,QAAQ,CACjF,EACE,OAAO,EACP,OAAO,GAAG,KAAK,EACf,KAAK,GAAG,KAAK,EACb,UAAU,EACV,OAAO,EACP,WAAW,EACX,UAAU,EACV,IAAI,GAAG,YAAY,EACnB,SAAS,EACT,QAAQ,GAAG,KAAK,EAChB,cAAc,GAAG,OAAO,EACxB,KAAK,GAAG,WAAW,EACnB,YAAY,GAAG,UAAU,EACzB,UAAU,GAAG,qBAAqB,EAClC,UAAU,GAAG,OAAO,EACpB,QAAQ,GAAG,mBAAmB,EAC9B,SAAS,EACT,GAAG,IAAI,EACR,EACD,GAAG;IAEH,MAAM,OAAO,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,MAAM,CAA2B,IAAI,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,MAAM,CAA8B,IAAI,CAAC,CAAC;IACzD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IACtC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IACpC,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAErC,MAAM,OAAO,GAAG,WAAW,CACzB,CAAC,IAA2B,EAAE,EAAE;QAC9B,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,IAAI,OAAO,GAAG,KAAK,UAAU;YAAE,GAAG,CAAC,IAAI,CAAC,CAAC;aACpC,IAAI,GAAG;YAAE,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;IACnC,CAAC,EACD,CAAC,GAAG,CAAC,CACN,CAAC;IAEF,uEAAuE;IACvE,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,IAAI,WAAW,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,IAAI,WAAW,GAAG,MAAM,EAAE,CAAC;YAC9E,MAAM,KAAK,GAAG,WAAW,GAAG,MAAM,CAAC;YACnC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;QAClF,CAAC;QACD,IAAI,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,IAAI,OAAO,QAAQ,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1F,SAAS,CAAC,OAAO,GAAG,WAAW,CAAC;QAChC,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;QAC1B,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC;QAC9B,IAAI,KAAK,CAAC,MAAM;YAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE9D,4EAA4E;IAC5E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;YACvC,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;YAC/B,MAAM,MAAM,GAAG,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;YAC/E,uFAAuF;YACvF,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAChD,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,uFAAuF;IACvF,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,IAAI,OAAO,IAAI,KAAK,IAAI,CAAC,IAAI;YAAE,OAAO;QAC/D,IAAI,OAAO,oBAAoB,KAAK,WAAW;YAAE,OAAO;QACxD,MAAM,QAAQ,GAAG,IAAI,oBAAoB,CACvC,CAAC,OAAO,EAAE,EAAE;YACV,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;gBAAE,UAAU,EAAE,CAAC;QAC1D,CAAC,EACD,EAAE,UAAU,EAAE,cAAc,EAAE,CAC/B,CAAC;QACF,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;IAEpE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IAChF,MAAM,YAAY,GAAG,CAAC,SAAS,IAAI,WAAW,KAAK,SAAS,CAAC,IAAI,WAAW,KAAK,SAAS,CAAC;IAC3F,MAAM,KAAK,GAAG,YAAY;QACxB,CAAC,CAAC,UAAU,KAAK,SAAS;YACxB,CAAC,CAAC,WAAW,WAAW,OAAO,UAAU,IAAI,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE;YACvE,CAAC,CAAC,WAAW,WAAW,IAAI,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE;QACzD,CAAC,CAAC,IAAI,CAAC;IAET,OAAO,CACL,eACE,GAAG,EAAE,OAAO,KACR,IAAI,EACR,QAAQ,EAAE,CAAC,CAAC,EACZ,SAAS,EAAE,EAAE,CAAC,cAAc,EAAE,SAAS,CAAC,gBAC5B,KAAK,aAEhB,KAAK,CAAC,CAAC,CAAC,YAAG,SAAS,EAAC,qBAAqB,YAAE,KAAK,GAAK,CAAC,CAAC,CAAC,IAAI,EAC7D,KAAK,CAAC,CAAC,CAAC,YAAG,SAAS,EAAC,qBAAqB,YAAE,UAAU,GAAK,CAAC,CAAC,CAAC,IAAI,EAClE,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,MAAM,IACL,GAAG,EAAE,SAAS,EACd,IAAI,EAAC,IAAI,EACT,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC,EAC9C,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;oBAChB,oFAAoF;oBACpF,IAAI,KAAK,CAAC,aAAa;wBAAE,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;gBAC1D,CAAC,EACD,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,YAEhE,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,GAC7C,CACV,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,CACtB,YAAG,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,SAAS,EAAC,mBAAmB,YACxD,QAAQ,GACP,CACL,CAAC,CAAC,CAAC,IAAI,EACR,eAAM,IAAI,EAAC,QAAQ,eAAW,QAAQ,iBAAa,MAAM,EAAC,SAAS,EAAC,oBAAoB,YACrF,YAAY,GACR,IACH,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { HTMLAttributes, ReactNode } from 'react';
2
+ export interface AlertProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
3
+ tone?: 'neutral' | 'info' | 'success' | 'warning' | 'danger';
4
+ title?: ReactNode;
5
+ /** Replaces the default tone icon. Pass `null` for none. */
6
+ icon?: ReactNode;
7
+ /** Actions on the trailing edge, e.g. a Button or a dismiss IconButton. */
8
+ actions?: ReactNode;
9
+ /**
10
+ * Set when the alert appears in response to something the user did, so it
11
+ * is announced. `assertive` only for errors that block progress.
12
+ */
13
+ live?: 'polite' | 'assertive';
14
+ }
15
+ /** Inline message about the state of a page or section. */
16
+ export declare function Alert({ tone, title, icon, actions, live, className, children, ...rest }: AlertProps): import("react").JSX.Element;
17
+ //# sourceMappingURL=alert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert.d.ts","sourceRoot":"","sources":["../../../../src/components/feedback/alert/alert.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvD,MAAM,WAAW,UAAW,SAAQ,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAC/E,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC7D,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,2EAA2E;IAC3E,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC;CAC/B;AAUD,2DAA2D;AAC3D,wBAAgB,KAAK,CAAC,EACpB,IAAa,EACb,KAAK,EACL,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,UAAU,+BAiBZ"}
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cx } from '../../../internal/cx.js';
3
+ import { InfoGlyph, SuccessGlyph, WarningGlyph } from '../../../internal/icons.js';
4
+ const defaultIcon = {
5
+ neutral: _jsx(InfoGlyph, {}),
6
+ info: _jsx(InfoGlyph, {}),
7
+ success: _jsx(SuccessGlyph, {}),
8
+ warning: _jsx(WarningGlyph, {}),
9
+ danger: _jsx(WarningGlyph, {}),
10
+ };
11
+ /** Inline message about the state of a page or section. */
12
+ export function Alert({ tone = 'info', title, icon, actions, live, className, children, ...rest }) {
13
+ const role = live === 'assertive' ? 'alert' : live === 'polite' ? 'status' : undefined;
14
+ const glyph = icon === undefined ? defaultIcon[tone] : icon;
15
+ return (_jsxs("div", { ...rest, role: rest.role ?? role, className: cx('mn-alert', className), "data-tone": tone, children: [glyph ? (_jsx("span", { className: "mn-alert__icon", "aria-hidden": true, children: glyph })) : null, _jsxs("div", { className: "mn-alert__body", children: [title ? _jsx("p", { className: "mn-alert__title", children: title }) : null, children ? _jsx("div", { className: "mn-alert__content", children: children }) : null] }), actions ? _jsx("div", { className: "mn-alert__actions", children: actions }) : null] }));
16
+ }
17
+ //# sourceMappingURL=alert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert.js","sourceRoot":"","sources":["../../../../src/components/feedback/alert/alert.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,yBAAyB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAgBnF,MAAM,WAAW,GAAG;IAClB,OAAO,EAAE,KAAC,SAAS,KAAG;IACtB,IAAI,EAAE,KAAC,SAAS,KAAG;IACnB,OAAO,EAAE,KAAC,YAAY,KAAG;IACzB,OAAO,EAAE,KAAC,YAAY,KAAG;IACzB,MAAM,EAAE,KAAC,YAAY,KAAG;CAChB,CAAC;AAEX,2DAA2D;AAC3D,MAAM,UAAU,KAAK,CAAC,EACpB,IAAI,GAAG,MAAM,EACb,KAAK,EACL,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACI;IACX,MAAM,IAAI,GAAG,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACvF,MAAM,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5D,OAAO,CACL,kBAAS,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC,eAAa,IAAI,aAC1F,KAAK,CAAC,CAAC,CAAC,CACP,eAAM,SAAS,EAAC,gBAAgB,iCAC7B,KAAK,GACD,CACR,CAAC,CAAC,CAAC,IAAI,EACR,eAAK,SAAS,EAAC,gBAAgB,aAC5B,KAAK,CAAC,CAAC,CAAC,YAAG,SAAS,EAAC,iBAAiB,YAAE,KAAK,GAAK,CAAC,CAAC,CAAC,IAAI,EACzD,QAAQ,CAAC,CAAC,CAAC,cAAK,SAAS,EAAC,mBAAmB,YAAE,QAAQ,GAAO,CAAC,CAAC,CAAC,IAAI,IAClE,EACL,OAAO,CAAC,CAAC,CAAC,cAAK,SAAS,EAAC,mBAAmB,YAAE,OAAO,GAAO,CAAC,CAAC,CAAC,IAAI,IAChE,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './alert.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/feedback/alert/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './alert.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/feedback/alert/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -0,0 +1,66 @@
1
+ import { type HTMLAttributes, type ReactNode } from 'react';
2
+ export type CalloutBannerTone = 'neutral' | 'info' | 'accent' | 'success' | 'warning' | 'danger';
3
+ export interface CalloutBannerProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> {
4
+ /**
5
+ * Colour and default icon. `accent` uses the product accent, for trials,
6
+ * upgrades and announcements. Default `info`.
7
+ */
8
+ tone?: CalloutBannerTone;
9
+ /**
10
+ * `page`: a full-width strip across the top of the app or page (trial,
11
+ * maintenance, billing), with no rounded corners. `section`: a rounded
12
+ * callout inside the content. Default `section`.
13
+ */
14
+ placement?: 'page' | 'section';
15
+ /**
16
+ * `scope`: a compact, neutral one-line notice that the view is narrowed
17
+ * ("Showing tickets in Support"), usually with an action that clears it.
18
+ * Default `callout`.
19
+ */
20
+ variant?: 'callout' | 'scope';
21
+ /** Bold first line. */
22
+ title?: ReactNode;
23
+ /** Replaces the tone icon. Pass `null` for none. */
24
+ icon?: ReactNode;
25
+ /** Buttons or links, for example "Upgrade" or "Retry". */
26
+ actions?: ReactNode;
27
+ /**
28
+ * `end` puts actions on the trailing edge (below the text on narrow
29
+ * screens); `inline` puts them right after the text, like a sentence that
30
+ * ends in a link. Default `end`.
31
+ */
32
+ actionPlacement?: 'end' | 'inline';
33
+ /**
34
+ * Makes the banner a landmark, so screen-reader users can jump to it:
35
+ * `region` (`<section>`) or `complementary` (`<aside>`). Named by `title`,
36
+ * or by `aria-label` when there is no title. Default `none` (`<div>`).
37
+ */
38
+ landmark?: 'none' | 'region' | 'complementary';
39
+ /**
40
+ * Announce the banner's text when it appears: `polite` (role="status") or
41
+ * `assertive` (role="alert", only for errors that block progress). Leave
42
+ * unset for a banner that is present when the page loads.
43
+ */
44
+ live?: 'polite' | 'assertive';
45
+ /** Shows a close button. Implied by `onDismiss`. */
46
+ dismissible?: boolean;
47
+ /**
48
+ * Called when the user dismisses the banner (and shows the close button).
49
+ * Store "don't show again" here: Monarch keeps nothing.
50
+ */
51
+ onDismiss?: () => void;
52
+ /** Controlled visibility. Leave unset to let the banner hide itself on dismiss. */
53
+ open?: boolean;
54
+ /** Initial visibility when uncontrolled. Default true. */
55
+ defaultOpen?: boolean;
56
+ /** Accessible name of the close button. Default "Dismiss". */
57
+ dismissLabel?: string;
58
+ }
59
+ /**
60
+ * A page- or section-level message about the account, the product or the
61
+ * current view: trials, maintenance windows, billing problems, a failed sync,
62
+ * a narrowed scope. Optionally dismissible, with an action slot and a
63
+ * landmark role.
64
+ */
65
+ export declare const CalloutBanner: import("react").ForwardRefExoticComponent<CalloutBannerProps & import("react").RefAttributes<HTMLElement>>;
66
+ //# sourceMappingURL=callout-banner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callout-banner.d.ts","sourceRoot":"","sources":["../../../../src/components/feedback/callout-banner/callout-banner.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAqB,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAY/E,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEjG,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IACpF;;;OAGG;IACH,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B;;;;OAIG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAC9B,uBAAuB;IACvB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,oDAAoD;IACpD,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB;;;;OAIG;IACH,eAAe,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IACnC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,eAAe,CAAC;IAC/C;;;;OAIG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC9B,oDAAoD;IACpD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,mFAAmF;IACnF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,0DAA0D;IAC1D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,8DAA8D;IAC9D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAWD;;;;;GAKG;AACH,eAAO,MAAM,aAAa,4GA0ExB,CAAC"}