@stackone/malachite 2.21.0 → 2.22.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 (778) hide show
  1. package/dist/ShadowRootWrapper.js +83 -0
  2. package/dist/ShadowRootWrapper.js.map +1 -0
  3. package/dist/assets/icons/account.svg.js +6 -0
  4. package/dist/assets/icons/account.svg.js.map +1 -0
  5. package/dist/assets/icons/accounts.svg.js +6 -0
  6. package/dist/assets/icons/accounts.svg.js.map +1 -0
  7. package/dist/assets/icons/add.svg.js +6 -0
  8. package/dist/assets/icons/add.svg.js.map +1 -0
  9. package/dist/assets/icons/advanced_logs.svg.js +6 -0
  10. package/dist/assets/icons/advanced_logs.svg.js.map +1 -0
  11. package/dist/assets/icons/api_keys.svg.js +6 -0
  12. package/dist/assets/icons/api_keys.svg.js.map +1 -0
  13. package/dist/assets/icons/archive.svg.js +6 -0
  14. package/dist/assets/icons/archive.svg.js.map +1 -0
  15. package/dist/assets/icons/arrow_left.svg.js +6 -0
  16. package/dist/assets/icons/arrow_left.svg.js.map +1 -0
  17. package/dist/assets/icons/arrow_up.svg.js +6 -0
  18. package/dist/assets/icons/arrow_up.svg.js.map +1 -0
  19. package/dist/assets/icons/arrow_up_right.svg.js +6 -0
  20. package/dist/assets/icons/arrow_up_right.svg.js.map +1 -0
  21. package/dist/assets/icons/authentication.svg.js +6 -0
  22. package/dist/assets/icons/authentication.svg.js.map +1 -0
  23. package/dist/assets/icons/bell.svg.js +6 -0
  24. package/dist/assets/icons/bell.svg.js.map +1 -0
  25. package/dist/assets/icons/bell_slash.svg.js +6 -0
  26. package/dist/assets/icons/bell_slash.svg.js.map +1 -0
  27. package/dist/assets/icons/bi_directional_arrows.svg.js +6 -0
  28. package/dist/assets/icons/bi_directional_arrows.svg.js.map +1 -0
  29. package/dist/assets/icons/card.svg.js +6 -0
  30. package/dist/assets/icons/card.svg.js.map +1 -0
  31. package/dist/assets/icons/caret_down.svg.js +6 -0
  32. package/dist/assets/icons/caret_down.svg.js.map +1 -0
  33. package/dist/assets/icons/caret_left.svg.js +6 -0
  34. package/dist/assets/icons/caret_left.svg.js.map +1 -0
  35. package/dist/assets/icons/caret_right.svg.js +6 -0
  36. package/dist/assets/icons/caret_right.svg.js.map +1 -0
  37. package/dist/assets/icons/caret_up.svg.js +6 -0
  38. package/dist/assets/icons/caret_up.svg.js.map +1 -0
  39. package/dist/assets/icons/change_password.svg.js +6 -0
  40. package/dist/assets/icons/change_password.svg.js.map +1 -0
  41. package/dist/assets/icons/check.svg.js +6 -0
  42. package/dist/assets/icons/check.svg.js.map +1 -0
  43. package/dist/assets/icons/check_circle_filled.svg.js +6 -0
  44. package/dist/assets/icons/check_circle_filled.svg.js.map +1 -0
  45. package/dist/assets/icons/checkmark.svg.js +6 -0
  46. package/dist/assets/icons/checkmark.svg.js.map +1 -0
  47. package/dist/assets/icons/clear.svg.js +6 -0
  48. package/dist/assets/icons/clear.svg.js.map +1 -0
  49. package/dist/assets/icons/close.svg.js +6 -0
  50. package/dist/assets/icons/close.svg.js.map +1 -0
  51. package/dist/assets/icons/code.svg.js +6 -0
  52. package/dist/assets/icons/code.svg.js.map +1 -0
  53. package/dist/assets/icons/command_key.svg.js +6 -0
  54. package/dist/assets/icons/command_key.svg.js.map +1 -0
  55. package/dist/assets/icons/copy.svg.js +6 -0
  56. package/dist/assets/icons/copy.svg.js.map +1 -0
  57. package/dist/assets/icons/csv.svg.js +6 -0
  58. package/dist/assets/icons/csv.svg.js.map +1 -0
  59. package/dist/assets/icons/custom_field.svg.js +6 -0
  60. package/dist/assets/icons/custom_field.svg.js.map +1 -0
  61. package/dist/assets/icons/dashboard.svg.js +6 -0
  62. package/dist/assets/icons/dashboard.svg.js.map +1 -0
  63. package/dist/assets/icons/date.svg.js +6 -0
  64. package/dist/assets/icons/date.svg.js.map +1 -0
  65. package/dist/assets/icons/disable.svg.js +6 -0
  66. package/dist/assets/icons/disable.svg.js.map +1 -0
  67. package/dist/assets/icons/disabled.svg.js +6 -0
  68. package/dist/assets/icons/disabled.svg.js.map +1 -0
  69. package/dist/assets/icons/dismiss.svg.js +6 -0
  70. package/dist/assets/icons/dismiss.svg.js.map +1 -0
  71. package/dist/assets/icons/doc.svg.js +6 -0
  72. package/dist/assets/icons/doc.svg.js.map +1 -0
  73. package/dist/assets/icons/double_check.svg.js +6 -0
  74. package/dist/assets/icons/double_check.svg.js.map +1 -0
  75. package/dist/assets/icons/download.svg.js +6 -0
  76. package/dist/assets/icons/download.svg.js.map +1 -0
  77. package/dist/assets/icons/edit.svg.js +6 -0
  78. package/dist/assets/icons/edit.svg.js.map +1 -0
  79. package/dist/assets/icons/enable.svg.js +6 -0
  80. package/dist/assets/icons/enable.svg.js.map +1 -0
  81. package/dist/assets/icons/enum.svg.js +6 -0
  82. package/dist/assets/icons/enum.svg.js.map +1 -0
  83. package/dist/assets/icons/error_circle_filled.svg.js +6 -0
  84. package/dist/assets/icons/error_circle_filled.svg.js.map +1 -0
  85. package/dist/assets/icons/expand.svg.js +6 -0
  86. package/dist/assets/icons/expand.svg.js.map +1 -0
  87. package/dist/assets/icons/eye-closed.svg.js +6 -0
  88. package/dist/assets/icons/eye-closed.svg.js.map +1 -0
  89. package/dist/assets/icons/eye.svg.js +6 -0
  90. package/dist/assets/icons/eye.svg.js.map +1 -0
  91. package/dist/assets/icons/field_mapping.svg.js +6 -0
  92. package/dist/assets/icons/field_mapping.svg.js.map +1 -0
  93. package/dist/assets/icons/filled_caret_down.svg.js +6 -0
  94. package/dist/assets/icons/filled_caret_down.svg.js.map +1 -0
  95. package/dist/assets/icons/filled_caret_right.svg.js +6 -0
  96. package/dist/assets/icons/filled_caret_right.svg.js.map +1 -0
  97. package/dist/assets/icons/filter.svg.js +6 -0
  98. package/dist/assets/icons/filter.svg.js.map +1 -0
  99. package/dist/assets/icons/forbidden.svg.js +6 -0
  100. package/dist/assets/icons/forbidden.svg.js.map +1 -0
  101. package/dist/assets/icons/forward_arrow.svg.js +6 -0
  102. package/dist/assets/icons/forward_arrow.svg.js.map +1 -0
  103. package/dist/assets/icons/globe.svg.js +6 -0
  104. package/dist/assets/icons/globe.svg.js.map +1 -0
  105. package/dist/assets/icons/inbox.svg.js +6 -0
  106. package/dist/assets/icons/inbox.svg.js.map +1 -0
  107. package/dist/assets/icons/info.svg.js +6 -0
  108. package/dist/assets/icons/info.svg.js.map +1 -0
  109. package/dist/assets/icons/info_circle_filled.svg.js +6 -0
  110. package/dist/assets/icons/info_circle_filled.svg.js.map +1 -0
  111. package/dist/assets/icons/info_filled.svg.js +6 -0
  112. package/dist/assets/icons/info_filled.svg.js.map +1 -0
  113. package/dist/assets/icons/integrations.svg.js +6 -0
  114. package/dist/assets/icons/integrations.svg.js.map +1 -0
  115. package/dist/assets/icons/key.svg.js +6 -0
  116. package/dist/assets/icons/key.svg.js.map +1 -0
  117. package/dist/assets/icons/library.svg.js +6 -0
  118. package/dist/assets/icons/library.svg.js.map +1 -0
  119. package/dist/assets/icons/logs.svg.js +6 -0
  120. package/dist/assets/icons/logs.svg.js.map +1 -0
  121. package/dist/assets/icons/magic_wand.svg.js +6 -0
  122. package/dist/assets/icons/magic_wand.svg.js.map +1 -0
  123. package/dist/assets/icons/manage_team.svg.js +6 -0
  124. package/dist/assets/icons/manage_team.svg.js.map +1 -0
  125. package/dist/assets/icons/manual_native_webhook.svg.js +6 -0
  126. package/dist/assets/icons/manual_native_webhook.svg.js.map +1 -0
  127. package/dist/assets/icons/mark_read.svg.js +6 -0
  128. package/dist/assets/icons/mark_read.svg.js.map +1 -0
  129. package/dist/assets/icons/mark_unread.svg.js +6 -0
  130. package/dist/assets/icons/mark_unread.svg.js.map +1 -0
  131. package/dist/assets/icons/members.svg.js +6 -0
  132. package/dist/assets/icons/members.svg.js.map +1 -0
  133. package/dist/assets/icons/modal.svg.js +6 -0
  134. package/dist/assets/icons/modal.svg.js.map +1 -0
  135. package/dist/assets/icons/more_horizontal.svg.js +6 -0
  136. package/dist/assets/icons/more_horizontal.svg.js.map +1 -0
  137. package/dist/assets/icons/more_vertical.svg.js +6 -0
  138. package/dist/assets/icons/more_vertical.svg.js.map +1 -0
  139. package/dist/assets/icons/navbar_collapse.svg.js +6 -0
  140. package/dist/assets/icons/navbar_collapse.svg.js.map +1 -0
  141. package/dist/assets/icons/navbar_expand.svg.js +6 -0
  142. package/dist/assets/icons/navbar_expand.svg.js.map +1 -0
  143. package/dist/assets/icons/not_found.svg.js +6 -0
  144. package/dist/assets/icons/not_found.svg.js.map +1 -0
  145. package/dist/assets/icons/organization.svg.js +6 -0
  146. package/dist/assets/icons/organization.svg.js.map +1 -0
  147. package/dist/assets/icons/pin.svg.js +6 -0
  148. package/dist/assets/icons/pin.svg.js.map +1 -0
  149. package/dist/assets/icons/plus.svg.js +6 -0
  150. package/dist/assets/icons/plus.svg.js.map +1 -0
  151. package/dist/assets/icons/preview.svg.js +6 -0
  152. package/dist/assets/icons/preview.svg.js.map +1 -0
  153. package/dist/assets/icons/programmatic_native_webhook.svg.js +6 -0
  154. package/dist/assets/icons/programmatic_native_webhook.svg.js.map +1 -0
  155. package/dist/assets/icons/pulse.svg.js +6 -0
  156. package/dist/assets/icons/pulse.svg.js.map +1 -0
  157. package/dist/assets/icons/refresh.svg.js +6 -0
  158. package/dist/assets/icons/refresh.svg.js.map +1 -0
  159. package/dist/assets/icons/reject.svg.js +6 -0
  160. package/dist/assets/icons/reject.svg.js.map +1 -0
  161. package/dist/assets/icons/reload.svg.js +6 -0
  162. package/dist/assets/icons/reload.svg.js.map +1 -0
  163. package/dist/assets/icons/reply.svg.js +6 -0
  164. package/dist/assets/icons/reply.svg.js.map +1 -0
  165. package/dist/assets/icons/required_field_indicator.svg.js +6 -0
  166. package/dist/assets/icons/required_field_indicator.svg.js.map +1 -0
  167. package/dist/assets/icons/search.svg.js +6 -0
  168. package/dist/assets/icons/search.svg.js.map +1 -0
  169. package/dist/assets/icons/security.svg.js +6 -0
  170. package/dist/assets/icons/security.svg.js.map +1 -0
  171. package/dist/assets/icons/send.svg.js +6 -0
  172. package/dist/assets/icons/send.svg.js.map +1 -0
  173. package/dist/assets/icons/settings.svg.js +6 -0
  174. package/dist/assets/icons/settings.svg.js.map +1 -0
  175. package/dist/assets/icons/sign_out.svg.js +6 -0
  176. package/dist/assets/icons/sign_out.svg.js.map +1 -0
  177. package/dist/assets/icons/slider.svg.js +6 -0
  178. package/dist/assets/icons/slider.svg.js.map +1 -0
  179. package/dist/assets/icons/sort.svg.js +6 -0
  180. package/dist/assets/icons/sort.svg.js.map +1 -0
  181. package/dist/assets/icons/source.svg.js +6 -0
  182. package/dist/assets/icons/source.svg.js.map +1 -0
  183. package/dist/assets/icons/sparkle.svg.js +6 -0
  184. package/dist/assets/icons/sparkle.svg.js.map +1 -0
  185. package/dist/assets/icons/star.svg.js +6 -0
  186. package/dist/assets/icons/star.svg.js.map +1 -0
  187. package/dist/assets/icons/step_current.svg.js +6 -0
  188. package/dist/assets/icons/step_current.svg.js.map +1 -0
  189. package/dist/assets/icons/step_upcoming.svg.js +6 -0
  190. package/dist/assets/icons/step_upcoming.svg.js.map +1 -0
  191. package/dist/assets/icons/synthetic_webhook.svg.js +6 -0
  192. package/dist/assets/icons/synthetic_webhook.svg.js.map +1 -0
  193. package/dist/assets/icons/thumbs_down.svg.js +6 -0
  194. package/dist/assets/icons/thumbs_down.svg.js.map +1 -0
  195. package/dist/assets/icons/thumbs_up.svg.js +6 -0
  196. package/dist/assets/icons/thumbs_up.svg.js.map +1 -0
  197. package/dist/assets/icons/trash.svg.js +6 -0
  198. package/dist/assets/icons/trash.svg.js.map +1 -0
  199. package/dist/assets/icons/triangle_down.svg.js +6 -0
  200. package/dist/assets/icons/triangle_down.svg.js.map +1 -0
  201. package/dist/assets/icons/triangle_right.svg.js +6 -0
  202. package/dist/assets/icons/triangle_right.svg.js.map +1 -0
  203. package/dist/assets/icons/unarchive.svg.js +6 -0
  204. package/dist/assets/icons/unarchive.svg.js.map +1 -0
  205. package/dist/assets/icons/upload.svg.js +6 -0
  206. package/dist/assets/icons/upload.svg.js.map +1 -0
  207. package/dist/assets/icons/warning_circle_filled.svg.js +6 -0
  208. package/dist/assets/icons/warning_circle_filled.svg.js.map +1 -0
  209. package/dist/assets/icons/warning_triangle.svg.js +6 -0
  210. package/dist/assets/icons/warning_triangle.svg.js.map +1 -0
  211. package/dist/assets/icons/webhook-events.svg.js +6 -0
  212. package/dist/assets/icons/webhook-events.svg.js.map +1 -0
  213. package/dist/assets/icons/webhook.svg.js +6 -0
  214. package/dist/assets/icons/webhook.svg.js.map +1 -0
  215. package/dist/assets/icons/webhook_signing_secret.svg.js +6 -0
  216. package/dist/assets/icons/webhook_signing_secret.svg.js.map +1 -0
  217. package/dist/assets/logo-stackone-desaturated.png.js +5 -0
  218. package/dist/assets/logo-stackone-desaturated.png.js.map +1 -0
  219. package/dist/components/Accordion.js +105 -0
  220. package/dist/components/Accordion.js.map +1 -0
  221. package/dist/components/ActionBar.js +66 -0
  222. package/dist/components/ActionBar.js.map +1 -0
  223. package/dist/components/ActionMenu.js +174 -0
  224. package/dist/components/ActionMenu.js.map +1 -0
  225. package/dist/components/Alert.js +136 -0
  226. package/dist/components/Alert.js.map +1 -0
  227. package/dist/components/AppLogo.js +43 -0
  228. package/dist/components/AppLogo.js.map +1 -0
  229. package/dist/components/Avatar.js +61 -0
  230. package/dist/components/Avatar.js.map +1 -0
  231. package/dist/components/BaseFormComponent.js +91 -0
  232. package/dist/components/BaseFormComponent.js.map +1 -0
  233. package/dist/components/Breadcrumbs.js +106 -0
  234. package/dist/components/Breadcrumbs.js.map +1 -0
  235. package/dist/components/Button.js +227 -0
  236. package/dist/components/Button.js.map +1 -0
  237. package/dist/components/ButtonList.js +40 -0
  238. package/dist/components/ButtonList.js.map +1 -0
  239. package/dist/components/Card.js +109 -0
  240. package/dist/components/Card.js.map +1 -0
  241. package/dist/components/CardStrip.js +454 -0
  242. package/dist/components/CardStrip.js.map +1 -0
  243. package/dist/components/ChangeReview/ChangeReviewItem.js +129 -0
  244. package/dist/components/ChangeReview/ChangeReviewItem.js.map +1 -0
  245. package/dist/components/ChangeReview/ChangeReviewJump.js +27 -0
  246. package/dist/components/ChangeReview/ChangeReviewJump.js.map +1 -0
  247. package/dist/components/ChangeReview/ChangeReviewRemoved.js +37 -0
  248. package/dist/components/ChangeReview/ChangeReviewRemoved.js.map +1 -0
  249. package/dist/components/ChangeReview/ChangeReviewSummary.js +56 -0
  250. package/dist/components/ChangeReview/ChangeReviewSummary.js.map +1 -0
  251. package/dist/components/ChangeReview/index.js +15 -0
  252. package/dist/components/ChangeReview/index.js.map +1 -0
  253. package/dist/components/Chat/ChatComposer.js +100 -0
  254. package/dist/components/Chat/ChatComposer.js.map +1 -0
  255. package/dist/components/Chat/ChatComposerChip.js +28 -0
  256. package/dist/components/Chat/ChatComposerChip.js.map +1 -0
  257. package/dist/components/Chat/ChatContext.js +55 -0
  258. package/dist/components/Chat/ChatContext.js.map +1 -0
  259. package/dist/components/Chat/ChatContextMeter.js +30 -0
  260. package/dist/components/Chat/ChatContextMeter.js.map +1 -0
  261. package/dist/components/Chat/ChatHeader.js +44 -0
  262. package/dist/components/Chat/ChatHeader.js.map +1 -0
  263. package/dist/components/Chat/ChatMessage.js +127 -0
  264. package/dist/components/Chat/ChatMessage.js.map +1 -0
  265. package/dist/components/Chat/ChatModelPicker.js +207 -0
  266. package/dist/components/Chat/ChatModelPicker.js.map +1 -0
  267. package/dist/components/Chat/ChatRoot.js +6 -0
  268. package/dist/components/Chat/ChatRoot.js.map +1 -0
  269. package/dist/components/Chat/ChatSuggestion.js +22 -0
  270. package/dist/components/Chat/ChatSuggestion.js.map +1 -0
  271. package/dist/components/Chat/ChatThinking.js +20 -0
  272. package/dist/components/Chat/ChatThinking.js.map +1 -0
  273. package/dist/components/Chat/ChatThread.js +68 -0
  274. package/dist/components/Chat/ChatThread.js.map +1 -0
  275. package/dist/components/Chat/ChatToolCall.js +59 -0
  276. package/dist/components/Chat/ChatToolCall.js.map +1 -0
  277. package/dist/components/Chat/index.js +29 -0
  278. package/dist/components/Chat/index.js.map +1 -0
  279. package/dist/components/Chat/stickToBottom.js +29 -0
  280. package/dist/components/Chat/stickToBottom.js.map +1 -0
  281. package/dist/components/Chat/tokenText.js +6 -0
  282. package/dist/components/Chat/tokenText.js.map +1 -0
  283. package/dist/components/Checkbox.js +79 -0
  284. package/dist/components/Checkbox.js.map +1 -0
  285. package/dist/components/ClampText.js +30 -0
  286. package/dist/components/ClampText.js.map +1 -0
  287. package/dist/components/CodeBlock.js +223 -0
  288. package/dist/components/CodeBlock.js.map +1 -0
  289. package/dist/components/CodeBlockHighlighter.js +103 -0
  290. package/dist/components/CodeBlockHighlighter.js.map +1 -0
  291. package/dist/components/CollapsibleSection.js +40 -0
  292. package/dist/components/CollapsibleSection.js.map +1 -0
  293. package/dist/components/Confetti.js +56 -0
  294. package/dist/components/Confetti.js.map +1 -0
  295. package/dist/components/ConfirmationDialog.js +234 -0
  296. package/dist/components/ConfirmationDialog.js.map +1 -0
  297. package/dist/components/ConnectionHeader.js +47 -0
  298. package/dist/components/ConnectionHeader.js.map +1 -0
  299. package/dist/components/CustomIcons/AccountIcon.js +28 -0
  300. package/dist/components/CustomIcons/AccountIcon.js.map +1 -0
  301. package/dist/components/CustomIcons/AccountsIcon.js +28 -0
  302. package/dist/components/CustomIcons/AccountsIcon.js.map +1 -0
  303. package/dist/components/CustomIcons/AddIcon.js +28 -0
  304. package/dist/components/CustomIcons/AddIcon.js.map +1 -0
  305. package/dist/components/CustomIcons/AdvancedLogsIcon.js +21 -0
  306. package/dist/components/CustomIcons/AdvancedLogsIcon.js.map +1 -0
  307. package/dist/components/CustomIcons/ApiKeysIcon.js +16 -0
  308. package/dist/components/CustomIcons/ApiKeysIcon.js.map +1 -0
  309. package/dist/components/CustomIcons/ArchiveIcon.js +16 -0
  310. package/dist/components/CustomIcons/ArchiveIcon.js.map +1 -0
  311. package/dist/components/CustomIcons/ArrowLeftIcon.js +16 -0
  312. package/dist/components/CustomIcons/ArrowLeftIcon.js.map +1 -0
  313. package/dist/components/CustomIcons/ArrowUpIcon.js +28 -0
  314. package/dist/components/CustomIcons/ArrowUpIcon.js.map +1 -0
  315. package/dist/components/CustomIcons/ArrowUpRightIcon.js +20 -0
  316. package/dist/components/CustomIcons/ArrowUpRightIcon.js.map +1 -0
  317. package/dist/components/CustomIcons/AuthenticationIcon.js +28 -0
  318. package/dist/components/CustomIcons/AuthenticationIcon.js.map +1 -0
  319. package/dist/components/CustomIcons/BellIcon.js +16 -0
  320. package/dist/components/CustomIcons/BellIcon.js.map +1 -0
  321. package/dist/components/CustomIcons/BellSlashIcon.js +16 -0
  322. package/dist/components/CustomIcons/BellSlashIcon.js.map +1 -0
  323. package/dist/components/CustomIcons/BiDirectionalArrowsIcon.js +21 -0
  324. package/dist/components/CustomIcons/BiDirectionalArrowsIcon.js.map +1 -0
  325. package/dist/components/CustomIcons/CardIcon.js +16 -0
  326. package/dist/components/CustomIcons/CardIcon.js.map +1 -0
  327. package/dist/components/CustomIcons/CaretDownIcon.js +16 -0
  328. package/dist/components/CustomIcons/CaretDownIcon.js.map +1 -0
  329. package/dist/components/CustomIcons/CaretLeftIcon.js +16 -0
  330. package/dist/components/CustomIcons/CaretLeftIcon.js.map +1 -0
  331. package/dist/components/CustomIcons/CaretRightIcon.js +21 -0
  332. package/dist/components/CustomIcons/CaretRightIcon.js.map +1 -0
  333. package/dist/components/CustomIcons/CaretUpIcon.js +16 -0
  334. package/dist/components/CustomIcons/CaretUpIcon.js.map +1 -0
  335. package/dist/components/CustomIcons/ChangePasswordIcon.js +21 -0
  336. package/dist/components/CustomIcons/ChangePasswordIcon.js.map +1 -0
  337. package/dist/components/CustomIcons/CheckCircleFilled.js +21 -0
  338. package/dist/components/CustomIcons/CheckCircleFilled.js.map +1 -0
  339. package/dist/components/CustomIcons/CheckIcon.js +28 -0
  340. package/dist/components/CustomIcons/CheckIcon.js.map +1 -0
  341. package/dist/components/CustomIcons/CheckmarkIcon.js +16 -0
  342. package/dist/components/CustomIcons/CheckmarkIcon.js.map +1 -0
  343. package/dist/components/CustomIcons/ClearIcon.js +28 -0
  344. package/dist/components/CustomIcons/ClearIcon.js.map +1 -0
  345. package/dist/components/CustomIcons/CloseIcon.js +28 -0
  346. package/dist/components/CustomIcons/CloseIcon.js.map +1 -0
  347. package/dist/components/CustomIcons/CodeIcon.js +16 -0
  348. package/dist/components/CustomIcons/CodeIcon.js.map +1 -0
  349. package/dist/components/CustomIcons/CommandKeyIcon.js +21 -0
  350. package/dist/components/CustomIcons/CommandKeyIcon.js.map +1 -0
  351. package/dist/components/CustomIcons/CopyIcon.js +28 -0
  352. package/dist/components/CustomIcons/CopyIcon.js.map +1 -0
  353. package/dist/components/CustomIcons/CsvIcon.js +28 -0
  354. package/dist/components/CustomIcons/CsvIcon.js.map +1 -0
  355. package/dist/components/CustomIcons/CustomFieldIcon.js +21 -0
  356. package/dist/components/CustomIcons/CustomFieldIcon.js.map +1 -0
  357. package/dist/components/CustomIcons/DashboardIcon.js +28 -0
  358. package/dist/components/CustomIcons/DashboardIcon.js.map +1 -0
  359. package/dist/components/CustomIcons/DateIcon.js +28 -0
  360. package/dist/components/CustomIcons/DateIcon.js.map +1 -0
  361. package/dist/components/CustomIcons/DisableIcon.js +28 -0
  362. package/dist/components/CustomIcons/DisableIcon.js.map +1 -0
  363. package/dist/components/CustomIcons/DisabledIcon.js +28 -0
  364. package/dist/components/CustomIcons/DisabledIcon.js.map +1 -0
  365. package/dist/components/CustomIcons/DismissIcon.js +15 -0
  366. package/dist/components/CustomIcons/DismissIcon.js.map +1 -0
  367. package/dist/components/CustomIcons/DocIcon.js +28 -0
  368. package/dist/components/CustomIcons/DocIcon.js.map +1 -0
  369. package/dist/components/CustomIcons/DoubleCheckIcon.js +21 -0
  370. package/dist/components/CustomIcons/DoubleCheckIcon.js.map +1 -0
  371. package/dist/components/CustomIcons/DownloadIcon.js +28 -0
  372. package/dist/components/CustomIcons/DownloadIcon.js.map +1 -0
  373. package/dist/components/CustomIcons/EditIcon.js +28 -0
  374. package/dist/components/CustomIcons/EditIcon.js.map +1 -0
  375. package/dist/components/CustomIcons/EnableIcon.js +28 -0
  376. package/dist/components/CustomIcons/EnableIcon.js.map +1 -0
  377. package/dist/components/CustomIcons/EnumIcon.js +28 -0
  378. package/dist/components/CustomIcons/EnumIcon.js.map +1 -0
  379. package/dist/components/CustomIcons/ErrorCircleFilled.js +21 -0
  380. package/dist/components/CustomIcons/ErrorCircleFilled.js.map +1 -0
  381. package/dist/components/CustomIcons/ExpandIcon.js +28 -0
  382. package/dist/components/CustomIcons/ExpandIcon.js.map +1 -0
  383. package/dist/components/CustomIcons/EyeClosedIcon.js +16 -0
  384. package/dist/components/CustomIcons/EyeClosedIcon.js.map +1 -0
  385. package/dist/components/CustomIcons/EyeIcon.js +16 -0
  386. package/dist/components/CustomIcons/EyeIcon.js.map +1 -0
  387. package/dist/components/CustomIcons/FieldMappingIcon.js +21 -0
  388. package/dist/components/CustomIcons/FieldMappingIcon.js.map +1 -0
  389. package/dist/components/CustomIcons/FilledCaretDownIcon.js +21 -0
  390. package/dist/components/CustomIcons/FilledCaretDownIcon.js.map +1 -0
  391. package/dist/components/CustomIcons/FilledCaretRightIcon.js +21 -0
  392. package/dist/components/CustomIcons/FilledCaretRightIcon.js.map +1 -0
  393. package/dist/components/CustomIcons/FilterIcon.js +28 -0
  394. package/dist/components/CustomIcons/FilterIcon.js.map +1 -0
  395. package/dist/components/CustomIcons/ForbiddenIcon.js +28 -0
  396. package/dist/components/CustomIcons/ForbiddenIcon.js.map +1 -0
  397. package/dist/components/CustomIcons/ForwardArrowIcon.js +21 -0
  398. package/dist/components/CustomIcons/ForwardArrowIcon.js.map +1 -0
  399. package/dist/components/CustomIcons/GlobeIcon.js +16 -0
  400. package/dist/components/CustomIcons/GlobeIcon.js.map +1 -0
  401. package/dist/components/CustomIcons/InboxIcon.js +16 -0
  402. package/dist/components/CustomIcons/InboxIcon.js.map +1 -0
  403. package/dist/components/CustomIcons/InfoCircleFilled.js +21 -0
  404. package/dist/components/CustomIcons/InfoCircleFilled.js.map +1 -0
  405. package/dist/components/CustomIcons/InfoFilledIcon.js +21 -0
  406. package/dist/components/CustomIcons/InfoFilledIcon.js.map +1 -0
  407. package/dist/components/CustomIcons/InfoIcon.js +28 -0
  408. package/dist/components/CustomIcons/InfoIcon.js.map +1 -0
  409. package/dist/components/CustomIcons/IntegrationsIcon.js +28 -0
  410. package/dist/components/CustomIcons/IntegrationsIcon.js.map +1 -0
  411. package/dist/components/CustomIcons/KeyIcon.js +28 -0
  412. package/dist/components/CustomIcons/KeyIcon.js.map +1 -0
  413. package/dist/components/CustomIcons/LibraryIcon.js +16 -0
  414. package/dist/components/CustomIcons/LibraryIcon.js.map +1 -0
  415. package/dist/components/CustomIcons/LogsIcon.js +28 -0
  416. package/dist/components/CustomIcons/LogsIcon.js.map +1 -0
  417. package/dist/components/CustomIcons/MagicWandIcon.js +16 -0
  418. package/dist/components/CustomIcons/MagicWandIcon.js.map +1 -0
  419. package/dist/components/CustomIcons/ManageTeamIcon.js +21 -0
  420. package/dist/components/CustomIcons/ManageTeamIcon.js.map +1 -0
  421. package/dist/components/CustomIcons/ManualWebhookIcon.js +21 -0
  422. package/dist/components/CustomIcons/ManualWebhookIcon.js.map +1 -0
  423. package/dist/components/CustomIcons/MarkReadIcon.js +16 -0
  424. package/dist/components/CustomIcons/MarkReadIcon.js.map +1 -0
  425. package/dist/components/CustomIcons/MarkUnreadIcon.js +21 -0
  426. package/dist/components/CustomIcons/MarkUnreadIcon.js.map +1 -0
  427. package/dist/components/CustomIcons/MembersIcon.js +28 -0
  428. package/dist/components/CustomIcons/MembersIcon.js.map +1 -0
  429. package/dist/components/CustomIcons/ModalIcon.js +28 -0
  430. package/dist/components/CustomIcons/ModalIcon.js.map +1 -0
  431. package/dist/components/CustomIcons/MoreHorizontalIcon.js +21 -0
  432. package/dist/components/CustomIcons/MoreHorizontalIcon.js.map +1 -0
  433. package/dist/components/CustomIcons/MoreVerticalIcon.js +21 -0
  434. package/dist/components/CustomIcons/MoreVerticalIcon.js.map +1 -0
  435. package/dist/components/CustomIcons/NavbarCollapseIcon.js +21 -0
  436. package/dist/components/CustomIcons/NavbarCollapseIcon.js.map +1 -0
  437. package/dist/components/CustomIcons/NavbarExpandIcon.js +21 -0
  438. package/dist/components/CustomIcons/NavbarExpandIcon.js.map +1 -0
  439. package/dist/components/CustomIcons/NotFoundIcon.js +16 -0
  440. package/dist/components/CustomIcons/NotFoundIcon.js.map +1 -0
  441. package/dist/components/CustomIcons/OrganizationIcon.js +21 -0
  442. package/dist/components/CustomIcons/OrganizationIcon.js.map +1 -0
  443. package/dist/components/CustomIcons/PinIcon.js +16 -0
  444. package/dist/components/CustomIcons/PinIcon.js.map +1 -0
  445. package/dist/components/CustomIcons/PlusIcon.js +28 -0
  446. package/dist/components/CustomIcons/PlusIcon.js.map +1 -0
  447. package/dist/components/CustomIcons/PreviewIcon.js +28 -0
  448. package/dist/components/CustomIcons/PreviewIcon.js.map +1 -0
  449. package/dist/components/CustomIcons/ProgrammaticWebhookIcon.js +21 -0
  450. package/dist/components/CustomIcons/ProgrammaticWebhookIcon.js.map +1 -0
  451. package/dist/components/CustomIcons/PulseIcon.js +28 -0
  452. package/dist/components/CustomIcons/PulseIcon.js.map +1 -0
  453. package/dist/components/CustomIcons/RefreshIcon.js +28 -0
  454. package/dist/components/CustomIcons/RefreshIcon.js.map +1 -0
  455. package/dist/components/CustomIcons/RejectIcon.js +28 -0
  456. package/dist/components/CustomIcons/RejectIcon.js.map +1 -0
  457. package/dist/components/CustomIcons/ReloadIcon.js +28 -0
  458. package/dist/components/CustomIcons/ReloadIcon.js.map +1 -0
  459. package/dist/components/CustomIcons/ReplyIcon.js +16 -0
  460. package/dist/components/CustomIcons/ReplyIcon.js.map +1 -0
  461. package/dist/components/CustomIcons/RequiredFieldIndicatorIcon.js +21 -0
  462. package/dist/components/CustomIcons/RequiredFieldIndicatorIcon.js.map +1 -0
  463. package/dist/components/CustomIcons/SearchIcon.js +15 -0
  464. package/dist/components/CustomIcons/SearchIcon.js.map +1 -0
  465. package/dist/components/CustomIcons/SecurityIcon.js +28 -0
  466. package/dist/components/CustomIcons/SecurityIcon.js.map +1 -0
  467. package/dist/components/CustomIcons/SendIcon.js +16 -0
  468. package/dist/components/CustomIcons/SendIcon.js.map +1 -0
  469. package/dist/components/CustomIcons/SettingsIcon.js +28 -0
  470. package/dist/components/CustomIcons/SettingsIcon.js.map +1 -0
  471. package/dist/components/CustomIcons/SignOutIcon.js +16 -0
  472. package/dist/components/CustomIcons/SignOutIcon.js.map +1 -0
  473. package/dist/components/CustomIcons/SliderIcon.js +28 -0
  474. package/dist/components/CustomIcons/SliderIcon.js.map +1 -0
  475. package/dist/components/CustomIcons/SortIcon.js +28 -0
  476. package/dist/components/CustomIcons/SortIcon.js.map +1 -0
  477. package/dist/components/CustomIcons/SourceIcon.js +28 -0
  478. package/dist/components/CustomIcons/SourceIcon.js.map +1 -0
  479. package/dist/components/CustomIcons/SparkleIcon.js +16 -0
  480. package/dist/components/CustomIcons/SparkleIcon.js.map +1 -0
  481. package/dist/components/CustomIcons/StarIcon.js +16 -0
  482. package/dist/components/CustomIcons/StarIcon.js.map +1 -0
  483. package/dist/components/CustomIcons/StepCurrentIcon.js +21 -0
  484. package/dist/components/CustomIcons/StepCurrentIcon.js.map +1 -0
  485. package/dist/components/CustomIcons/StepUpcomingIcon.js +21 -0
  486. package/dist/components/CustomIcons/StepUpcomingIcon.js.map +1 -0
  487. package/dist/components/CustomIcons/SyntheticWebhookIcon.js +21 -0
  488. package/dist/components/CustomIcons/SyntheticWebhookIcon.js.map +1 -0
  489. package/dist/components/CustomIcons/ThumbsDownIcon.js +21 -0
  490. package/dist/components/CustomIcons/ThumbsDownIcon.js.map +1 -0
  491. package/dist/components/CustomIcons/ThumbsUpIcon.js +16 -0
  492. package/dist/components/CustomIcons/ThumbsUpIcon.js.map +1 -0
  493. package/dist/components/CustomIcons/TrashIcon.js +28 -0
  494. package/dist/components/CustomIcons/TrashIcon.js.map +1 -0
  495. package/dist/components/CustomIcons/TriangleDownIcon.js +21 -0
  496. package/dist/components/CustomIcons/TriangleDownIcon.js.map +1 -0
  497. package/dist/components/CustomIcons/TriangleRightIcon.js +21 -0
  498. package/dist/components/CustomIcons/TriangleRightIcon.js.map +1 -0
  499. package/dist/components/CustomIcons/UnarchiveIcon.js +16 -0
  500. package/dist/components/CustomIcons/UnarchiveIcon.js.map +1 -0
  501. package/dist/components/CustomIcons/UploadIcon.js +28 -0
  502. package/dist/components/CustomIcons/UploadIcon.js.map +1 -0
  503. package/dist/components/CustomIcons/WarningCircleFilled.js +21 -0
  504. package/dist/components/CustomIcons/WarningCircleFilled.js.map +1 -0
  505. package/dist/components/CustomIcons/WarningTriangleIcon.js +21 -0
  506. package/dist/components/CustomIcons/WarningTriangleIcon.js.map +1 -0
  507. package/dist/components/CustomIcons/WebhookEventsIcon.js +28 -0
  508. package/dist/components/CustomIcons/WebhookEventsIcon.js.map +1 -0
  509. package/dist/components/CustomIcons/WebhookIcon.js +28 -0
  510. package/dist/components/CustomIcons/WebhookIcon.js.map +1 -0
  511. package/dist/components/CustomIcons/WebhookSigningSecretIcon.js +21 -0
  512. package/dist/components/CustomIcons/WebhookSigningSecretIcon.js.map +1 -0
  513. package/dist/components/CustomIcons/index.js +328 -0
  514. package/dist/components/CustomIcons/index.js.map +1 -0
  515. package/dist/components/DefinitionRow.js +15 -0
  516. package/dist/components/DefinitionRow.js.map +1 -0
  517. package/dist/components/DisclosureArrow.js +20 -0
  518. package/dist/components/DisclosureArrow.js.map +1 -0
  519. package/dist/components/Divider.js +59 -0
  520. package/dist/components/Divider.js.map +1 -0
  521. package/dist/components/Dropdown.js +847 -0
  522. package/dist/components/Dropdown.js.map +1 -0
  523. package/dist/components/FieldBlock.js +25 -0
  524. package/dist/components/FieldBlock.js.map +1 -0
  525. package/dist/components/FieldGroup.js +23 -0
  526. package/dist/components/FieldGroup.js.map +1 -0
  527. package/dist/components/FieldMessage.js +15 -0
  528. package/dist/components/FieldMessage.js.map +1 -0
  529. package/dist/components/Flex.js +45 -0
  530. package/dist/components/Flex.js.map +1 -0
  531. package/dist/components/FooterLinks.js +88 -0
  532. package/dist/components/FooterLinks.js.map +1 -0
  533. package/dist/components/FooterNav.js +19 -0
  534. package/dist/components/FooterNav.js.map +1 -0
  535. package/dist/components/Form.js +26 -0
  536. package/dist/components/Form.js.map +1 -0
  537. package/dist/components/FormItem.js +32 -0
  538. package/dist/components/FormItem.js.map +1 -0
  539. package/dist/components/FormSectionHeading.js +20 -0
  540. package/dist/components/FormSectionHeading.js.map +1 -0
  541. package/dist/components/InlineConfirm.js +129 -0
  542. package/dist/components/InlineConfirm.js.map +1 -0
  543. package/dist/components/Input/Input.js +302 -0
  544. package/dist/components/Input/Input.js.map +1 -0
  545. package/dist/components/KeyValueList.js +26 -0
  546. package/dist/components/KeyValueList.js.map +1 -0
  547. package/dist/components/Link.js +47 -0
  548. package/dist/components/Link.js.map +1 -0
  549. package/dist/components/LoadingBar.js +85 -0
  550. package/dist/components/LoadingBar.js.map +1 -0
  551. package/dist/components/LoadingInput.js +29 -0
  552. package/dist/components/LoadingInput.js.map +1 -0
  553. package/dist/components/MalachiteContext.js +18 -0
  554. package/dist/components/MalachiteContext.js.map +1 -0
  555. package/dist/components/Modal.js +212 -0
  556. package/dist/components/Modal.js.map +1 -0
  557. package/dist/components/MultiSelect.js +643 -0
  558. package/dist/components/MultiSelect.js.map +1 -0
  559. package/dist/components/NumberTag.js +22 -0
  560. package/dist/components/NumberTag.js.map +1 -0
  561. package/dist/components/OverflowRow.js +153 -0
  562. package/dist/components/OverflowRow.js.map +1 -0
  563. package/dist/components/Padded.js +39 -0
  564. package/dist/components/Padded.js.map +1 -0
  565. package/dist/components/PageLayout/constants.js +12 -0
  566. package/dist/components/PageLayout/constants.js.map +1 -0
  567. package/dist/components/PageLayout/emptyLayout.js +61 -0
  568. package/dist/components/PageLayout/emptyLayout.js.map +1 -0
  569. package/dist/components/PageLayout/index.js +10 -0
  570. package/dist/components/PageLayout/index.js.map +1 -0
  571. package/dist/components/PageLayout/regularLayout.js +177 -0
  572. package/dist/components/PageLayout/regularLayout.js.map +1 -0
  573. package/dist/components/PillButton.js +70 -0
  574. package/dist/components/PillButton.js.map +1 -0
  575. package/dist/components/PreviewTree.js +49 -0
  576. package/dist/components/PreviewTree.js.map +1 -0
  577. package/dist/components/Progress.js +69 -0
  578. package/dist/components/Progress.js.map +1 -0
  579. package/dist/components/QueryInput.js +370 -0
  580. package/dist/components/QueryInput.js.map +1 -0
  581. package/dist/components/Radio.js +63 -0
  582. package/dist/components/Radio.js.map +1 -0
  583. package/dist/components/Search.js +54 -0
  584. package/dist/components/Search.js.map +1 -0
  585. package/dist/components/SegmentedControl.js +107 -0
  586. package/dist/components/SegmentedControl.js.map +1 -0
  587. package/dist/components/SelectableCard.js +364 -0
  588. package/dist/components/SelectableCard.js.map +1 -0
  589. package/dist/components/SelectionBar.js +103 -0
  590. package/dist/components/SelectionBar.js.map +1 -0
  591. package/dist/components/SettingRow.js +40 -0
  592. package/dist/components/SettingRow.js.map +1 -0
  593. package/dist/components/ShadowEscape.js +166 -0
  594. package/dist/components/ShadowEscape.js.map +1 -0
  595. package/dist/components/SidePanel.js +140 -0
  596. package/dist/components/SidePanel.js.map +1 -0
  597. package/dist/components/SidePanelNavFooter.js +46 -0
  598. package/dist/components/SidePanelNavFooter.js.map +1 -0
  599. package/dist/components/Skeleton.js +106 -0
  600. package/dist/components/Skeleton.js.map +1 -0
  601. package/dist/components/Spacer.js +63 -0
  602. package/dist/components/Spacer.js.map +1 -0
  603. package/dist/components/Spinner.js +86 -0
  604. package/dist/components/Spinner.js.map +1 -0
  605. package/dist/components/SplitScreenLayout.js +51 -0
  606. package/dist/components/SplitScreenLayout.js.map +1 -0
  607. package/dist/components/StatBadge.js +10 -0
  608. package/dist/components/StatBadge.js.map +1 -0
  609. package/dist/components/Statistic.js +48 -0
  610. package/dist/components/Statistic.js.map +1 -0
  611. package/dist/components/StatusBadge.js +56 -0
  612. package/dist/components/StatusBadge.js.map +1 -0
  613. package/dist/components/StepTabs.js +52 -0
  614. package/dist/components/StepTabs.js.map +1 -0
  615. package/dist/components/Stepper.js +40 -0
  616. package/dist/components/Stepper.js.map +1 -0
  617. package/dist/components/Surface.js +143 -0
  618. package/dist/components/Surface.js.map +1 -0
  619. package/dist/components/Swatch.js +44 -0
  620. package/dist/components/Swatch.js.map +1 -0
  621. package/dist/components/Table/Table.js +1007 -0
  622. package/dist/components/Table/Table.js.map +1 -0
  623. package/dist/components/Table/TablePagination.js +205 -0
  624. package/dist/components/Table/TablePagination.js.map +1 -0
  625. package/dist/components/Tabs.js +35 -0
  626. package/dist/components/Tabs.js.map +1 -0
  627. package/dist/components/Tag.js +154 -0
  628. package/dist/components/Tag.js.map +1 -0
  629. package/dist/components/TextArea/TextArea.js +289 -0
  630. package/dist/components/TextArea/TextArea.js.map +1 -0
  631. package/dist/components/ThemeScope.js +14 -0
  632. package/dist/components/ThemeScope.js.map +1 -0
  633. package/dist/components/Toggle.js +115 -0
  634. package/dist/components/Toggle.js.map +1 -0
  635. package/dist/components/Toolbar.js +25 -0
  636. package/dist/components/Toolbar.js.map +1 -0
  637. package/dist/components/Tooltip.js +181 -0
  638. package/dist/components/Tooltip.js.map +1 -0
  639. package/dist/components/TruncatedTooltip.js +38 -0
  640. package/dist/components/TruncatedTooltip.js.map +1 -0
  641. package/dist/components/Typography/CodeText.js +49 -0
  642. package/dist/components/Typography/CodeText.js.map +1 -0
  643. package/dist/components/Typography/EllipsisText.js +27 -0
  644. package/dist/components/Typography/EllipsisText.js.map +1 -0
  645. package/dist/components/Typography/FormSectionTitle.js +21 -0
  646. package/dist/components/Typography/FormSectionTitle.js.map +1 -0
  647. package/dist/components/Typography/LinkText.js +32 -0
  648. package/dist/components/Typography/LinkText.js.map +1 -0
  649. package/dist/components/Typography/MarkdownBlock.js +304 -0
  650. package/dist/components/Typography/MarkdownBlock.js.map +1 -0
  651. package/dist/components/Typography/PageTitle.js +21 -0
  652. package/dist/components/Typography/PageTitle.js.map +1 -0
  653. package/dist/components/Typography/SecondaryText.js +51 -0
  654. package/dist/components/Typography/SecondaryText.js.map +1 -0
  655. package/dist/components/Typography/SectionTitle.js +16 -0
  656. package/dist/components/Typography/SectionTitle.js.map +1 -0
  657. package/dist/components/Typography/StatisticLabel.js +22 -0
  658. package/dist/components/Typography/StatisticLabel.js.map +1 -0
  659. package/dist/components/Typography/StatisticValue.js +21 -0
  660. package/dist/components/Typography/StatisticValue.js.map +1 -0
  661. package/dist/components/Typography/TerminalText.js +45 -0
  662. package/dist/components/Typography/TerminalText.js.map +1 -0
  663. package/dist/components/Typography/Text.js +31 -0
  664. package/dist/components/Typography/Text.js.map +1 -0
  665. package/dist/components/Typography/index.js +31 -0
  666. package/dist/components/Typography/index.js.map +1 -0
  667. package/dist/components/Typography/textStyles.js +66 -0
  668. package/dist/components/Typography/textStyles.js.map +1 -0
  669. package/dist/components/WizardLayout.js +113 -0
  670. package/dist/components/WizardLayout.js.map +1 -0
  671. package/dist/components/actionBarMenuItems.js +16 -0
  672. package/dist/components/actionBarMenuItems.js.map +1 -0
  673. package/dist/components/activeElement.js +11 -0
  674. package/dist/components/activeElement.js.map +1 -0
  675. package/dist/components/breadcrumbsNav.js +5 -0
  676. package/dist/components/breadcrumbsNav.js.map +1 -0
  677. package/dist/components/cardStripSlot.js +9 -0
  678. package/dist/components/cardStripSlot.js.map +1 -0
  679. package/dist/components/codeBlockDiff.js +78 -0
  680. package/dist/components/codeBlockDiff.js.map +1 -0
  681. package/dist/components/codeBlockLine.js +90 -0
  682. package/dist/components/codeBlockLine.js.map +1 -0
  683. package/dist/components/codeBlockStyles.js +20 -0
  684. package/dist/components/codeBlockStyles.js.map +1 -0
  685. package/dist/components/confirmationDialogVariants.js +30 -0
  686. package/dist/components/confirmationDialogVariants.js.map +1 -0
  687. package/dist/components/controlTextSize.js +14 -0
  688. package/dist/components/controlTextSize.js.map +1 -0
  689. package/dist/components/devWarning.js +22 -0
  690. package/dist/components/devWarning.js.map +1 -0
  691. package/dist/components/dividerTypes.js +7 -0
  692. package/dist/components/dividerTypes.js.map +1 -0
  693. package/dist/components/dropdownPanelPosition.js +38 -0
  694. package/dist/components/dropdownPanelPosition.js.map +1 -0
  695. package/dist/components/dropdownTriggerStyle.js +36 -0
  696. package/dist/components/dropdownTriggerStyle.js.map +1 -0
  697. package/dist/components/escapeLayers.js +13 -0
  698. package/dist/components/escapeLayers.js.map +1 -0
  699. package/dist/components/flexTypes.js +8 -0
  700. package/dist/components/flexTypes.js.map +1 -0
  701. package/dist/components/focusRing.js +9 -0
  702. package/dist/components/focusRing.js.map +1 -0
  703. package/dist/components/formItemState.js +12 -0
  704. package/dist/components/formItemState.js.map +1 -0
  705. package/dist/components/glassSurface.js +10 -0
  706. package/dist/components/glassSurface.js.map +1 -0
  707. package/dist/components/injectStyleSheet.js +33 -0
  708. package/dist/components/injectStyleSheet.js.map +1 -0
  709. package/dist/components/inlineConfirmPosition.js +27 -0
  710. package/dist/components/inlineConfirmPosition.js.map +1 -0
  711. package/dist/components/keyboardActivation.js +14 -0
  712. package/dist/components/keyboardActivation.js.map +1 -0
  713. package/dist/components/modalTray.js +16 -0
  714. package/dist/components/modalTray.js.map +1 -0
  715. package/dist/components/optionRowStyles.js +27 -0
  716. package/dist/components/optionRowStyles.js.map +1 -0
  717. package/dist/components/overlayBehaviour.js +118 -0
  718. package/dist/components/overlayBehaviour.js.map +1 -0
  719. package/dist/components/portalOverlay.js +35 -0
  720. package/dist/components/portalOverlay.js.map +1 -0
  721. package/dist/components/prismCedar.js +27 -0
  722. package/dist/components/prismCedar.js.map +1 -0
  723. package/dist/components/queryInputGeometry.js +24 -0
  724. package/dist/components/queryInputGeometry.js.map +1 -0
  725. package/dist/components/renderableNode.js +6 -0
  726. package/dist/components/renderableNode.js.map +1 -0
  727. package/dist/components/safeHref.js +11 -0
  728. package/dist/components/safeHref.js.map +1 -0
  729. package/dist/components/scrollLock.js +19 -0
  730. package/dist/components/scrollLock.js.map +1 -0
  731. package/dist/components/selectedRow.js +14 -0
  732. package/dist/components/selectedRow.js.map +1 -0
  733. package/dist/components/selectionBarChrome.js +63 -0
  734. package/dist/components/selectionBarChrome.js.map +1 -0
  735. package/dist/components/topLayer.js +29 -0
  736. package/dist/components/topLayer.js.map +1 -0
  737. package/dist/components/useAdoptedStyleSheet.js +41 -0
  738. package/dist/components/useAdoptedStyleSheet.js.map +1 -0
  739. package/dist/geist-font.js +23 -0
  740. package/dist/geist-font.js.map +1 -0
  741. package/dist/index.d.ts +1045 -89
  742. package/dist/index.js +403 -104
  743. package/dist/index.js.map +1 -1
  744. package/dist/inter-font.js +35 -0
  745. package/dist/inter-font.js.map +1 -0
  746. package/dist/stack-sans-font.js +17 -0
  747. package/dist/stack-sans-font.js.map +1 -0
  748. package/dist/tailwind.css.js +5 -0
  749. package/dist/tailwind.css.js.map +1 -0
  750. package/dist/theme.js +1959 -0
  751. package/dist/theme.js.map +1 -0
  752. package/dist/vendor/@fontsource/geist-sans/files/geist-sans-latin-400-normal.woff2.js +5 -0
  753. package/dist/vendor/@fontsource/geist-sans/files/geist-sans-latin-400-normal.woff2.js.map +1 -0
  754. package/dist/vendor/@fontsource/geist-sans/files/geist-sans-latin-500-normal.woff2.js +5 -0
  755. package/dist/vendor/@fontsource/geist-sans/files/geist-sans-latin-500-normal.woff2.js.map +1 -0
  756. package/dist/vendor/@fontsource/inter/files/inter-latin-400-normal.woff2.js +5 -0
  757. package/dist/vendor/@fontsource/inter/files/inter-latin-400-normal.woff2.js.map +1 -0
  758. package/dist/vendor/@fontsource/inter/files/inter-latin-500-normal.woff2.js +5 -0
  759. package/dist/vendor/@fontsource/inter/files/inter-latin-500-normal.woff2.js.map +1 -0
  760. package/dist/vendor/@fontsource/inter/files/inter-latin-600-normal.woff2.js +5 -0
  761. package/dist/vendor/@fontsource/inter/files/inter-latin-600-normal.woff2.js.map +1 -0
  762. package/dist/vendor/@fontsource/inter/files/inter-latin-700-normal.woff2.js +5 -0
  763. package/dist/vendor/@fontsource/inter/files/inter-latin-700-normal.woff2.js.map +1 -0
  764. package/dist/vendor/@fontsource/inter/files/inter-latin-ext-400-normal.woff2.js +5 -0
  765. package/dist/vendor/@fontsource/inter/files/inter-latin-ext-400-normal.woff2.js.map +1 -0
  766. package/dist/vendor/@fontsource/inter/files/inter-latin-ext-500-normal.woff2.js +5 -0
  767. package/dist/vendor/@fontsource/inter/files/inter-latin-ext-500-normal.woff2.js.map +1 -0
  768. package/dist/vendor/@fontsource/inter/files/inter-latin-ext-600-normal.woff2.js +5 -0
  769. package/dist/vendor/@fontsource/inter/files/inter-latin-ext-600-normal.woff2.js.map +1 -0
  770. package/dist/vendor/@fontsource/inter/files/inter-latin-ext-700-normal.woff2.js +5 -0
  771. package/dist/vendor/@fontsource/inter/files/inter-latin-ext-700-normal.woff2.js.map +1 -0
  772. package/dist/vendor/@fontsource-variable/stack-sans-text/files/stack-sans-text-latin-wght-normal.woff2.js +5 -0
  773. package/dist/vendor/@fontsource-variable/stack-sans-text/files/stack-sans-text-latin-wght-normal.woff2.js.map +1 -0
  774. package/package.json +6 -1
  775. package/dist/CodeBlockHighlighter-BJeE32YS.js +0 -2791
  776. package/dist/CodeBlockHighlighter-BJeE32YS.js.map +0 -1
  777. package/dist/index-P2H4or4t.js +0 -19528
  778. package/dist/index-P2H4or4t.js.map +0 -1
@@ -0,0 +1,106 @@
1
+ import { jsx as i } from "react/jsx-runtime";
2
+ import { useRef as d } from "react";
3
+ import { useAdoptedStyleSheet as c } from "./useAdoptedStyleSheet.js";
4
+ const k = { small: 24, default: 32, large: 40 }, S = { small: 64, default: 96, large: 128 }, E = { small: 24, default: 32, large: 40 }, b = { small: 24, default: 32, large: 40 }, g = "malachite-skeleton-loading", u = "rgba(190, 190, 190, 0.2)", p = "rgba(129, 129, 129, 0.24)", y = `linear-gradient(90deg, ${u} 25%, ${p} 37%, ${u} 63%)`, f = `@keyframes ${g} { 0% { background-position: 100% 50%; } 100% { background-position: 0 50%; } }`, T = (e) => {
5
+ switch (e) {
6
+ case "round":
7
+ case "circle":
8
+ return 9999;
9
+ case "square":
10
+ return 0;
11
+ default:
12
+ return 6;
13
+ }
14
+ }, m = (e) => ({
15
+ display: "inline-block",
16
+ verticalAlign: "middle",
17
+ background: e ? y : u,
18
+ backgroundSize: e ? "400% 100%" : void 0,
19
+ animation: e ? `${g} 1.4s ease infinite` : void 0,
20
+ flexShrink: 0
21
+ }), A = ({
22
+ size: e = "default",
23
+ shape: r = "default",
24
+ block: n = !1,
25
+ active: l = !0,
26
+ className: t,
27
+ width: a,
28
+ height: o,
29
+ minWidth: s
30
+ }) => {
31
+ const h = d(null);
32
+ return c(h, f, "malachite-skeleton-keyframes"), /* @__PURE__ */ i(
33
+ "span",
34
+ {
35
+ ref: h,
36
+ className: t,
37
+ "aria-busy": "true",
38
+ "aria-hidden": "true",
39
+ style: {
40
+ ...m(l),
41
+ width: n ? "100%" : a ?? S[e],
42
+ height: o ?? k[e],
43
+ minWidth: s,
44
+ borderRadius: T(r)
45
+ }
46
+ }
47
+ );
48
+ }, R = ({
49
+ size: e = "default",
50
+ block: r = !1,
51
+ active: n = !0,
52
+ className: l,
53
+ width: t,
54
+ height: a,
55
+ minWidth: o
56
+ }) => {
57
+ const s = d(null);
58
+ return c(s, f, "malachite-skeleton-keyframes"), /* @__PURE__ */ i(
59
+ "span",
60
+ {
61
+ ref: s,
62
+ className: l,
63
+ "aria-busy": "true",
64
+ "aria-hidden": "true",
65
+ style: {
66
+ ...m(n),
67
+ width: r ? "100%" : t ?? 160,
68
+ height: a ?? E[e],
69
+ minWidth: o,
70
+ borderRadius: 6
71
+ }
72
+ }
73
+ );
74
+ }, I = ({
75
+ size: e = "default",
76
+ shape: r = "circle",
77
+ active: n = !0,
78
+ className: l
79
+ }) => {
80
+ const t = d(null);
81
+ c(t, f, "malachite-skeleton-keyframes");
82
+ const a = typeof e == "number" ? e : b[e];
83
+ return /* @__PURE__ */ i(
84
+ "span",
85
+ {
86
+ ref: t,
87
+ className: l,
88
+ "aria-busy": "true",
89
+ "aria-hidden": "true",
90
+ style: {
91
+ ...m(n),
92
+ width: a,
93
+ height: a,
94
+ borderRadius: r === "circle" ? 9999 : 6
95
+ }
96
+ }
97
+ );
98
+ }, B = {
99
+ Button: A,
100
+ Input: R,
101
+ Avatar: I
102
+ };
103
+ export {
104
+ B as default
105
+ };
106
+ //# sourceMappingURL=Skeleton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Skeleton.js","sources":["../../src/components/Skeleton.tsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport { useAdoptedStyleSheet } from './useAdoptedStyleSheet';\n\ntype SkeletonSize = 'small' | 'default' | 'large';\ntype SkeletonShape = 'default' | 'round' | 'circle' | 'square';\n\ninterface BaseSkeletonProps {\n active?: boolean;\n className?: string;\n}\n\ninterface SkeletonButtonProps extends BaseSkeletonProps {\n size?: SkeletonSize;\n shape?: SkeletonShape;\n block?: boolean;\n width?: number | string;\n height?: number | string;\n minWidth?: number | string;\n}\n\ninterface SkeletonInputProps extends BaseSkeletonProps {\n size?: SkeletonSize;\n block?: boolean;\n width?: number | string;\n height?: number | string;\n minWidth?: number | string;\n}\n\ninterface SkeletonAvatarProps extends BaseSkeletonProps {\n size?: SkeletonSize | number;\n shape?: 'circle' | 'square';\n}\n\nconst BUTTON_HEIGHT: Record<SkeletonSize, number> = { small: 24, default: 32, large: 40 };\nconst BUTTON_WIDTH: Record<SkeletonSize, number> = { small: 64, default: 96, large: 128 };\nconst INPUT_HEIGHT: Record<SkeletonSize, number> = { small: 24, default: 32, large: 40 };\nconst AVATAR_SIZE: Record<SkeletonSize, number> = { small: 24, default: 32, large: 40 };\n\nconst KEYFRAME_NAME = 'malachite-skeleton-loading';\nconst SKELETON_BASE = 'rgba(190, 190, 190, 0.2)';\nconst SKELETON_SHIMMER = 'rgba(129, 129, 129, 0.24)';\nconst SKELETON_GRADIENT = `linear-gradient(90deg, ${SKELETON_BASE} 25%, ${SKELETON_SHIMMER} 37%, ${SKELETON_BASE} 63%)`;\nconst KEYFRAMES_CSS = `@keyframes ${KEYFRAME_NAME} { 0% { background-position: 100% 50%; } 100% { background-position: 0 50%; } }`;\n\nconst getRadius = (shape: SkeletonShape): string | number => {\n switch (shape) {\n case 'round':\n case 'circle':\n return 9999;\n case 'square':\n return 0;\n default:\n return 6;\n }\n};\n\nconst baseStyle = (active: boolean): React.CSSProperties => ({\n display: 'inline-block',\n verticalAlign: 'middle',\n background: active ? SKELETON_GRADIENT : SKELETON_BASE,\n backgroundSize: active ? '400% 100%' : undefined,\n animation: active ? `${KEYFRAME_NAME} 1.4s ease infinite` : undefined,\n flexShrink: 0,\n});\n\nconst SkeletonButton: React.FC<SkeletonButtonProps> = ({\n size = 'default',\n shape = 'default',\n block = false,\n active = true,\n className,\n width,\n height,\n minWidth,\n}) => {\n const ref = useRef<HTMLSpanElement>(null);\n useAdoptedStyleSheet(ref, KEYFRAMES_CSS, 'malachite-skeleton-keyframes');\n return (\n <span\n ref={ref}\n className={className}\n aria-busy=\"true\"\n aria-hidden=\"true\"\n style={{\n ...baseStyle(active),\n width: block ? '100%' : (width ?? BUTTON_WIDTH[size]),\n height: height ?? BUTTON_HEIGHT[size],\n minWidth,\n borderRadius: getRadius(shape),\n }}\n />\n );\n};\n\nconst SkeletonInput: React.FC<SkeletonInputProps> = ({\n size = 'default',\n block = false,\n active = true,\n className,\n width,\n height,\n minWidth,\n}) => {\n const ref = useRef<HTMLSpanElement>(null);\n useAdoptedStyleSheet(ref, KEYFRAMES_CSS, 'malachite-skeleton-keyframes');\n return (\n <span\n ref={ref}\n className={className}\n aria-busy=\"true\"\n aria-hidden=\"true\"\n style={{\n ...baseStyle(active),\n width: block ? '100%' : (width ?? 160),\n height: height ?? INPUT_HEIGHT[size],\n minWidth,\n borderRadius: 6,\n }}\n />\n );\n};\n\nconst SkeletonAvatar: React.FC<SkeletonAvatarProps> = ({\n size = 'default',\n shape = 'circle',\n active = true,\n className,\n}) => {\n const ref = useRef<HTMLSpanElement>(null);\n useAdoptedStyleSheet(ref, KEYFRAMES_CSS, 'malachite-skeleton-keyframes');\n const px = typeof size === 'number' ? size : AVATAR_SIZE[size];\n return (\n <span\n ref={ref}\n className={className}\n aria-busy=\"true\"\n aria-hidden=\"true\"\n style={{\n ...baseStyle(active),\n width: px,\n height: px,\n borderRadius: shape === 'circle' ? 9999 : 6,\n }}\n />\n );\n};\n\nconst Skeleton = {\n Button: SkeletonButton,\n Input: SkeletonInput,\n Avatar: SkeletonAvatar,\n};\n\nexport default Skeleton;\n"],"names":["BUTTON_HEIGHT","BUTTON_WIDTH","INPUT_HEIGHT","AVATAR_SIZE","KEYFRAME_NAME","SKELETON_BASE","SKELETON_SHIMMER","SKELETON_GRADIENT","KEYFRAMES_CSS","getRadius","shape","baseStyle","active","SkeletonButton","size","block","className","width","height","minWidth","ref","useRef","useAdoptedStyleSheet","jsx","SkeletonInput","SkeletonAvatar","px","Skeleton"],"mappings":";;;AAiCA,MAAMA,IAA8C,EAAE,OAAO,IAAI,SAAS,IAAI,OAAO,GAAA,GAC/EC,IAA6C,EAAE,OAAO,IAAI,SAAS,IAAI,OAAO,IAAA,GAC9EC,IAA6C,EAAE,OAAO,IAAI,SAAS,IAAI,OAAO,GAAA,GAC9EC,IAA4C,EAAE,OAAO,IAAI,SAAS,IAAI,OAAO,GAAA,GAE7EC,IAAgB,8BAChBC,IAAgB,4BAChBC,IAAmB,6BACnBC,IAAoB,0BAA0BF,CAAa,SAASC,CAAgB,SAASD,CAAa,SAC1GG,IAAgB,cAAcJ,CAAa,mFAE3CK,IAAY,CAACC,MAA0C;AACzD,UAAQA,GAAA;AAAA,IACJ,KAAK;AAAA,IACL,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX;AACI,aAAO;AAAA,EAAA;AAEnB,GAEMC,IAAY,CAACC,OAA0C;AAAA,EACzD,SAAS;AAAA,EACT,eAAe;AAAA,EACf,YAAYA,IAASL,IAAoBF;AAAA,EACzC,gBAAgBO,IAAS,cAAc;AAAA,EACvC,WAAWA,IAAS,GAAGR,CAAa,wBAAwB;AAAA,EAC5D,YAAY;AAChB,IAEMS,IAAgD,CAAC;AAAA,EACnD,MAAAC,IAAO;AAAA,EACP,OAAAJ,IAAQ;AAAA,EACR,OAAAK,IAAQ;AAAA,EACR,QAAAH,IAAS;AAAA,EACT,WAAAI;AAAA,EACA,OAAAC;AAAA,EACA,QAAAC;AAAA,EACA,UAAAC;AACJ,MAAM;AACF,QAAMC,IAAMC,EAAwB,IAAI;AACxC,SAAAC,EAAqBF,GAAKZ,GAAe,8BAA8B,GAEnE,gBAAAe;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,KAAAH;AAAA,MACA,WAAAJ;AAAA,MACA,aAAU;AAAA,MACV,eAAY;AAAA,MACZ,OAAO;AAAA,QACH,GAAGL,EAAUC,CAAM;AAAA,QACnB,OAAOG,IAAQ,SAAUE,KAAShB,EAAaa,CAAI;AAAA,QACnD,QAAQI,KAAUlB,EAAcc,CAAI;AAAA,QACpC,UAAAK;AAAA,QACA,cAAcV,EAAUC,CAAK;AAAA,MAAA;AAAA,IACjC;AAAA,EAAA;AAGZ,GAEMc,IAA8C,CAAC;AAAA,EACjD,MAAAV,IAAO;AAAA,EACP,OAAAC,IAAQ;AAAA,EACR,QAAAH,IAAS;AAAA,EACT,WAAAI;AAAA,EACA,OAAAC;AAAA,EACA,QAAAC;AAAA,EACA,UAAAC;AACJ,MAAM;AACF,QAAMC,IAAMC,EAAwB,IAAI;AACxC,SAAAC,EAAqBF,GAAKZ,GAAe,8BAA8B,GAEnE,gBAAAe;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,KAAAH;AAAA,MACA,WAAAJ;AAAA,MACA,aAAU;AAAA,MACV,eAAY;AAAA,MACZ,OAAO;AAAA,QACH,GAAGL,EAAUC,CAAM;AAAA,QACnB,OAAOG,IAAQ,SAAUE,KAAS;AAAA,QAClC,QAAQC,KAAUhB,EAAaY,CAAI;AAAA,QACnC,UAAAK;AAAA,QACA,cAAc;AAAA,MAAA;AAAA,IAClB;AAAA,EAAA;AAGZ,GAEMM,IAAgD,CAAC;AAAA,EACnD,MAAAX,IAAO;AAAA,EACP,OAAAJ,IAAQ;AAAA,EACR,QAAAE,IAAS;AAAA,EACT,WAAAI;AACJ,MAAM;AACF,QAAMI,IAAMC,EAAwB,IAAI;AACxC,EAAAC,EAAqBF,GAAKZ,GAAe,8BAA8B;AACvE,QAAMkB,IAAK,OAAOZ,KAAS,WAAWA,IAAOX,EAAYW,CAAI;AAC7D,SACI,gBAAAS;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,KAAAH;AAAA,MACA,WAAAJ;AAAA,MACA,aAAU;AAAA,MACV,eAAY;AAAA,MACZ,OAAO;AAAA,QACH,GAAGL,EAAUC,CAAM;AAAA,QACnB,OAAOc;AAAA,QACP,QAAQA;AAAA,QACR,cAAchB,MAAU,WAAW,OAAO;AAAA,MAAA;AAAA,IAC9C;AAAA,EAAA;AAGZ,GAEMiB,IAAW;AAAA,EACb,QAAQd;AAAA,EACR,OAAOW;AAAA,EACP,QAAQC;AACZ;"}
@@ -0,0 +1,63 @@
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import n, { useMemo as s } from "react";
3
+ const g = ({
4
+ direction: a = "horizontal",
5
+ size: c = 8,
6
+ children: l,
7
+ align: e,
8
+ justifyContent: t,
9
+ padding: i,
10
+ id: o,
11
+ fullHeight: u = !1,
12
+ fullWidth: d = !1,
13
+ className: f = ""
14
+ }) => {
15
+ const h = a === "vertical" ? "column" : "row", m = s(() => {
16
+ switch (e) {
17
+ case "center":
18
+ return "center";
19
+ case "start":
20
+ return "flex-start";
21
+ case "end":
22
+ return "flex-end";
23
+ case "baseline":
24
+ return "baseline";
25
+ case "stretch":
26
+ return "stretch";
27
+ default:
28
+ return "center";
29
+ }
30
+ }, [e]), p = s(() => {
31
+ switch (t) {
32
+ case "space-between":
33
+ return "space-between";
34
+ case "center":
35
+ return "center";
36
+ case "end":
37
+ return "flex-end";
38
+ default:
39
+ return "flex-start";
40
+ }
41
+ }, [t]), x = n.Children.toArray(l);
42
+ return /* @__PURE__ */ r(
43
+ "div",
44
+ {
45
+ id: o,
46
+ className: `flex ${f}`.trim(),
47
+ style: {
48
+ flexDirection: h,
49
+ alignItems: m,
50
+ justifyContent: p,
51
+ gap: `${c}px`,
52
+ padding: i,
53
+ height: u ? "100%" : void 0,
54
+ width: d ? "100%" : void 0
55
+ },
56
+ children: x.map((w, y) => /* @__PURE__ */ r(n.Fragment, { children: w }, y))
57
+ }
58
+ );
59
+ };
60
+ export {
61
+ g as default
62
+ };
63
+ //# sourceMappingURL=Spacer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spacer.js","sources":["../../src/components/Spacer.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\n\ninterface SpacerProps {\n direction?: 'horizontal' | 'vertical';\n size?: number;\n align?: 'center' | 'start' | 'end' | 'baseline' | 'stretch';\n justifyContent?: 'space-between' | 'end' | 'center';\n padding?: string;\n children: React.ReactNode;\n id?: string;\n fullHeight?: boolean;\n fullWidth?: boolean;\n className?: string;\n}\n\nconst Spacer: React.FC<SpacerProps> = ({\n direction = 'horizontal',\n size = 8,\n children,\n align,\n justifyContent,\n padding,\n id,\n fullHeight = false,\n fullWidth = false,\n className = '',\n}) => {\n const flexDirection = direction === 'vertical' ? 'column' : 'row';\n\n const alignItems = useMemo(() => {\n switch (align) {\n case 'center':\n return 'center';\n case 'start':\n return 'flex-start';\n case 'end':\n return 'flex-end';\n case 'baseline':\n return 'baseline';\n case 'stretch':\n return 'stretch';\n default:\n return 'center';\n }\n }, [align]);\n\n const justifyContentStyle = useMemo(() => {\n switch (justifyContent) {\n case 'space-between':\n return 'space-between';\n case 'center':\n return 'center';\n case 'end':\n return 'flex-end';\n default:\n return 'flex-start';\n }\n }, [justifyContent]);\n\n const childrenArray = React.Children.toArray(children);\n\n return (\n <div\n id={id}\n className={`flex ${className}`.trim()}\n style={{\n flexDirection,\n alignItems,\n justifyContent: justifyContentStyle,\n gap: `${size}px`,\n padding,\n height: fullHeight ? '100%' : undefined,\n width: fullWidth ? '100%' : undefined,\n }}\n >\n {childrenArray.map((child, index) => (\n <React.Fragment key={index}>{child}</React.Fragment>\n ))}\n </div>\n );\n};\n\nexport default Spacer;\n"],"names":["Spacer","direction","size","children","align","justifyContent","padding","id","fullHeight","fullWidth","className","flexDirection","alignItems","useMemo","justifyContentStyle","childrenArray","React","jsx","child","index"],"mappings":";;AAeA,MAAMA,IAAgC,CAAC;AAAA,EACnC,WAAAC,IAAY;AAAA,EACZ,MAAAC,IAAO;AAAA,EACP,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,SAAAC;AAAA,EACA,IAAAC;AAAA,EACA,YAAAC,IAAa;AAAA,EACb,WAAAC,IAAY;AAAA,EACZ,WAAAC,IAAY;AAChB,MAAM;AACF,QAAMC,IAAgBV,MAAc,aAAa,WAAW,OAEtDW,IAAaC,EAAQ,MAAM;AAC7B,YAAQT,GAAA;AAAA,MACJ,KAAK;AACD,eAAO;AAAA,MACX,KAAK;AACD,eAAO;AAAA,MACX,KAAK;AACD,eAAO;AAAA,MACX,KAAK;AACD,eAAO;AAAA,MACX,KAAK;AACD,eAAO;AAAA,MACX;AACI,eAAO;AAAA,IAAA;AAAA,EAEnB,GAAG,CAACA,CAAK,CAAC,GAEJU,IAAsBD,EAAQ,MAAM;AACtC,YAAQR,GAAA;AAAA,MACJ,KAAK;AACD,eAAO;AAAA,MACX,KAAK;AACD,eAAO;AAAA,MACX,KAAK;AACD,eAAO;AAAA,MACX;AACI,eAAO;AAAA,IAAA;AAAA,EAEnB,GAAG,CAACA,CAAc,CAAC,GAEbU,IAAgBC,EAAM,SAAS,QAAQb,CAAQ;AAErD,SACI,gBAAAc;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,IAAAV;AAAA,MACA,WAAW,QAAQG,CAAS,GAAG,KAAA;AAAA,MAC/B,OAAO;AAAA,QACH,eAAAC;AAAA,QACA,YAAAC;AAAA,QACA,gBAAgBE;AAAA,QAChB,KAAK,GAAGZ,CAAI;AAAA,QACZ,SAAAI;AAAA,QACA,QAAQE,IAAa,SAAS;AAAA,QAC9B,OAAOC,IAAY,SAAS;AAAA,MAAA;AAAA,MAG/B,UAAAM,EAAc,IAAI,CAACG,GAAOC,MACvB,gBAAAF,EAACD,EAAM,UAAN,EAA4B,UAAAE,EAAA,GAARC,CAAc,CACtC;AAAA,IAAA;AAAA,EAAA;AAGb;"}
@@ -0,0 +1,86 @@
1
+ import { jsx as r, jsxs as c } from "react/jsx-runtime";
2
+ const l = (e) => {
3
+ switch (e) {
4
+ case "xxxsmall":
5
+ return "w-3.5 h-3.5";
6
+ // 14px
7
+ case "xxsmall":
8
+ return "w-6 h-6";
9
+ // 24px (close to 25px)
10
+ case "xsmall":
11
+ return "w-12 h-12";
12
+ // 48px (close to 50px)
13
+ case "small":
14
+ return "w-24 h-24";
15
+ // 96px (close to 100px)
16
+ case "medium":
17
+ return "w-48 h-48";
18
+ // 192px (close to 200px)
19
+ case "large":
20
+ return "w-96 h-96";
21
+ // 384px (close to 400px)
22
+ default:
23
+ return "w-48 h-48";
24
+ }
25
+ }, i = (e) => {
26
+ switch (e) {
27
+ case "xxxsmall":
28
+ return "min-h-[14px]";
29
+ case "xxsmall":
30
+ return "min-h-[25px]";
31
+ case "xsmall":
32
+ return "min-h-[50px]";
33
+ case "small":
34
+ return "min-h-[100px]";
35
+ case "medium":
36
+ return "min-h-[200px]";
37
+ case "large":
38
+ return "min-h-[400px]";
39
+ default:
40
+ return "min-h-[200px]";
41
+ }
42
+ }, o = ({ size: e = "medium", className: s = "", style: t = {} }) => {
43
+ const a = l(e), n = i(e);
44
+ return /* @__PURE__ */ r(
45
+ "div",
46
+ {
47
+ className: `flex items-center justify-center ${n} ${s}`,
48
+ style: t,
49
+ children: /* @__PURE__ */ c(
50
+ "svg",
51
+ {
52
+ className: `animate-spin motion-reduce:animate-none ${a}`,
53
+ xmlns: "http://www.w3.org/2000/svg",
54
+ fill: "none",
55
+ viewBox: "0 0 24 24",
56
+ style: { color: "var(--malachite-text-dimmed)" },
57
+ children: [
58
+ /* @__PURE__ */ r(
59
+ "circle",
60
+ {
61
+ className: "opacity-25 motion-reduce:opacity-100",
62
+ cx: "12",
63
+ cy: "12",
64
+ r: "10",
65
+ stroke: "currentColor",
66
+ strokeWidth: "4"
67
+ }
68
+ ),
69
+ /* @__PURE__ */ r(
70
+ "path",
71
+ {
72
+ className: "opacity-75 motion-reduce:opacity-0",
73
+ fill: "currentColor",
74
+ d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
75
+ }
76
+ )
77
+ ]
78
+ }
79
+ )
80
+ }
81
+ );
82
+ };
83
+ export {
84
+ o as default
85
+ };
86
+ //# sourceMappingURL=Spinner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spinner.js","sources":["../../src/components/Spinner.tsx"],"sourcesContent":["import React from 'react';\n\ninterface SpinnerProps {\n size?: 'xxxsmall' | 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large';\n className?: string;\n style?: React.CSSProperties;\n}\n\nconst getSizeClasses = (size: SpinnerProps['size']) => {\n switch (size) {\n case 'xxxsmall':\n return 'w-3.5 h-3.5'; // 14px\n case 'xxsmall':\n return 'w-6 h-6'; // 24px (close to 25px)\n case 'xsmall':\n return 'w-12 h-12'; // 48px (close to 50px)\n case 'small':\n return 'w-24 h-24'; // 96px (close to 100px)\n case 'medium':\n return 'w-48 h-48'; // 192px (close to 200px)\n case 'large':\n return 'w-96 h-96'; // 384px (close to 400px)\n default:\n return 'w-48 h-48'; // 192px default\n }\n};\n\nconst getContainerSize = (size: SpinnerProps['size']) => {\n switch (size) {\n case 'xxxsmall':\n return 'min-h-[14px]';\n case 'xxsmall':\n return 'min-h-[25px]';\n case 'xsmall':\n return 'min-h-[50px]';\n case 'small':\n return 'min-h-[100px]';\n case 'medium':\n return 'min-h-[200px]';\n case 'large':\n return 'min-h-[400px]';\n default:\n return 'min-h-[200px]';\n }\n};\n\nconst Spinner: React.FC<SpinnerProps> = ({ size = 'medium', className = '', style = {} }) => {\n const sizeClasses = getSizeClasses(size);\n const containerSizeClasses = getContainerSize(size);\n\n return (\n <div\n className={`flex items-center justify-center ${containerSizeClasses} ${className}`}\n style={style}\n >\n {/* Looping motion can cause nausea and dizziness for users with vestibular\n disorders, and a spinner loops with nothing to look away from. Under reduced\n motion the arc gives way to the full ring: still plainly busy, and a complete\n circle rather than an arc frozen mid-turn, which would read as a stalled\n animation. Same trade as LoadingBar's solid full-width line. */}\n <svg\n className={`animate-spin motion-reduce:animate-none ${sizeClasses}`}\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n style={{ color: 'var(--malachite-text-dimmed)' }}\n >\n <circle\n className=\"opacity-25 motion-reduce:opacity-100\"\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n strokeWidth=\"4\"\n />\n <path\n className=\"opacity-75 motion-reduce:opacity-0\"\n fill=\"currentColor\"\n d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z\"\n />\n </svg>\n </div>\n );\n};\n\nexport default Spinner;\n"],"names":["getSizeClasses","size","getContainerSize","Spinner","className","style","sizeClasses","containerSizeClasses","jsx","jsxs"],"mappings":";AAQA,MAAMA,IAAiB,CAACC,MAA+B;AACnD,UAAQA,GAAA;AAAA,IACJ,KAAK;AACD,aAAO;AAAA;AAAA,IACX,KAAK;AACD,aAAO;AAAA;AAAA,IACX,KAAK;AACD,aAAO;AAAA;AAAA,IACX,KAAK;AACD,aAAO;AAAA;AAAA,IACX,KAAK;AACD,aAAO;AAAA;AAAA,IACX,KAAK;AACD,aAAO;AAAA;AAAA,IACX;AACI,aAAO;AAAA,EAAA;AAEnB,GAEMC,IAAmB,CAACD,MAA+B;AACrD,UAAQA,GAAA;AAAA,IACJ,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX;AACI,aAAO;AAAA,EAAA;AAEnB,GAEME,IAAkC,CAAC,EAAE,MAAAF,IAAO,UAAU,WAAAG,IAAY,IAAI,OAAAC,IAAQ,CAAA,QAAS;AACzF,QAAMC,IAAcN,EAAeC,CAAI,GACjCM,IAAuBL,EAAiBD,CAAI;AAElD,SACI,gBAAAO;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,WAAW,oCAAoCD,CAAoB,IAAIH,CAAS;AAAA,MAChF,OAAAC;AAAA,MAOA,UAAA,gBAAAI;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,WAAW,2CAA2CH,CAAW;AAAA,UACjE,OAAM;AAAA,UACN,MAAK;AAAA,UACL,SAAQ;AAAA,UACR,OAAO,EAAE,OAAO,+BAAA;AAAA,UAEhB,UAAA;AAAA,YAAA,gBAAAE;AAAA,cAAC;AAAA,cAAA;AAAA,gBACG,WAAU;AAAA,gBACV,IAAG;AAAA,gBACH,IAAG;AAAA,gBACH,GAAE;AAAA,gBACF,QAAO;AAAA,gBACP,aAAY;AAAA,cAAA;AAAA,YAAA;AAAA,YAEhB,gBAAAA;AAAA,cAAC;AAAA,cAAA;AAAA,gBACG,WAAU;AAAA,gBACV,MAAK;AAAA,gBACL,GAAE;AAAA,cAAA;AAAA,YAAA;AAAA,UACN;AAAA,QAAA;AAAA,MAAA;AAAA,IACJ;AAAA,EAAA;AAGZ;"}
@@ -0,0 +1,51 @@
1
+ import { jsxs as t, jsx as e } from "react/jsx-runtime";
2
+ import c from "./CustomIcons/DismissIcon.js";
3
+ const r = ({
4
+ onClose: i,
5
+ className: s = ""
6
+ }) => /* @__PURE__ */ e(
7
+ "button",
8
+ {
9
+ type: "button",
10
+ "aria-label": "Close",
11
+ onClick: i,
12
+ className: `flex cursor-pointer items-center justify-center border-0 bg-transparent p-0 transition-colors ${s}`,
13
+ children: /* @__PURE__ */ e(c, { size: 12 })
14
+ }
15
+ ), x = ({
16
+ left: i,
17
+ right: s,
18
+ logo: a,
19
+ onClose: l,
20
+ footer: n
21
+ }) => /* @__PURE__ */ t("div", { className: "flex h-screen w-full overflow-hidden gap-3 bg-[var(--malachite-card-sunken-background)] p-3", children: [
22
+ /* @__PURE__ */ t("div", { className: "flex min-w-0 flex-1 flex-col items-center px-[60px] py-[40px]", children: [
23
+ /* @__PURE__ */ t("div", { className: "flex h-6 w-full shrink-0 items-center justify-between", children: [
24
+ /* @__PURE__ */ e("span", { className: "size-6 shrink-0", "aria-hidden": !0 }),
25
+ a ?? /* @__PURE__ */ e("span", { className: "size-6 shrink-0", "aria-hidden": !0 }),
26
+ /* @__PURE__ */ e("span", { className: "flex size-6 shrink-0 items-center justify-center", children: l ? /* @__PURE__ */ e(
27
+ r,
28
+ {
29
+ onClose: l,
30
+ className: "text-[var(--malachite-text-secondary)] hover:text-[var(--malachite-text-primary)] lg:hidden"
31
+ }
32
+ ) : null })
33
+ ] }),
34
+ /* @__PURE__ */ e("div", { className: "flex w-full min-h-0 flex-1 flex-col overflow-y-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden", children: /* @__PURE__ */ e("div", { className: "m-auto flex w-full max-w-[380px] flex-col items-center py-10", children: i }) }),
35
+ /* @__PURE__ */ e("div", { className: "flex h-6 shrink-0 items-center justify-center", children: n })
36
+ ] }),
37
+ /* @__PURE__ */ t("div", { className: "relative hidden min-w-0 flex-1 flex-col items-center justify-center overflow-hidden rounded-[28px] bg-[#2b2b2b] px-[60px] py-[40px] lg:flex", children: [
38
+ l ? /* @__PURE__ */ e(
39
+ r,
40
+ {
41
+ onClose: l,
42
+ className: "absolute top-[40px] right-[60px] z-10 text-white/70 hover:text-white"
43
+ }
44
+ ) : null,
45
+ s
46
+ ] })
47
+ ] });
48
+ export {
49
+ x as default
50
+ };
51
+ //# sourceMappingURL=SplitScreenLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SplitScreenLayout.js","sources":["../../src/components/SplitScreenLayout.tsx"],"sourcesContent":["import React from 'react';\nimport DismissIcon from './CustomIcons/DismissIcon';\n\ninterface SplitScreenLayoutProps {\n left: React.ReactNode;\n right: React.ReactNode;\n logo?: React.ReactNode;\n onClose?: () => void;\n footer?: React.ReactNode;\n}\n\nconst CloseButton: React.FC<{ onClose: () => void; className?: string }> = ({\n onClose,\n className = '',\n}) => (\n <button\n type=\"button\"\n aria-label=\"Close\"\n onClick={onClose}\n className={`flex cursor-pointer items-center justify-center border-0 bg-transparent p-0 transition-colors ${className}`}\n >\n <DismissIcon size={12} />\n </button>\n);\n\nconst SplitScreenLayout: React.FC<SplitScreenLayoutProps> = ({\n left,\n right,\n logo,\n onClose,\n footer,\n}) => (\n <div className=\"flex h-screen w-full overflow-hidden gap-3 bg-[var(--malachite-card-sunken-background)] p-3\">\n <div className=\"flex min-w-0 flex-1 flex-col items-center px-[60px] py-[40px]\">\n <div className=\"flex h-6 w-full shrink-0 items-center justify-between\">\n <span className=\"size-6 shrink-0\" aria-hidden />\n {logo ?? <span className=\"size-6 shrink-0\" aria-hidden />}\n <span className=\"flex size-6 shrink-0 items-center justify-center\">\n {onClose ? (\n <CloseButton\n onClose={onClose}\n className=\"text-[var(--malachite-text-secondary)] hover:text-[var(--malachite-text-primary)] lg:hidden\"\n />\n ) : null}\n </span>\n </div>\n <div className=\"flex w-full min-h-0 flex-1 flex-col overflow-y-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden\">\n <div className=\"m-auto flex w-full max-w-[380px] flex-col items-center py-10\">\n {left}\n </div>\n </div>\n <div className=\"flex h-6 shrink-0 items-center justify-center\">{footer}</div>\n </div>\n <div className=\"relative hidden min-w-0 flex-1 flex-col items-center justify-center overflow-hidden rounded-[28px] bg-[#2b2b2b] px-[60px] py-[40px] lg:flex\">\n {onClose ? (\n <CloseButton\n onClose={onClose}\n className=\"absolute top-[40px] right-[60px] z-10 text-white/70 hover:text-white\"\n />\n ) : null}\n {right}\n </div>\n </div>\n);\n\nexport default SplitScreenLayout;\n"],"names":["CloseButton","onClose","className","jsx","DismissIcon","SplitScreenLayout","left","right","logo","footer","jsxs"],"mappings":";;AAWA,MAAMA,IAAqE,CAAC;AAAA,EACxE,SAAAC;AAAA,EACA,WAAAC,IAAY;AAChB,MACI,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACG,MAAK;AAAA,IACL,cAAW;AAAA,IACX,SAASF;AAAA,IACT,WAAW,iGAAiGC,CAAS;AAAA,IAErH,UAAA,gBAAAC,EAACC,GAAA,EAAY,MAAM,GAAA,CAAI;AAAA,EAAA;AAC3B,GAGEC,IAAsD,CAAC;AAAA,EACzD,MAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,SAAAP;AAAA,EACA,QAAAQ;AACJ,MACI,gBAAAC,EAAC,OAAA,EAAI,WAAU,+FACX,UAAA;AAAA,EAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,iEACX,UAAA;AAAA,IAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,yDACX,UAAA;AAAA,MAAA,gBAAAP,EAAC,QAAA,EAAK,WAAU,mBAAkB,eAAW,IAAC;AAAA,MAC7CK,KAAQ,gBAAAL,EAAC,QAAA,EAAK,WAAU,mBAAkB,eAAW,IAAC;AAAA,MACvD,gBAAAA,EAAC,QAAA,EAAK,WAAU,oDACX,UAAAF,IACG,gBAAAE;AAAA,QAACH;AAAA,QAAA;AAAA,UACG,SAAAC;AAAA,UACA,WAAU;AAAA,QAAA;AAAA,MAAA,IAEd,KAAA,CACR;AAAA,IAAA,GACJ;AAAA,IACA,gBAAAE,EAAC,SAAI,WAAU,4GACX,4BAAC,OAAA,EAAI,WAAU,gEACV,UAAAG,EAAA,CACL,EAAA,CACJ;AAAA,IACA,gBAAAH,EAAC,OAAA,EAAI,WAAU,iDAAiD,UAAAM,EAAA,CAAO;AAAA,EAAA,GAC3E;AAAA,EACA,gBAAAC,EAAC,OAAA,EAAI,WAAU,+IACV,UAAA;AAAA,IAAAT,IACG,gBAAAE;AAAA,MAACH;AAAA,MAAA;AAAA,QACG,SAAAC;AAAA,QACA,WAAU;AAAA,MAAA;AAAA,IAAA,IAEd;AAAA,IACHM;AAAA,EAAA,EAAA,CACL;AAAA,EAAA,CACJ;"}
@@ -0,0 +1,10 @@
1
+ import { jsxs as c, jsx as e } from "react/jsx-runtime";
2
+ const s = ({ count: t, label: a, className: n = "" }) => /* @__PURE__ */ c("div", { className: `flex items-center gap-[6px] ${n}`, children: [
3
+ /* @__PURE__ */ e("span", { className: "min-w-[16px] h-[16px] px-[4px] rounded-md flex items-center justify-center text-[12px] font-mono font-semibold bg-[var(--malachite-accent-background-glass)] text-[var(--malachite-accent-foreground)]", children: t.toLocaleString() }),
4
+ /* @__PURE__ */ e("span", { className: "text-[13px] font-medium text-[var(--malachite-accent-foreground)]", children: a })
5
+ ] });
6
+ export {
7
+ s as StatBadge,
8
+ s as default
9
+ };
10
+ //# sourceMappingURL=StatBadge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatBadge.js","sources":["../../src/components/StatBadge.tsx"],"sourcesContent":["import React from 'react';\n\nexport interface StatBadgeProps {\n /** The numeric value shown in the pill. */\n count: number;\n /** Caption shown next to the pill. */\n label: string;\n className?: string;\n}\n\nconst StatBadge: React.FC<StatBadgeProps> = ({ count, label, className = '' }) => (\n <div className={`flex items-center gap-[6px] ${className}`}>\n <span className=\"min-w-[16px] h-[16px] px-[4px] rounded-md flex items-center justify-center text-[12px] font-mono font-semibold bg-[var(--malachite-accent-background-glass)] text-[var(--malachite-accent-foreground)]\">\n {count.toLocaleString()}\n </span>\n <span className=\"text-[13px] font-medium text-[var(--malachite-accent-foreground)]\">\n {label}\n </span>\n </div>\n);\n\nexport default StatBadge;\nexport { StatBadge };\n"],"names":["StatBadge","count","label","className","jsxs","jsx"],"mappings":";AAUA,MAAMA,IAAsC,CAAC,EAAE,OAAAC,GAAO,OAAAC,GAAO,WAAAC,IAAY,GAAA,MACrE,gBAAAC,EAAC,OAAA,EAAI,WAAW,+BAA+BD,CAAS,IACpD,UAAA;AAAA,EAAA,gBAAAE,EAAC,QAAA,EAAK,WAAU,0MACX,UAAAJ,EAAM,kBACX;AAAA,EACA,gBAAAI,EAAC,QAAA,EAAK,WAAU,qEACX,UAAAH,EAAA,CACL;AAAA,EAAA,CACJ;"}
@@ -0,0 +1,48 @@
1
+ import { jsxs as p, jsx as e } from "react/jsx-runtime";
2
+ const A = {
3
+ small: "text-[22px]",
4
+ medium: "text-[32px]",
5
+ large: "text-[40px]"
6
+ }, E = {
7
+ left: "items-start text-left",
8
+ center: "items-center text-center",
9
+ right: "items-end text-right"
10
+ }, L = "flex flex-col gap-[3px]", f = "text-[10px] font-semibold uppercase leading-none tracking-[0.06em] m-0 text-[var(--malachite-text-dimmed)]", g = "font-bold leading-none tracking-[-0.01em] m-0 text-[var(--malachite-text-primary)]", h = "text-[11px] font-medium leading-[1.3] m-0 text-[var(--malachite-text-dimmed)]", _ = ({
11
+ label: a,
12
+ value: n,
13
+ sub: t,
14
+ accent: s,
15
+ valueSize: l = "medium",
16
+ width: i,
17
+ minWidth: m,
18
+ padding: c = "0 16px",
19
+ align: r = "left",
20
+ className: x = "",
21
+ style: o = {}
22
+ }) => {
23
+ const S = `${L} ${E[r]} ${x}`, d = `${g} ${A[l]}`;
24
+ return /* @__PURE__ */ p(
25
+ "div",
26
+ {
27
+ className: S,
28
+ style: { width: i, minWidth: m, padding: c, ...o },
29
+ children: [
30
+ /* @__PURE__ */ e("span", { className: f, children: a }),
31
+ /* @__PURE__ */ e(
32
+ "span",
33
+ {
34
+ className: d,
35
+ style: s ? { color: s } : void 0,
36
+ children: n
37
+ }
38
+ ),
39
+ t != null && /* @__PURE__ */ e("span", { className: h, children: t })
40
+ ]
41
+ }
42
+ );
43
+ };
44
+ export {
45
+ _ as Statistic,
46
+ _ as default
47
+ };
48
+ //# sourceMappingURL=Statistic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Statistic.js","sources":["../../src/components/Statistic.tsx"],"sourcesContent":["import React from 'react';\n\nexport type StatisticValueSize = 'small' | 'medium' | 'large';\n\nexport interface StatisticProps {\n label: string | React.ReactNode;\n value: string | number | React.ReactNode;\n sub?: string | React.ReactNode;\n accent?: string;\n valueSize?: StatisticValueSize;\n width?: string | number;\n minWidth?: string | number;\n padding?: string;\n align?: 'left' | 'center' | 'right';\n className?: string;\n style?: React.CSSProperties;\n}\n\nconst VALUE_SIZE_CLASSES: Record<StatisticValueSize, string> = {\n small: 'text-[22px]',\n medium: 'text-[32px]',\n large: 'text-[40px]',\n};\n\nconst ALIGN_CLASSES: Record<NonNullable<StatisticProps['align']>, string> = {\n left: 'items-start text-left',\n center: 'items-center text-center',\n right: 'items-end text-right',\n};\n\nconst CONTAINER_CLASSES = 'flex flex-col gap-[3px]';\nconst LABEL_CLASSES =\n 'text-[10px] font-semibold uppercase leading-none tracking-[0.06em] m-0 text-[var(--malachite-text-dimmed)]';\nconst VALUE_BASE_CLASSES =\n 'font-bold leading-none tracking-[-0.01em] m-0 text-[var(--malachite-text-primary)]';\nconst SUB_CLASSES =\n 'text-[11px] font-medium leading-[1.3] m-0 text-[var(--malachite-text-dimmed)]';\n\nconst Statistic: React.FC<StatisticProps> = ({\n label,\n value,\n sub,\n accent,\n valueSize = 'medium',\n width,\n minWidth,\n padding = '0 16px',\n align = 'left',\n className = '',\n style = {},\n}) => {\n const containerClasses = `${CONTAINER_CLASSES} ${ALIGN_CLASSES[align]} ${className}`;\n const valueClasses = `${VALUE_BASE_CLASSES} ${VALUE_SIZE_CLASSES[valueSize]}`;\n\n return (\n <div\n className={containerClasses}\n style={{ width, minWidth, padding, ...style }}\n >\n <span className={LABEL_CLASSES}>{label}</span>\n <span\n className={valueClasses}\n style={accent ? { color: accent } : undefined}\n >\n {value}\n </span>\n {sub !== undefined && sub !== null && <span className={SUB_CLASSES}>{sub}</span>}\n </div>\n );\n};\n\nexport default Statistic;\nexport { Statistic };\n"],"names":["VALUE_SIZE_CLASSES","ALIGN_CLASSES","CONTAINER_CLASSES","LABEL_CLASSES","VALUE_BASE_CLASSES","SUB_CLASSES","Statistic","label","value","sub","accent","valueSize","width","minWidth","padding","align","className","style","containerClasses","valueClasses","jsxs","jsx"],"mappings":";AAkBA,MAAMA,IAAyD;AAAA,EAC3D,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACX,GAEMC,IAAsE;AAAA,EACxE,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,OAAO;AACX,GAEMC,IAAoB,2BACpBC,IACF,8GACEC,IACF,sFACEC,IACF,iFAEEC,IAAsC,CAAC;AAAA,EACzC,OAAAC;AAAA,EACA,OAAAC;AAAA,EACA,KAAAC;AAAA,EACA,QAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC,IAAU;AAAA,EACV,OAAAC,IAAQ;AAAA,EACR,WAAAC,IAAY;AAAA,EACZ,OAAAC,IAAQ,CAAA;AACZ,MAAM;AACF,QAAMC,IAAmB,GAAGhB,CAAiB,IAAID,EAAcc,CAAK,CAAC,IAAIC,CAAS,IAC5EG,IAAe,GAAGf,CAAkB,IAAIJ,EAAmBW,CAAS,CAAC;AAE3E,SACI,gBAAAS;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,WAAWF;AAAA,MACX,OAAO,EAAE,OAAAN,GAAO,UAAAC,GAAU,SAAAC,GAAS,GAAGG,EAAA;AAAA,MAEtC,UAAA;AAAA,QAAA,gBAAAI,EAAC,QAAA,EAAK,WAAWlB,GAAgB,UAAAI,GAAM;AAAA,QACvC,gBAAAc;AAAA,UAAC;AAAA,UAAA;AAAA,YACG,WAAWF;AAAA,YACX,OAAOT,IAAS,EAAE,OAAOA,MAAW;AAAA,YAEnC,UAAAF;AAAA,UAAA;AAAA,QAAA;AAAA,QAEiBC,KAAQ,0BAAS,QAAA,EAAK,WAAWJ,GAAc,UAAAI,EAAA,CAAI;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGrF;"}
@@ -0,0 +1,56 @@
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ const n = {
3
+ success: "var(--malachite-text-success, rgb(2, 122, 66))",
4
+ error: "var(--malachite-text-error, rgb(237, 53, 54))",
5
+ warning: "var(--malachite-text-warning, rgb(150, 88, 10))",
6
+ info: "var(--malachite-tag-primary-foreground, rgb(37, 130, 234))"
7
+ }, s = {
8
+ success: /* @__PURE__ */ r("path", { d: "M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z" }),
9
+ error: /* @__PURE__ */ r("path", { d: "M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z" }),
10
+ warning: /* @__PURE__ */ r("path", { d: "M10.75 5h2.5v9.5h-2.5zm0 11.5h2.5v2.5h-2.5z" }),
11
+ info: /* @__PURE__ */ r("path", { d: "M10.75 5h2.5v2.5h-2.5zm0 4.5h2.5v9.5h-2.5z" })
12
+ }, c = {
13
+ default: 0.5,
14
+ bold: 1
15
+ }, d = ({
16
+ type: e = "success",
17
+ size: t = 48,
18
+ glyph: l = "default",
19
+ className: o = "",
20
+ "aria-label": i
21
+ }) => {
22
+ const a = Math.round(t * c[l]);
23
+ return /* @__PURE__ */ r(
24
+ "div",
25
+ {
26
+ className: `flex items-center justify-center rounded-full ${o}`,
27
+ style: {
28
+ display: "flex",
29
+ alignItems: "center",
30
+ justifyContent: "center",
31
+ borderRadius: "50%",
32
+ width: `${t}px`,
33
+ height: `${t}px`,
34
+ backgroundColor: n[e]
35
+ },
36
+ children: /* @__PURE__ */ r(
37
+ "svg",
38
+ {
39
+ width: a,
40
+ height: a,
41
+ viewBox: "0 0 24 24",
42
+ fill: "currentColor",
43
+ role: "img",
44
+ "aria-label": i ?? e,
45
+ style: { color: "#fff" },
46
+ children: s[e]
47
+ }
48
+ )
49
+ }
50
+ );
51
+ };
52
+ export {
53
+ d as StatusBadge,
54
+ d as default
55
+ };
56
+ //# sourceMappingURL=StatusBadge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatusBadge.js","sources":["../../src/components/StatusBadge.tsx"],"sourcesContent":["import React from 'react';\n\nexport type StatusBadgeType = 'success' | 'error' | 'warning' | 'info';\n\n/**\n * How much of the badge the glyph fills.\n *\n * `default` is half the diameter, which is the right proportion at the sizes a badge is\n * usually drawn. `bold` is for the small end: at the 14px a table row gives it, half a\n * badge is a mark under 3px tall, and the tone is doing all the work.\n *\n * `bold` takes the glyph's box to the full diameter rather than merely most of it, so the\n * box and the badge share an edge. Anything short of that leaves a fractional margin at odd\n * sizes (13px inside 14px), which the browser rounds onto one side and draws off centre.\n * Nothing collides with the edge: the furthest point of any glyph is the tick's, at 86% of\n * the radius.\n */\nexport type StatusBadgeGlyph = 'default' | 'bold';\n\nexport interface StatusBadgeProps {\n type?: StatusBadgeType;\n size?: number;\n glyph?: StatusBadgeGlyph;\n className?: string;\n 'aria-label'?: string;\n}\n\n// Use the same foreground hues as the matching text tokens so the badge reads as\n// the same green/red/etc. as the copy beside it (the *-background tokens are blown\n// out in dark mode).\nconst BACKGROUNDS: Record<StatusBadgeType, string> = {\n success: 'var(--malachite-text-success, rgb(2, 122, 66))',\n error: 'var(--malachite-text-error, rgb(237, 53, 54))',\n warning: 'var(--malachite-text-warning, rgb(150, 88, 10))',\n info: 'var(--malachite-tag-primary-foreground, rgb(37, 130, 234))',\n};\n\n// Filled glyphs on a 24×24 grid. They must be filled shapes rather than strokes: the svg\n// sets `fill=\"currentColor\"` and the paths inherit it, so `color` is what paints them.\n//\n// All four span y 5 to 19, so no type reads as a smaller badge than another. The bar and\n// dot of `warning`/`info` are drawn slightly wider than the diagonal stroke of the other\n// two, because an upright shape of the same thickness reads lighter than a diagonal one.\nconst GLYPHS: Record<StatusBadgeType, React.ReactNode> = {\n success: <path d=\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\" />,\n error: (\n <path d=\"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\" />\n ),\n warning: <path d=\"M10.75 5h2.5v9.5h-2.5zm0 11.5h2.5v2.5h-2.5z\" />,\n info: <path d=\"M10.75 5h2.5v2.5h-2.5zm0 4.5h2.5v9.5h-2.5z\" />,\n};\n\n/** How much of the badge's diameter the glyph's box takes, per `glyph`. */\nconst GLYPH_SCALES: Record<StatusBadgeGlyph, number> = {\n default: 0.5,\n bold: 1,\n};\n\nconst StatusBadge: React.FC<StatusBadgeProps> = ({\n type = 'success',\n size = 48,\n glyph = 'default',\n className = '',\n 'aria-label': ariaLabel,\n}) => {\n const iconSize = Math.round(size * GLYPH_SCALES[glyph]);\n\n return (\n <div\n className={`flex items-center justify-center rounded-full ${className}`}\n // The circle and the centring are repeated inline rather than left to the\n // Tailwind above, so the badge survives outside a shadow root. A consumer that\n // drops one in beside ordinary page markup would otherwise get a square with\n // the glyph jammed in a corner, and be forced to wrap it in a `ThemeScope` or\n // `MalachiteContext` purely to get its shape back.\n style={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: '50%',\n width: `${size}px`,\n height: `${size}px`,\n backgroundColor: BACKGROUNDS[type],\n }}\n >\n <svg\n width={iconSize}\n height={iconSize}\n viewBox=\"0 0 24 24\"\n // Stated here rather than left to the library's `svg path` rule, which is\n // scoped to the shadow root: outside one the paths fall back to their\n // initial black and the glyph disappears into a dark badge.\n fill=\"currentColor\"\n // `role=\"img\"` with `aria-label` names the badge without an SVG `<title>`,\n // which browsers render as a native tooltip: on a badge that a consumer has\n // already wrapped in a real one, that fired a second square-edged box\n // alongside it and read the tone name out as its text.\n role=\"img\"\n aria-label={ariaLabel ?? type}\n style={{ color: '#fff' }}\n >\n {GLYPHS[type]}\n </svg>\n </div>\n );\n};\n\nexport default StatusBadge;\nexport { StatusBadge };\n"],"names":["BACKGROUNDS","GLYPHS","jsx","GLYPH_SCALES","StatusBadge","type","size","glyph","className","ariaLabel","iconSize"],"mappings":";AA8BA,MAAMA,IAA+C;AAAA,EACjD,SAAS;AAAA,EACT,OAAO;AAAA,EACP,SAAS;AAAA,EACT,MAAM;AACV,GAQMC,IAAmD;AAAA,EACrD,SAAS,gBAAAC,EAAC,QAAA,EAAK,GAAE,oDAAA,CAAoD;AAAA,EACrE,OACI,gBAAAA,EAAC,QAAA,EAAK,GAAE,wGAAA,CAAwG;AAAA,EAEpH,SAAS,gBAAAA,EAAC,QAAA,EAAK,GAAE,8CAAA,CAA8C;AAAA,EAC/D,MAAM,gBAAAA,EAAC,QAAA,EAAK,GAAE,6CAAA,CAA6C;AAC/D,GAGMC,IAAiD;AAAA,EACnD,SAAS;AAAA,EACT,MAAM;AACV,GAEMC,IAA0C,CAAC;AAAA,EAC7C,MAAAC,IAAO;AAAA,EACP,MAAAC,IAAO;AAAA,EACP,OAAAC,IAAQ;AAAA,EACR,WAAAC,IAAY;AAAA,EACZ,cAAcC;AAClB,MAAM;AACF,QAAMC,IAAW,KAAK,MAAMJ,IAAOH,EAAaI,CAAK,CAAC;AAEtD,SACI,gBAAAL;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,WAAW,iDAAiDM,CAAS;AAAA,MAMrE,OAAO;AAAA,QACH,SAAS;AAAA,QACT,YAAY;AAAA,QACZ,gBAAgB;AAAA,QAChB,cAAc;AAAA,QACd,OAAO,GAAGF,CAAI;AAAA,QACd,QAAQ,GAAGA,CAAI;AAAA,QACf,iBAAiBN,EAAYK,CAAI;AAAA,MAAA;AAAA,MAGrC,UAAA,gBAAAH;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,OAAOQ;AAAA,UACP,QAAQA;AAAA,UACR,SAAQ;AAAA,UAIR,MAAK;AAAA,UAKL,MAAK;AAAA,UACL,cAAYD,KAAaJ;AAAA,UACzB,OAAO,EAAE,OAAO,OAAA;AAAA,UAEf,YAAOA,CAAI;AAAA,QAAA;AAAA,MAAA;AAAA,IAChB;AAAA,EAAA;AAGZ;"}
@@ -0,0 +1,52 @@
1
+ import { jsx as e, jsxs as p } from "react/jsx-runtime";
2
+ import u from "./CustomIcons/CheckIcon.js";
3
+ import b from "./CustomIcons/StepCurrentIcon.js";
4
+ import h from "./CustomIcons/StepUpcomingIcon.js";
5
+ import { FOCUS_RING as x } from "./focusRing.js";
6
+ const f = {
7
+ current: "shadow-default border-[var(--malachite-card-border)] bg-[var(--malachite-card-background)] text-[var(--malachite-text-primary)]",
8
+ complete: "border-transparent bg-[var(--malachite-success-background-glass)] text-[var(--malachite-text-success)]",
9
+ upcoming: "border-transparent bg-[var(--malachite-card-dimmed-background)] text-[var(--malachite-text-secondary)]"
10
+ }, g = ({ state: a }) => a === "complete" ? /* @__PURE__ */ e(u, { size: 14 }) : a === "current" ? /* @__PURE__ */ e(b, { size: 14 }) : /* @__PURE__ */ e(h, { size: 14 }), w = ({
11
+ items: a,
12
+ activeKey: n,
13
+ completedKeys: l = [],
14
+ onChange: c,
15
+ "aria-label": o,
16
+ "aria-labelledby": s,
17
+ className: i = ""
18
+ }) => {
19
+ const d = new Set(l);
20
+ return /* @__PURE__ */ e(
21
+ "ol",
22
+ {
23
+ "aria-label": o,
24
+ "aria-labelledby": s,
25
+ className: `m-0 flex list-none gap-2 p-0 ${i}`.trim(),
26
+ children: a.map((r, m) => {
27
+ const t = r.key === n ? "current" : d.has(r.key) ? "complete" : "upcoming";
28
+ return /* @__PURE__ */ e("li", { className: "min-w-0 flex-1", children: /* @__PURE__ */ p(
29
+ "button",
30
+ {
31
+ type: "button",
32
+ disabled: r.disabled,
33
+ "aria-current": t === "current" ? "step" : void 0,
34
+ onClick: () => c(r.key),
35
+ className: `${x} flex w-full cursor-pointer items-center gap-2 overflow-hidden rounded-lg border px-3 py-2.5 text-left text-[13px] font-semibold transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${f[t]}`,
36
+ children: [
37
+ /* @__PURE__ */ e("span", { "aria-hidden": "true", className: "flex shrink-0 items-center", children: /* @__PURE__ */ e(g, { state: t }) }),
38
+ /* @__PURE__ */ e("span", { className: "min-w-0 flex-1 truncate", children: r.label }),
39
+ t === "complete" && /* @__PURE__ */ e("span", { className: "sr-only", children: "Completed" }),
40
+ /* @__PURE__ */ e("span", { className: "shrink-0 font-normal text-[var(--malachite-text-secondary)]", children: r.hint ?? `Step ${m + 1}` })
41
+ ]
42
+ }
43
+ ) }, r.key);
44
+ })
45
+ }
46
+ );
47
+ };
48
+ export {
49
+ w as StepTabs,
50
+ w as default
51
+ };
52
+ //# sourceMappingURL=StepTabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StepTabs.js","sources":["../../src/components/StepTabs.tsx"],"sourcesContent":["import React from 'react';\nimport CheckIcon from './CustomIcons/CheckIcon';\nimport StepCurrentIcon from './CustomIcons/StepCurrentIcon';\nimport StepUpcomingIcon from './CustomIcons/StepUpcomingIcon';\nimport { FOCUS_RING } from './focusRing';\n\nexport interface StepTabItem {\n key: string;\n label: string;\n /** Position marker shown at the trailing edge. Defaults to `Step ${index + 1}`. */\n hint?: string;\n disabled?: boolean;\n}\n\nexport interface StepTabsProps {\n items: StepTabItem[];\n activeKey: string;\n /** Steps already satisfied. They render a check and stay reachable, so a user can go back. */\n completedKeys?: string[];\n onChange: (key: string) => void;\n 'aria-label'?: string;\n 'aria-labelledby'?: string;\n className?: string;\n}\n\ntype StepState = 'current' | 'complete' | 'upcoming';\n\nconst STATE_CLASSES: Record<StepState, string> = {\n current:\n 'shadow-default border-[var(--malachite-card-border)] bg-[var(--malachite-card-background)] text-[var(--malachite-text-primary)]',\n complete:\n 'border-transparent bg-[var(--malachite-success-background-glass)] text-[var(--malachite-text-success)]',\n upcoming:\n 'border-transparent bg-[var(--malachite-card-dimmed-background)] text-[var(--malachite-text-secondary)]',\n};\n\nconst StepIcon: React.FC<{ state: StepState }> = ({ state }) => {\n if (state === 'complete') {\n return <CheckIcon size={14} />;\n }\n if (state === 'current') {\n return <StepCurrentIcon size={14} />;\n }\n return <StepUpcomingIcon size={14} />;\n};\n\n/**\n * A horizontal step navigator whose steps are destinations, unlike the read-only `Stepper`.\n * Each step is a button with `aria-current=\"step\"`, not a tab.\n */\nexport const StepTabs: React.FC<StepTabsProps> = ({\n items,\n activeKey,\n completedKeys = [],\n onChange,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n className = '',\n}) => {\n const completed = new Set(completedKeys);\n\n return (\n <ol\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n className={`m-0 flex list-none gap-2 p-0 ${className}`.trim()}\n >\n {items.map((item, index) => {\n const state: StepState =\n item.key === activeKey\n ? 'current'\n : completed.has(item.key)\n ? 'complete'\n : 'upcoming';\n\n return (\n <li key={item.key} className=\"min-w-0 flex-1\">\n <button\n type=\"button\"\n disabled={item.disabled}\n aria-current={state === 'current' ? 'step' : undefined}\n onClick={() => onChange(item.key)}\n className={`${FOCUS_RING} flex w-full cursor-pointer items-center gap-2 overflow-hidden rounded-lg border px-3 py-2.5 text-left text-[13px] font-semibold transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${STATE_CLASSES[state]}`}\n >\n <span aria-hidden=\"true\" className=\"flex shrink-0 items-center\">\n <StepIcon state={state} />\n </span>\n <span className=\"min-w-0 flex-1 truncate\">{item.label}</span>\n {/* The state is otherwise carried only by colour and an aria-hidden icon. */}\n {state === 'complete' && <span className=\"sr-only\">Completed</span>}\n <span className=\"shrink-0 font-normal text-[var(--malachite-text-secondary)]\">\n {item.hint ?? `Step ${index + 1}`}\n </span>\n </button>\n </li>\n );\n })}\n </ol>\n );\n};\n\nexport default StepTabs;\n"],"names":["STATE_CLASSES","StepIcon","state","jsx","CheckIcon","StepCurrentIcon","StepUpcomingIcon","StepTabs","items","activeKey","completedKeys","onChange","ariaLabel","ariaLabelledBy","className","completed","item","index","jsxs","FOCUS_RING"],"mappings":";;;;;AA2BA,MAAMA,IAA2C;AAAA,EAC7C,SACI;AAAA,EACJ,UACI;AAAA,EACJ,UACI;AACR,GAEMC,IAA2C,CAAC,EAAE,OAAAC,QAC5CA,MAAU,aACH,gBAAAC,EAACC,GAAA,EAAU,MAAM,GAAA,CAAI,IAE5BF,MAAU,YACH,gBAAAC,EAACE,GAAA,EAAgB,MAAM,GAAA,CAAI,IAE/B,gBAAAF,EAACG,GAAA,EAAiB,MAAM,GAAA,CAAI,GAO1BC,IAAoC,CAAC;AAAA,EAC9C,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,eAAAC,IAAgB,CAAA;AAAA,EAChB,UAAAC;AAAA,EACA,cAAcC;AAAA,EACd,mBAAmBC;AAAA,EACnB,WAAAC,IAAY;AAChB,MAAM;AACF,QAAMC,IAAY,IAAI,IAAIL,CAAa;AAEvC,SACI,gBAAAP;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,cAAYS;AAAA,MACZ,mBAAiBC;AAAA,MACjB,WAAW,gCAAgCC,CAAS,GAAG,KAAA;AAAA,MAEtD,UAAAN,EAAM,IAAI,CAACQ,GAAMC,MAAU;AACxB,cAAMf,IACFc,EAAK,QAAQP,IACP,YACAM,EAAU,IAAIC,EAAK,GAAG,IACpB,aACA;AAEZ,eACI,gBAAAb,EAAC,MAAA,EAAkB,WAAU,kBACzB,UAAA,gBAAAe;AAAA,UAAC;AAAA,UAAA;AAAA,YACG,MAAK;AAAA,YACL,UAAUF,EAAK;AAAA,YACf,gBAAcd,MAAU,YAAY,SAAS;AAAA,YAC7C,SAAS,MAAMS,EAASK,EAAK,GAAG;AAAA,YAChC,WAAW,GAAGG,CAAU,sMAAsMnB,EAAcE,CAAK,CAAC;AAAA,YAElP,UAAA;AAAA,cAAA,gBAAAC,EAAC,QAAA,EAAK,eAAY,QAAO,WAAU,8BAC/B,UAAA,gBAAAA,EAACF,GAAA,EAAS,OAAAC,GAAc,EAAA,CAC5B;AAAA,cACA,gBAAAC,EAAC,QAAA,EAAK,WAAU,2BAA2B,YAAK,OAAM;AAAA,cAErDD,MAAU,cAAc,gBAAAC,EAAC,QAAA,EAAK,WAAU,WAAU,UAAA,aAAS;AAAA,cAC5D,gBAAAA,EAAC,UAAK,WAAU,+DACX,YAAK,QAAQ,QAAQc,IAAQ,CAAC,GAAA,CACnC;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA,EACJ,GAjBKD,EAAK,GAkBd;AAAA,MAER,CAAC;AAAA,IAAA;AAAA,EAAA;AAGb;"}
@@ -0,0 +1,40 @@
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ const f = ({
3
+ steps: i,
4
+ active: t,
5
+ onChange: o,
6
+ className: p = "",
7
+ "aria-label": l,
8
+ "aria-labelledby": s
9
+ }) => {
10
+ const m = Array.from({ length: Math.max(0, i) }, (r, a) => a);
11
+ return /* @__PURE__ */ e(
12
+ "div",
13
+ {
14
+ role: !!(l ?? s) ? "group" : void 0,
15
+ "aria-label": l,
16
+ "aria-labelledby": s,
17
+ className: `flex gap-[4px] ${p}`,
18
+ children: m.map((r) => {
19
+ const a = r === t, u = r < t, c = a ? "var(--malachite-accent-foreground)" : u ? "color-mix(in srgb, var(--malachite-accent-foreground), white 50%)" : "var(--malachite-card-border)", n = `h-[8px] rounded-full transition-all ${a ? "w-[28px]" : "w-[16px]"}`;
20
+ return o ? /* @__PURE__ */ e(
21
+ "button",
22
+ {
23
+ type: "button",
24
+ "aria-label": `Go to step ${r + 1}`,
25
+ "aria-current": a ? "step" : void 0,
26
+ onClick: () => o(r),
27
+ className: `${n} border-0 p-0 cursor-pointer`,
28
+ style: { backgroundColor: c }
29
+ },
30
+ r
31
+ ) : /* @__PURE__ */ e("span", { className: n, style: { backgroundColor: c } }, r);
32
+ })
33
+ }
34
+ );
35
+ };
36
+ export {
37
+ f as Stepper,
38
+ f as default
39
+ };
40
+ //# sourceMappingURL=Stepper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Stepper.js","sources":["../../src/components/Stepper.tsx"],"sourcesContent":["import React from 'react';\n\nexport interface StepperProps {\n /** Total number of steps. */\n steps: number;\n /** Active step index (0-based). */\n active: number;\n /** When provided, each step becomes a clickable control. */\n onChange?: (index: number) => void;\n className?: string;\n 'aria-label'?: string;\n 'aria-labelledby'?: string;\n}\n\nconst Stepper: React.FC<StepperProps> = ({\n steps,\n active,\n onChange,\n className = '',\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n}) => {\n const segments = Array.from({ length: Math.max(0, steps) }, (_, index) => index);\n // A role is what makes aria-label apply at all, but an unnamed group is pure noise\n // in the a11y tree, so the role only appears alongside a name. progressbar would be\n // wrong either way: its contents are presentational and cannot expose the step buttons.\n const isNamed = Boolean(ariaLabel ?? ariaLabelledBy);\n\n return (\n <div\n role={isNamed ? 'group' : undefined}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n className={`flex gap-[4px] ${className}`}\n >\n {segments.map((index) => {\n const isActive = index === active;\n const isCompleted = index < active;\n // Completed steps get a lightened accent, the active step the full accent,\n // upcoming steps a neutral border colour.\n const backgroundColor = isActive\n ? 'var(--malachite-accent-foreground)'\n : isCompleted\n ? 'color-mix(in srgb, var(--malachite-accent-foreground), white 50%)'\n : 'var(--malachite-card-border)';\n const base = `h-[8px] rounded-full transition-all ${isActive ? 'w-[28px]' : 'w-[16px]'}`;\n\n if (!onChange) {\n return <span key={index} className={base} style={{ backgroundColor }} />;\n }\n\n return (\n <button\n key={index}\n type=\"button\"\n aria-label={`Go to step ${index + 1}`}\n aria-current={isActive ? 'step' : undefined}\n onClick={() => onChange(index)}\n className={`${base} border-0 p-0 cursor-pointer`}\n style={{ backgroundColor }}\n />\n );\n })}\n </div>\n );\n};\n\nexport default Stepper;\nexport { Stepper };\n"],"names":["Stepper","steps","active","onChange","className","ariaLabel","ariaLabelledBy","segments","_","index","jsx","isActive","isCompleted","backgroundColor","base"],"mappings":";AAcA,MAAMA,IAAkC,CAAC;AAAA,EACrC,OAAAC;AAAA,EACA,QAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,cAAcC;AAAA,EACd,mBAAmBC;AACvB,MAAM;AACF,QAAMC,IAAW,MAAM,KAAK,EAAE,QAAQ,KAAK,IAAI,GAAGN,CAAK,EAAA,GAAK,CAACO,GAAGC,MAAUA,CAAK;AAM/E,SACI,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,MAJQ,GAAQL,KAAaC,KAIb,UAAU;AAAA,MAC1B,cAAYD;AAAA,MACZ,mBAAiBC;AAAA,MACjB,WAAW,kBAAkBF,CAAS;AAAA,MAErC,UAAAG,EAAS,IAAI,CAACE,MAAU;AACrB,cAAME,IAAWF,MAAUP,GACrBU,IAAcH,IAAQP,GAGtBW,IAAkBF,IAClB,uCACAC,IACE,sEACA,gCACFE,IAAO,uCAAuCH,IAAW,aAAa,UAAU;AAEtF,eAAKR,IAKD,gBAAAO;AAAA,UAAC;AAAA,UAAA;AAAA,YAEG,MAAK;AAAA,YACL,cAAY,cAAcD,IAAQ,CAAC;AAAA,YACnC,gBAAcE,IAAW,SAAS;AAAA,YAClC,SAAS,MAAMR,EAASM,CAAK;AAAA,YAC7B,WAAW,GAAGK,CAAI;AAAA,YAClB,OAAO,EAAE,iBAAAD,EAAA;AAAA,UAAgB;AAAA,UANpBJ;AAAA,QAAA,IALF,gBAAAC,EAAC,UAAiB,WAAWI,GAAM,OAAO,EAAE,iBAAAD,OAAjCJ,CAAoD;AAAA,MAc9E,CAAC;AAAA,IAAA;AAAA,EAAA;AAGb;"}