@pathscale/ui 2.1.0 → 2.2.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 (605) hide show
  1. package/README.md +1 -1
  2. package/dist/components/accordion/Accordion.css +3 -3
  3. package/dist/components/accordion/Accordion.generated.d.ts +8 -8
  4. package/dist/components/accordion/Accordion.generated.js +9 -14
  5. package/dist/components/address/Address.css +66 -0
  6. package/dist/components/address/Address.generated.d.ts +35 -0
  7. package/dist/components/address/Address.generated.js +106 -0
  8. package/dist/components/address/Address.interactions.d.ts +48 -0
  9. package/dist/components/address/Address.interactions.js +25 -0
  10. package/dist/components/address/Address.recipe.d.ts +60 -0
  11. package/dist/components/address/Address.recipe.js +101 -0
  12. package/dist/components/address/index.d.ts +5 -0
  13. package/dist/components/address/index.js +3 -0
  14. package/dist/components/alert/Alert.css +125 -72
  15. package/dist/components/alert/Alert.generated.d.ts +12 -30
  16. package/dist/components/alert/Alert.generated.js +95 -191
  17. package/dist/components/alert/Alert.recipe.d.ts +57 -24
  18. package/dist/components/alert/Alert.recipe.js +90 -49
  19. package/dist/components/alert/index.d.ts +3 -1
  20. package/dist/components/alert/index.js +2 -1
  21. package/dist/components/auth-card/AuthCard.css +44 -0
  22. package/dist/components/auth-card/AuthCard.generated.d.ts +12 -0
  23. package/dist/components/auth-card/{AuthCard.js → AuthCard.generated.js} +33 -46
  24. package/dist/components/auth-card/AuthCard.recipe.d.ts +30 -0
  25. package/dist/components/auth-card/AuthCard.recipe.js +79 -0
  26. package/dist/components/auth-card/index.d.ts +2 -1
  27. package/dist/components/auth-card/index.js +1 -1
  28. package/dist/components/auth-field-group/AuthFieldGroup.css +19 -0
  29. package/dist/components/auth-field-group/AuthFieldGroup.generated.d.ts +10 -0
  30. package/dist/components/auth-field-group/AuthFieldGroup.generated.js +17 -0
  31. package/dist/components/auth-field-group/AuthFieldGroup.recipe.d.ts +19 -0
  32. package/dist/components/auth-field-group/AuthFieldGroup.recipe.js +39 -0
  33. package/dist/components/auth-field-group/index.d.ts +2 -1
  34. package/dist/components/auth-field-group/index.js +1 -1
  35. package/dist/components/auth-footer-links/AuthFooterLinks.css +53 -0
  36. package/dist/components/auth-footer-links/AuthFooterLinks.generated.d.ts +17 -0
  37. package/dist/components/auth-footer-links/AuthFooterLinks.generated.js +58 -0
  38. package/dist/components/auth-footer-links/AuthFooterLinks.recipe.d.ts +22 -0
  39. package/dist/components/auth-footer-links/AuthFooterLinks.recipe.js +47 -0
  40. package/dist/components/auth-footer-links/index.d.ts +2 -1
  41. package/dist/components/auth-footer-links/index.js +1 -1
  42. package/dist/components/auth-message/AuthMessage.css +6 -0
  43. package/dist/components/auth-message/AuthMessage.generated.d.ts +9 -0
  44. package/dist/components/auth-message/AuthMessage.generated.js +27 -0
  45. package/dist/components/auth-message/AuthMessage.recipe.d.ts +9 -0
  46. package/dist/components/auth-message/AuthMessage.recipe.js +23 -0
  47. package/dist/components/auth-message/index.d.ts +2 -0
  48. package/dist/components/auth-message/index.js +1 -0
  49. package/dist/components/auth-powered-by/AuthPoweredBy.css +61 -0
  50. package/dist/components/auth-powered-by/AuthPoweredBy.generated.d.ts +14 -0
  51. package/dist/components/auth-powered-by/AuthPoweredBy.generated.js +41 -0
  52. package/dist/components/auth-powered-by/AuthPoweredBy.recipe.d.ts +34 -0
  53. package/dist/components/auth-powered-by/AuthPoweredBy.recipe.js +74 -0
  54. package/dist/components/auth-powered-by/index.d.ts +2 -1
  55. package/dist/components/auth-powered-by/index.js +1 -1
  56. package/dist/components/auth-submit-button/AuthSubmitButton.css +5 -0
  57. package/dist/components/auth-submit-button/AuthSubmitButton.generated.d.ts +14 -0
  58. package/dist/components/auth-submit-button/AuthSubmitButton.generated.js +34 -0
  59. package/dist/components/auth-submit-button/AuthSubmitButton.recipe.d.ts +9 -0
  60. package/dist/components/auth-submit-button/AuthSubmitButton.recipe.js +23 -0
  61. package/dist/components/auth-submit-button/index.d.ts +2 -1
  62. package/dist/components/auth-submit-button/index.js +1 -1
  63. package/dist/components/avatar/Avatar.css +33 -16
  64. package/dist/components/avatar/Avatar.generated.d.ts +5 -6
  65. package/dist/components/avatar/Avatar.generated.js +6 -9
  66. package/dist/components/avatar/Avatar.recipe.d.ts +9 -6
  67. package/dist/components/avatar/Avatar.recipe.js +9 -6
  68. package/dist/components/avatar/AvatarGroup.generated.d.ts +2 -3
  69. package/dist/components/avatar/AvatarGroup.generated.js +1 -2
  70. package/dist/components/avatar/index.d.ts +1 -1
  71. package/dist/components/badge/Badge.css +81 -69
  72. package/dist/components/badge/Badge.generated.d.ts +4 -4
  73. package/dist/components/badge/Badge.generated.js +8 -4
  74. package/dist/components/badge/Badge.recipe.d.ts +20 -9
  75. package/dist/components/badge/Badge.recipe.js +20 -9
  76. package/dist/components/{breadcrumbs/Breadcrumbs.css → breadcrumb/Breadcrumb.css} +10 -10
  77. package/dist/components/breadcrumb/Breadcrumb.generated.d.ts +21 -0
  78. package/dist/components/{breadcrumbs/Breadcrumbs.generated.js → breadcrumb/Breadcrumb.generated.js} +29 -31
  79. package/dist/components/breadcrumb/Breadcrumb.recipe.d.ts +18 -0
  80. package/dist/components/{breadcrumbs/Breadcrumbs.recipe.js → breadcrumb/Breadcrumb.recipe.js} +17 -17
  81. package/dist/components/breadcrumb/index.d.ts +1 -0
  82. package/dist/components/breadcrumb/index.js +1 -0
  83. package/dist/components/button/Button.css +218 -81
  84. package/dist/components/button/Button.generated.d.ts +12 -16
  85. package/dist/components/button/Button.generated.js +31 -61
  86. package/dist/components/button/Button.recipe.d.ts +80 -33
  87. package/dist/components/button/Button.recipe.js +131 -52
  88. package/dist/components/button/index.d.ts +3 -2
  89. package/dist/components/button/index.js +2 -1
  90. package/dist/components/button-group/ButtonGroup.generated.d.ts +6 -7
  91. package/dist/components/button-group/ButtonGroup.generated.js +5 -7
  92. package/dist/components/button-group/context.d.ts +3 -3
  93. package/dist/components/calendar/Calendar.css +8 -8
  94. package/dist/components/calendar/Calendar.generated.d.ts +3 -3
  95. package/dist/components/calendar/Calendar.generated.js +3 -4
  96. package/dist/components/card/Card.css +170 -64
  97. package/dist/components/card/Card.generated.d.ts +22 -25
  98. package/dist/components/card/Card.generated.js +71 -144
  99. package/dist/components/card/Card.recipe.d.ts +110 -24
  100. package/dist/components/card/Card.recipe.js +171 -46
  101. package/dist/components/card/index.d.ts +16 -1
  102. package/dist/components/card/index.js +11 -1
  103. package/dist/components/chatbubble/ChatBubble.css +12 -12
  104. package/dist/components/chatbubble/ChatBubble.generated.d.ts +2 -2
  105. package/dist/components/chatbubble/ChatBubble.generated.js +1 -2
  106. package/dist/components/chatbubble/ChatBubble.recipe.d.ts +9 -9
  107. package/dist/components/chatbubble/ChatBubble.recipe.js +9 -9
  108. package/dist/components/chatbubble/ChatBubbleAvatar.generated.d.ts +2 -2
  109. package/dist/components/chatbubble/ChatBubbleAvatar.generated.js +3 -3
  110. package/dist/components/chatbubble/ChatBubbleFooter.generated.d.ts +2 -2
  111. package/dist/components/chatbubble/ChatBubbleFooter.generated.js +2 -3
  112. package/dist/components/chatbubble/ChatBubbleHeader.generated.d.ts +2 -2
  113. package/dist/components/chatbubble/ChatBubbleHeader.generated.js +2 -3
  114. package/dist/components/chatbubble/ChatBubbleMessage.generated.d.ts +3 -3
  115. package/dist/components/chatbubble/ChatBubbleMessage.generated.js +6 -6
  116. package/dist/components/chatbubble/ChatBubbleTime.generated.d.ts +2 -2
  117. package/dist/components/chatbubble/ChatBubbleTime.generated.js +2 -3
  118. package/dist/components/checkbox/Checkbox.css +2 -2
  119. package/dist/components/checkbox/Checkbox.generated.d.ts +4 -4
  120. package/dist/components/checkbox/Checkbox.generated.js +6 -6
  121. package/dist/components/checkbox-group/CheckboxGroup.generated.d.ts +4 -4
  122. package/dist/components/checkbox-group/CheckboxGroup.generated.js +6 -6
  123. package/dist/components/chip/Chip.css +76 -52
  124. package/dist/components/chip/Chip.generated.d.ts +3 -3
  125. package/dist/components/chip/Chip.generated.js +6 -7
  126. package/dist/components/chip/Chip.recipe.d.ts +9 -7
  127. package/dist/components/chip/Chip.recipe.js +9 -7
  128. package/dist/components/close-button/CloseButton.css +2 -2
  129. package/dist/components/close-button/CloseButton.generated.d.ts +3 -4
  130. package/dist/components/close-button/CloseButton.generated.js +3 -4
  131. package/dist/components/{disclosure/Disclosure.css → collapsible/Collapsible.css} +18 -18
  132. package/dist/components/collapsible/Collapsible.generated.d.ts +46 -0
  133. package/dist/components/{disclosure/Disclosure.generated.js → collapsible/Collapsible.generated.js} +59 -86
  134. package/dist/components/collapsible/Collapsible.recipe.d.ts +28 -0
  135. package/dist/components/collapsible/Collapsible.recipe.js +77 -0
  136. package/dist/components/collapsible/index.d.ts +11 -0
  137. package/dist/components/collapsible/index.js +4 -0
  138. package/dist/components/color-area/ColorArea.css +5 -5
  139. package/dist/components/color-area/ColorArea.generated.d.ts +3 -3
  140. package/dist/components/color-area/ColorArea.generated.js +3 -4
  141. package/dist/components/color-field/ColorField.css +1 -1
  142. package/dist/components/color-field/ColorField.generated.d.ts +3 -3
  143. package/dist/components/color-field/ColorField.generated.js +3 -4
  144. package/dist/components/color-picker/ColorPicker.generated.d.ts +3 -3
  145. package/dist/components/color-picker/ColorPicker.generated.js +16 -20
  146. package/dist/components/color-slider/ColorSlider.css +5 -5
  147. package/dist/components/color-slider/ColorSlider.generated.d.ts +3 -3
  148. package/dist/components/color-slider/ColorSlider.generated.js +3 -4
  149. package/dist/components/color-swatch/ColorSwatch.css +5 -5
  150. package/dist/components/color-swatch/ColorSwatch.generated.d.ts +3 -3
  151. package/dist/components/color-swatch/ColorSwatch.generated.js +3 -4
  152. package/dist/components/color-swatch-picker/ColorSwatchPicker.generated.d.ts +3 -3
  153. package/dist/components/color-swatch-picker/ColorSwatchPicker.generated.js +3 -4
  154. package/dist/components/color-wheel-flower/ColorWheelFlower.css +11 -11
  155. package/dist/components/color-wheel-flower/ColorWheelFlower.generated.d.ts +0 -1
  156. package/dist/components/color-wheel-flower/ColorWheelFlower.generated.js +5 -6
  157. package/dist/components/combo-box/ComboBox.css +5 -5
  158. package/dist/components/combo-box/ComboBox.generated.d.ts +11 -12
  159. package/dist/components/combo-box/ComboBox.generated.js +17 -23
  160. package/dist/components/composer/Composer.css +109 -0
  161. package/dist/components/composer/Composer.generated.d.ts +46 -0
  162. package/dist/components/composer/Composer.generated.js +153 -0
  163. package/dist/components/composer/Composer.interactions.d.ts +93 -0
  164. package/dist/components/composer/Composer.interactions.js +42 -0
  165. package/dist/components/composer/Composer.recipe.d.ts +80 -0
  166. package/dist/components/composer/Composer.recipe.js +146 -0
  167. package/dist/components/composer/index.d.ts +5 -0
  168. package/dist/components/composer/index.js +3 -0
  169. package/dist/components/date-field/DateField.generated.d.ts +12 -13
  170. package/dist/components/date-field/DateField.generated.js +15 -22
  171. package/dist/components/date-picker/DatePicker.css +1 -1
  172. package/dist/components/date-picker/DatePicker.generated.d.ts +4 -4
  173. package/dist/components/date-picker/DatePicker.generated.js +7 -8
  174. package/dist/components/date-range-picker/DateRangePicker.css +1 -1
  175. package/dist/components/date-range-picker/DateRangePicker.generated.d.ts +4 -4
  176. package/dist/components/date-range-picker/DateRangePicker.generated.js +7 -8
  177. package/dist/components/{modal/Modal.css → dialog/Dialog.css} +73 -73
  178. package/dist/components/dialog/Dialog.generated.d.ts +84 -0
  179. package/dist/components/{modal/Modal.generated.js → dialog/Dialog.generated.js} +81 -91
  180. package/dist/components/dialog/Dialog.recipe.d.ts +104 -0
  181. package/dist/components/dialog/Dialog.recipe.js +178 -0
  182. package/dist/components/dialog/index.d.ts +1 -0
  183. package/dist/components/dialog/index.js +1 -0
  184. package/dist/components/{floating-dock/FloatingDock.css → dock/Dock.css} +32 -32
  185. package/dist/components/{floating-dock/FloatingDock.generated.d.ts → dock/Dock.generated.d.ts} +11 -11
  186. package/dist/components/{floating-dock/FloatingDock.generated.js → dock/Dock.generated.js} +17 -18
  187. package/dist/components/dock/Dock.recipe.d.ts +31 -0
  188. package/dist/components/dock/Dock.recipe.js +45 -0
  189. package/dist/components/dock/index.d.ts +2 -0
  190. package/dist/components/dock/index.js +1 -0
  191. package/dist/components/drawer/Drawer.a11y.d.ts +1 -1
  192. package/dist/components/drawer/Drawer.css +9 -9
  193. package/dist/components/drawer/Drawer.generated.d.ts +13 -13
  194. package/dist/components/drawer/Drawer.generated.js +15 -26
  195. package/dist/components/dropdown/Dropdown.css +8 -8
  196. package/dist/components/dropdown/Dropdown.generated.d.ts +0 -1
  197. package/dist/components/dropdown/Dropdown.generated.js +1 -2
  198. package/dist/components/{empty-state/EmptyState.css → empty/Empty.css} +5 -5
  199. package/dist/components/empty/Empty.generated.d.ts +33 -0
  200. package/dist/components/{empty-state/EmptyState.generated.js → empty/Empty.generated.js} +36 -41
  201. package/dist/components/empty/Empty.recipe.d.ts +20 -0
  202. package/dist/components/{empty-state/EmptyState.recipe.js → empty/Empty.recipe.js} +21 -21
  203. package/dist/components/empty/index.d.ts +3 -0
  204. package/dist/components/empty/index.js +1 -0
  205. package/dist/components/fieldset/Fieldset.generated.d.ts +5 -5
  206. package/dist/components/fieldset/Fieldset.generated.js +4 -8
  207. package/dist/components/flex/Flex.generated.d.ts +2 -2
  208. package/dist/components/flex/Flex.generated.js +1 -2
  209. package/dist/components/footer/Footer.generated.d.ts +2 -2
  210. package/dist/components/footer/Footer.generated.js +1 -2
  211. package/dist/components/footer/FooterTitle.generated.d.ts +2 -2
  212. package/dist/components/footer/FooterTitle.generated.js +1 -2
  213. package/dist/components/form/FieldErrorMessage.generated.d.ts +0 -1
  214. package/dist/components/form/FieldErrorMessage.generated.js +1 -1
  215. package/dist/components/form/Form.generated.d.ts +3 -3
  216. package/dist/components/form/Form.generated.js +2 -4
  217. package/dist/components/form/FormField.generated.d.ts +0 -1
  218. package/dist/components/form/FormField.generated.js +9 -5
  219. package/dist/components/form/FormSubmitButton.generated.d.ts +1 -1
  220. package/dist/components/form/FormSubmitButton.generated.js +3 -6
  221. package/dist/components/glow-card/GlowCard.css +1 -1
  222. package/dist/components/glow-card/GlowCard.generated.d.ts +2 -2
  223. package/dist/components/glow-card/GlowCard.generated.js +1 -2
  224. package/dist/components/grid/Grid.generated.d.ts +2 -2
  225. package/dist/components/grid/Grid.generated.js +1 -2
  226. package/dist/components/header/Header.generated.d.ts +2 -2
  227. package/dist/components/header/Header.generated.js +1 -2
  228. package/dist/components/icon/Icon.css +37 -1
  229. package/dist/components/icon/Icon.generated.d.ts +17 -7
  230. package/dist/components/icon/Icon.generated.js +40 -22
  231. package/dist/components/icon/Icon.interactions.d.ts +8 -0
  232. package/dist/components/icon/Icon.interactions.js +10 -0
  233. package/dist/components/icon/Icon.recipe.d.ts +27 -6
  234. package/dist/components/icon/Icon.recipe.js +36 -8
  235. package/dist/components/icon/index.d.ts +2 -1
  236. package/dist/components/icon/index.js +2 -1
  237. package/dist/components/immersive-landing/ImmersiveLanding.css +12 -12
  238. package/dist/components/immersive-landing/ImmersiveLanding.generated.js +1 -2
  239. package/dist/components/immersive-landing/ImmersiveLandingArrows.generated.js +3 -4
  240. package/dist/components/immersive-landing/ImmersiveLandingNavigation.generated.js +1 -2
  241. package/dist/components/immersive-landing/ImmersiveLandingPage.generated.js +1 -2
  242. package/dist/components/immersive-landing/components/CookieConsent.js +3 -3
  243. package/dist/components/immersive-landing/components/FirefoxPWABanner.js +5 -5
  244. package/dist/components/immersive-landing/components/PWAInstallPrompt.js +3 -3
  245. package/dist/components/immersive-landing/types.d.ts +5 -5
  246. package/dist/components/input/Input.css +1 -1
  247. package/dist/components/input/Input.generated.d.ts +6 -10
  248. package/dist/components/input/Input.generated.js +25 -32
  249. package/dist/components/input-otp/InputOTP.generated.d.ts +7 -7
  250. package/dist/components/input-otp/InputOTP.generated.js +9 -12
  251. package/dist/components/join/Join.generated.d.ts +2 -2
  252. package/dist/components/join/Join.generated.js +1 -2
  253. package/dist/components/kbd/Kbd.css +2 -2
  254. package/dist/components/kbd/Kbd.generated.d.ts +4 -4
  255. package/dist/components/kbd/Kbd.generated.js +3 -6
  256. package/dist/components/label/Label.generated.d.ts +5 -5
  257. package/dist/components/label/Label.generated.js +10 -10
  258. package/dist/components/language-switcher/LanguageSwitcher.css +3 -3
  259. package/dist/components/language-switcher/LanguageSwitcher.generated.d.ts +2 -2
  260. package/dist/components/language-switcher/LanguageSwitcher.generated.js +2 -3
  261. package/dist/components/link/Link.css +2 -2
  262. package/dist/components/link/Link.generated.d.ts +4 -4
  263. package/dist/components/link/Link.generated.js +4 -6
  264. package/dist/components/list-box/ListBox.css +2 -2
  265. package/dist/components/list-box/ListBox.generated.d.ts +4 -4
  266. package/dist/components/list-box/ListBox.generated.js +5 -6
  267. package/dist/components/list-box/ListBoxItem.generated.d.ts +4 -4
  268. package/dist/components/list-box/ListBoxItem.generated.js +5 -7
  269. package/dist/components/list-box/ListBoxSection.generated.d.ts +2 -2
  270. package/dist/components/list-box/ListBoxSection.generated.js +1 -2
  271. package/dist/components/live-chat/LiveChat.css +8 -8
  272. package/dist/components/live-chat/LiveChatBubble.generated.d.ts +2 -2
  273. package/dist/components/live-chat/LiveChatBubble.generated.js +1 -2
  274. package/dist/components/live-chat/LiveChatPanel.generated.d.ts +2 -2
  275. package/dist/components/live-chat/LiveChatPanel.generated.js +5 -6
  276. package/dist/components/menu/Menu.css +2 -2
  277. package/dist/components/menu/Menu.generated.d.ts +4 -4
  278. package/dist/components/menu/Menu.generated.js +5 -6
  279. package/dist/components/menu/MenuItem.generated.d.ts +5 -5
  280. package/dist/components/menu/MenuItem.generated.js +6 -9
  281. package/dist/components/menu/MenuSection.generated.d.ts +2 -2
  282. package/dist/components/menu/MenuSection.generated.js +1 -2
  283. package/dist/components/metal-border/MetalBorder.generated.d.ts +2 -2
  284. package/dist/components/metal-border/MetalBorder.generated.js +1 -2
  285. package/dist/components/meter/Meter.css +34 -18
  286. package/dist/components/meter/Meter.generated.d.ts +7 -7
  287. package/dist/components/meter/Meter.generated.js +9 -13
  288. package/dist/components/meter/Meter.recipe.d.ts +9 -6
  289. package/dist/components/meter/Meter.recipe.js +9 -6
  290. package/dist/components/navbar/Navbar.css +13 -13
  291. package/dist/components/navbar/Navbar.generated.d.ts +2 -3
  292. package/dist/components/navbar/Navbar.generated.js +1 -2
  293. package/dist/components/navbar/Navbar.recipe.d.ts +12 -9
  294. package/dist/components/navbar/Navbar.recipe.js +13 -10
  295. package/dist/components/navbar/NavbarRow.generated.d.ts +5 -3
  296. package/dist/components/navbar/NavbarRow.generated.js +4 -4
  297. package/dist/components/navbar/NavbarSection.generated.d.ts +0 -1
  298. package/dist/components/navbar/NavbarSection.generated.js +1 -2
  299. package/dist/components/navbar/NavbarStack.generated.d.ts +2 -3
  300. package/dist/components/navbar/NavbarStack.generated.js +1 -2
  301. package/dist/components/noise-background/NoiseBackground.generated.d.ts +2 -2
  302. package/dist/components/noise-background/NoiseBackground.generated.js +1 -2
  303. package/dist/components/pagination/Pagination.css +1 -1
  304. package/dist/components/pagination/Pagination.generated.d.ts +3 -3
  305. package/dist/components/pagination/Pagination.generated.js +3 -4
  306. package/dist/components/password-field/PasswordField.css +12 -0
  307. package/dist/components/password-field/PasswordField.generated.d.ts +29 -0
  308. package/dist/components/password-field/PasswordField.generated.js +95 -0
  309. package/dist/components/password-field/{PasswordField.d.ts → PasswordField.interactions.d.ts} +40 -38
  310. package/dist/components/password-field/PasswordField.interactions.js +48 -0
  311. package/dist/components/password-field/PasswordField.recipe.d.ts +12 -0
  312. package/dist/components/password-field/PasswordField.recipe.js +31 -0
  313. package/dist/components/password-field/index.d.ts +3 -1
  314. package/dist/components/password-field/index.js +2 -1
  315. package/dist/components/password-requirements/PasswordRequirements.css +42 -0
  316. package/dist/components/password-requirements/PasswordRequirements.generated.d.ts +12 -0
  317. package/dist/components/password-requirements/PasswordRequirements.generated.js +69 -0
  318. package/dist/components/password-requirements/PasswordRequirements.recipe.d.ts +24 -0
  319. package/dist/components/password-requirements/PasswordRequirements.recipe.js +63 -0
  320. package/dist/components/password-requirements/index.d.ts +2 -1
  321. package/dist/components/password-requirements/index.js +1 -1
  322. package/dist/components/popover/Popover.css +3 -3
  323. package/dist/components/popover/Popover.generated.d.ts +8 -8
  324. package/dist/components/popover/Popover.generated.js +9 -15
  325. package/dist/components/progress/Progress.css +121 -0
  326. package/dist/components/progress/Progress.generated.d.ts +20 -0
  327. package/dist/components/{progress-bar/ProgressBar.generated.js → progress/Progress.generated.js} +12 -13
  328. package/dist/components/progress/Progress.recipe.d.ts +32 -0
  329. package/dist/components/progress/Progress.recipe.js +46 -0
  330. package/dist/components/progress/index.d.ts +2 -0
  331. package/dist/components/progress/index.js +1 -0
  332. package/dist/components/radial-progress/RadialProgress.css +99 -0
  333. package/dist/components/radial-progress/RadialProgress.generated.d.ts +19 -0
  334. package/dist/components/{progress-circle/ProgressCircle.generated.js → radial-progress/RadialProgress.generated.js} +12 -13
  335. package/dist/components/radial-progress/RadialProgress.recipe.d.ts +31 -0
  336. package/dist/components/radial-progress/RadialProgress.recipe.js +45 -0
  337. package/dist/components/radial-progress/index.d.ts +2 -0
  338. package/dist/components/radial-progress/index.js +1 -0
  339. package/dist/components/radio/Radio.css +3 -3
  340. package/dist/components/radio/Radio.generated.d.ts +4 -4
  341. package/dist/components/radio/Radio.generated.js +6 -6
  342. package/dist/components/radio-group/RadioGroup.generated.d.ts +4 -4
  343. package/dist/components/radio-group/RadioGroup.generated.js +6 -6
  344. package/dist/components/range-calendar/RangeCalendar.css +1 -1
  345. package/dist/components/range-calendar/RangeCalendar.generated.d.ts +3 -3
  346. package/dist/components/range-calendar/RangeCalendar.generated.js +5 -6
  347. package/dist/components/{scroll-shadow/ScrollShadow.css → scroll-area/ScrollArea.css} +20 -20
  348. package/dist/components/scroll-area/ScrollArea.generated.d.ts +19 -0
  349. package/dist/components/{scroll-shadow/ScrollShadow.generated.js → scroll-area/ScrollArea.generated.js} +15 -16
  350. package/dist/components/scroll-area/ScrollArea.recipe.d.ts +19 -0
  351. package/dist/components/{scroll-shadow/ScrollShadow.recipe.js → scroll-area/ScrollArea.recipe.js} +6 -6
  352. package/dist/components/scroll-area/index.d.ts +2 -0
  353. package/dist/components/scroll-area/index.js +1 -0
  354. package/dist/components/scroll-area/useScrollArea.d.ts +13 -0
  355. package/dist/components/{scroll-shadow/useScrollShadow.js → scroll-area/useScrollArea.js} +6 -6
  356. package/dist/components/select/Select.css +7 -7
  357. package/dist/components/select/Select.generated.d.ts +11 -11
  358. package/dist/components/select/Select.generated.js +16 -23
  359. package/dist/components/separator/Separator.generated.d.ts +2 -2
  360. package/dist/components/separator/Separator.generated.js +1 -2
  361. package/dist/components/size-picker/SizePicker.generated.d.ts +2 -2
  362. package/dist/components/size-picker/SizePicker.generated.js +5 -3
  363. package/dist/components/skeleton/Skeleton.css +71 -0
  364. package/dist/components/skeleton/Skeleton.generated.d.ts +13 -4
  365. package/dist/components/skeleton/Skeleton.generated.js +36 -6
  366. package/dist/components/skeleton/Skeleton.recipe.d.ts +39 -10
  367. package/dist/components/skeleton/Skeleton.recipe.js +88 -12
  368. package/dist/components/skeleton/index.d.ts +3 -2
  369. package/dist/components/skeleton/index.js +2 -1
  370. package/dist/components/slider/Slider.css +8 -8
  371. package/dist/components/slider/Slider.generated.d.ts +2 -3
  372. package/dist/components/slider/Slider.generated.js +1 -2
  373. package/dist/components/spinner/Spinner.generated.d.ts +6 -8
  374. package/dist/components/spinner/Spinner.generated.js +4 -4
  375. package/dist/components/spinner/Spinner.recipe.d.ts +15 -31
  376. package/dist/components/spinner/Spinner.recipe.js +67 -32
  377. package/dist/components/spinner/index.d.ts +3 -2
  378. package/dist/components/spinner/index.js +2 -1
  379. package/dist/components/status/index.d.ts +3 -0
  380. package/dist/components/status/index.js +1 -0
  381. package/dist/components/status/status.d.ts +167 -0
  382. package/dist/components/status/status.js +101 -0
  383. package/dist/components/{toggle/Toggle.css → switch/Switch.css} +83 -63
  384. package/dist/components/{toggle/Toggle.generated.d.ts → switch/Switch.generated.d.ts} +7 -7
  385. package/dist/components/{toggle/Toggle.generated.js → switch/Switch.generated.js} +18 -19
  386. package/dist/components/switch/Switch.recipe.d.ts +43 -0
  387. package/dist/components/switch/Switch.recipe.js +97 -0
  388. package/dist/components/{toggle → switch}/index.d.ts +1 -1
  389. package/dist/components/switch/index.js +1 -0
  390. package/dist/components/table/ExpandToggle.generated.d.ts +2 -2
  391. package/dist/components/table/ExpandToggle.generated.js +3 -4
  392. package/dist/components/table/InlineConfirm.generated.d.ts +3 -3
  393. package/dist/components/table/InlineConfirm.generated.js +13 -18
  394. package/dist/components/table/MobileListView.generated.d.ts +2 -2
  395. package/dist/components/table/MobileListView.generated.js +6 -7
  396. package/dist/components/table/SortIcon.generated.d.ts +2 -2
  397. package/dist/components/table/SortIcon.generated.js +2 -3
  398. package/dist/components/table/Table.css +7 -7
  399. package/dist/components/table/Table.generated.d.ts +16 -16
  400. package/dist/components/table/Table.generated.js +15 -30
  401. package/dist/components/table/VirtualSpacerRow.generated.d.ts +2 -2
  402. package/dist/components/table/VirtualSpacerRow.generated.js +1 -2
  403. package/dist/components/tabs/Tabs.css +5 -5
  404. package/dist/components/tabs/Tabs.generated.d.ts +2 -1
  405. package/dist/components/tabs/Tabs.generated.js +2 -2
  406. package/dist/components/text/Text.generated.d.ts +2 -2
  407. package/dist/components/text/Text.generated.js +1 -2
  408. package/dist/components/textarea/Textarea.generated.d.ts +16 -7
  409. package/dist/components/textarea/Textarea.generated.js +47 -7
  410. package/dist/components/textarea/Textarea.recipe.d.ts +9 -1
  411. package/dist/components/textarea/Textarea.recipe.js +16 -3
  412. package/dist/components/textarea/index.d.ts +1 -2
  413. package/dist/components/textarea/index.js +1 -1
  414. package/dist/components/theme-color-picker/ThemeColorPicker.generated.d.ts +2 -2
  415. package/dist/components/theme-color-picker/ThemeColorPicker.generated.js +2 -3
  416. package/dist/components/time-field/TimeField.generated.d.ts +12 -13
  417. package/dist/components/time-field/TimeField.generated.js +15 -22
  418. package/dist/components/toast/Toast.css +4 -4
  419. package/dist/components/toast/Toast.generated.d.ts +10 -10
  420. package/dist/components/toast/Toast.generated.js +16 -24
  421. package/dist/components/toolbar/Toolbar.css +2 -2
  422. package/dist/components/toolbar/Toolbar.generated.d.ts +2 -2
  423. package/dist/components/toolbar/Toolbar.generated.js +1 -2
  424. package/dist/components/tooltip/Tooltip.css +4 -4
  425. package/dist/components/tooltip/Tooltip.generated.d.ts +6 -6
  426. package/dist/components/tooltip/Tooltip.generated.js +7 -11
  427. package/dist/components/types.d.ts +0 -7
  428. package/dist/components/video-preview/VideoPreview.generated.d.ts +2 -2
  429. package/dist/components/video-preview/VideoPreview.generated.js +1 -2
  430. package/dist/components/vocabulary.d.ts +267 -0
  431. package/dist/components/vocabulary.js +46 -0
  432. package/dist/index.css +0 -1
  433. package/dist/index.d.ts +53 -113
  434. package/dist/index.js +32 -67
  435. package/dist/lab.d.ts +44 -0
  436. package/dist/lab.js +24 -0
  437. package/dist/layouts.manifest.json +77 -218
  438. package/dist/purge-manifest.json +13075 -17765
  439. package/dist/styles/themes/dark.css +27 -0
  440. package/dist/styles/themes/light.css +29 -0
  441. package/package.json +13 -12
  442. package/dist/components/auth-card/AuthCard.d.ts +0 -12
  443. package/dist/components/auth-error-message/AuthErrorMessage.d.ts +0 -7
  444. package/dist/components/auth-error-message/AuthErrorMessage.js +0 -35
  445. package/dist/components/auth-error-message/index.d.ts +0 -1
  446. package/dist/components/auth-error-message/index.js +0 -1
  447. package/dist/components/auth-field-group/AuthFieldGroup.d.ts +0 -8
  448. package/dist/components/auth-field-group/AuthFieldGroup.js +0 -33
  449. package/dist/components/auth-footer-links/AuthFooterLinks.d.ts +0 -15
  450. package/dist/components/auth-footer-links/AuthFooterLinks.js +0 -74
  451. package/dist/components/auth-form/AuthForm.d.ts +0 -9
  452. package/dist/components/auth-form/AuthForm.js +0 -36
  453. package/dist/components/auth-form/index.d.ts +0 -1
  454. package/dist/components/auth-form/index.js +0 -1
  455. package/dist/components/auth-powered-by/AuthPoweredBy.d.ts +0 -11
  456. package/dist/components/auth-powered-by/AuthPoweredBy.js +0 -59
  457. package/dist/components/auth-submit-button/AuthSubmitButton.d.ts +0 -11
  458. package/dist/components/auth-submit-button/AuthSubmitButton.js +0 -51
  459. package/dist/components/auth-success-message/AuthSuccessMessage.d.ts +0 -7
  460. package/dist/components/auth-success-message/AuthSuccessMessage.js +0 -36
  461. package/dist/components/auth-success-message/index.d.ts +0 -1
  462. package/dist/components/auth-success-message/index.js +0 -1
  463. package/dist/components/breadcrumbs/Breadcrumbs.generated.d.ts +0 -21
  464. package/dist/components/breadcrumbs/Breadcrumbs.recipe.d.ts +0 -18
  465. package/dist/components/breadcrumbs/index.d.ts +0 -1
  466. package/dist/components/breadcrumbs/index.js +0 -1
  467. package/dist/components/description/Description.css +0 -10
  468. package/dist/components/description/Description.generated.d.ts +0 -12
  469. package/dist/components/description/Description.generated.js +0 -47
  470. package/dist/components/description/Description.recipe.d.ts +0 -10
  471. package/dist/components/description/Description.recipe.js +0 -29
  472. package/dist/components/description/index.d.ts +0 -1
  473. package/dist/components/description/index.js +0 -1
  474. package/dist/components/disclosure/Disclosure.generated.d.ts +0 -46
  475. package/dist/components/disclosure/Disclosure.recipe.d.ts +0 -28
  476. package/dist/components/disclosure/Disclosure.recipe.js +0 -77
  477. package/dist/components/disclosure/index.d.ts +0 -11
  478. package/dist/components/disclosure/index.js +0 -4
  479. package/dist/components/disclosure-group/DisclosureGroup.css +0 -9
  480. package/dist/components/disclosure-group/DisclosureGroup.generated.d.ts +0 -26
  481. package/dist/components/disclosure-group/DisclosureGroup.generated.js +0 -80
  482. package/dist/components/disclosure-group/DisclosureGroup.recipe.d.ts +0 -10
  483. package/dist/components/disclosure-group/DisclosureGroup.recipe.js +0 -29
  484. package/dist/components/disclosure-group/index.d.ts +0 -9
  485. package/dist/components/disclosure-group/index.js +0 -5
  486. package/dist/components/disclosure-group/useDisclosureGroupNavigation.d.ts +0 -14
  487. package/dist/components/disclosure-group/useDisclosureGroupNavigation.js +0 -54
  488. package/dist/components/empty-state/EmptyState.generated.d.ts +0 -33
  489. package/dist/components/empty-state/EmptyState.recipe.d.ts +0 -20
  490. package/dist/components/empty-state/index.d.ts +0 -3
  491. package/dist/components/empty-state/index.js +0 -1
  492. package/dist/components/error-message/ErrorMessage.css +0 -20
  493. package/dist/components/error-message/ErrorMessage.generated.d.ts +0 -12
  494. package/dist/components/error-message/ErrorMessage.generated.js +0 -47
  495. package/dist/components/error-message/ErrorMessage.recipe.d.ts +0 -10
  496. package/dist/components/error-message/ErrorMessage.recipe.js +0 -29
  497. package/dist/components/error-message/index.d.ts +0 -1
  498. package/dist/components/error-message/index.js +0 -1
  499. package/dist/components/field-error/FieldError.css +0 -27
  500. package/dist/components/field-error/FieldError.generated.d.ts +0 -22
  501. package/dist/components/field-error/FieldError.generated.js +0 -76
  502. package/dist/components/field-error/FieldError.recipe.d.ts +0 -10
  503. package/dist/components/field-error/FieldError.recipe.js +0 -29
  504. package/dist/components/field-error/index.d.ts +0 -1
  505. package/dist/components/field-error/index.js +0 -1
  506. package/dist/components/floating-dock/FloatingDock.recipe.d.ts +0 -31
  507. package/dist/components/floating-dock/FloatingDock.recipe.js +0 -45
  508. package/dist/components/floating-dock/index.d.ts +0 -2
  509. package/dist/components/floating-dock/index.js +0 -1
  510. package/dist/components/glass-panel/GlassPanel.css +0 -359
  511. package/dist/components/glass-panel/GlassPanel.generated.d.ts +0 -21
  512. package/dist/components/glass-panel/GlassPanel.generated.js +0 -116
  513. package/dist/components/glass-panel/GlassPanel.recipe.d.ts +0 -33
  514. package/dist/components/glass-panel/GlassPanel.recipe.js +0 -47
  515. package/dist/components/glass-panel/index.d.ts +0 -1
  516. package/dist/components/glass-panel/index.js +0 -1
  517. package/dist/components/input-group/InputGroup.css +0 -172
  518. package/dist/components/input-group/InputGroup.generated.d.ts +0 -45
  519. package/dist/components/input-group/InputGroup.generated.js +0 -246
  520. package/dist/components/input-group/InputGroup.recipe.d.ts +0 -32
  521. package/dist/components/input-group/InputGroup.recipe.js +0 -71
  522. package/dist/components/input-group/index.d.ts +0 -1
  523. package/dist/components/input-group/index.js +0 -1
  524. package/dist/components/modal/Modal.generated.d.ts +0 -84
  525. package/dist/components/modal/Modal.recipe.d.ts +0 -104
  526. package/dist/components/modal/Modal.recipe.js +0 -178
  527. package/dist/components/modal/index.d.ts +0 -1
  528. package/dist/components/modal/index.js +0 -1
  529. package/dist/components/number-field/NumberField.css +0 -198
  530. package/dist/components/number-field/NumberField.generated.d.ts +0 -49
  531. package/dist/components/number-field/NumberField.generated.js +0 -372
  532. package/dist/components/number-field/NumberField.recipe.d.ts +0 -40
  533. package/dist/components/number-field/NumberField.recipe.js +0 -89
  534. package/dist/components/number-field/index.d.ts +0 -1
  535. package/dist/components/number-field/index.js +0 -1
  536. package/dist/components/password-field/PasswordField.js +0 -168
  537. package/dist/components/password-requirements/PasswordRequirements.d.ts +0 -12
  538. package/dist/components/password-requirements/PasswordRequirements.js +0 -79
  539. package/dist/components/password-rules/index.d.ts +0 -1
  540. package/dist/components/password-rules/index.js +0 -1
  541. package/dist/components/progress-bar/ProgressBar.css +0 -104
  542. package/dist/components/progress-bar/ProgressBar.generated.d.ts +0 -20
  543. package/dist/components/progress-bar/ProgressBar.recipe.d.ts +0 -29
  544. package/dist/components/progress-bar/ProgressBar.recipe.js +0 -43
  545. package/dist/components/progress-bar/index.d.ts +0 -2
  546. package/dist/components/progress-bar/index.js +0 -1
  547. package/dist/components/progress-circle/ProgressCircle.css +0 -82
  548. package/dist/components/progress-circle/ProgressCircle.generated.d.ts +0 -19
  549. package/dist/components/progress-circle/ProgressCircle.recipe.d.ts +0 -28
  550. package/dist/components/progress-circle/ProgressCircle.recipe.js +0 -42
  551. package/dist/components/progress-circle/index.d.ts +0 -2
  552. package/dist/components/progress-circle/index.js +0 -1
  553. package/dist/components/scroll-shadow/ScrollShadow.generated.d.ts +0 -19
  554. package/dist/components/scroll-shadow/ScrollShadow.recipe.d.ts +0 -19
  555. package/dist/components/scroll-shadow/index.d.ts +0 -2
  556. package/dist/components/scroll-shadow/index.js +0 -1
  557. package/dist/components/scroll-shadow/useScrollShadow.d.ts +0 -13
  558. package/dist/components/search-field/SearchField.css +0 -183
  559. package/dist/components/search-field/SearchField.generated.d.ts +0 -54
  560. package/dist/components/search-field/SearchField.generated.js +0 -323
  561. package/dist/components/search-field/SearchField.recipe.d.ts +0 -38
  562. package/dist/components/search-field/SearchField.recipe.js +0 -77
  563. package/dist/components/search-field/index.d.ts +0 -1
  564. package/dist/components/search-field/index.js +0 -1
  565. package/dist/components/surface/Surface.css +0 -37
  566. package/dist/components/surface/Surface.generated.d.ts +0 -13
  567. package/dist/components/surface/Surface.generated.js +0 -42
  568. package/dist/components/surface/Surface.recipe.d.ts +0 -16
  569. package/dist/components/surface/Surface.recipe.js +0 -35
  570. package/dist/components/surface/index.d.ts +0 -1
  571. package/dist/components/surface/index.js +0 -1
  572. package/dist/components/tag/Tag.css +0 -121
  573. package/dist/components/tag/Tag.generated.d.ts +0 -34
  574. package/dist/components/tag/Tag.generated.js +0 -254
  575. package/dist/components/tag/Tag.recipe.d.ts +0 -30
  576. package/dist/components/tag/Tag.recipe.js +0 -64
  577. package/dist/components/tag/index.d.ts +0 -1
  578. package/dist/components/tag/index.js +0 -1
  579. package/dist/components/tag-group/TagGroup.css +0 -22
  580. package/dist/components/tag-group/TagGroup.generated.d.ts +0 -33
  581. package/dist/components/tag-group/TagGroup.generated.js +0 -190
  582. package/dist/components/tag-group/TagGroup.recipe.d.ts +0 -16
  583. package/dist/components/tag-group/TagGroup.recipe.js +0 -40
  584. package/dist/components/tag-group/context.d.ts +0 -15
  585. package/dist/components/tag-group/context.js +0 -3
  586. package/dist/components/tag-group/index.d.ts +0 -2
  587. package/dist/components/tag-group/index.js +0 -1
  588. package/dist/components/text-area/TextArea.generated.d.ts +0 -20
  589. package/dist/components/text-area/TextArea.generated.js +0 -68
  590. package/dist/components/text-area/TextArea.recipe.d.ts +0 -17
  591. package/dist/components/text-area/TextArea.recipe.js +0 -36
  592. package/dist/components/text-area/index.d.ts +0 -1
  593. package/dist/components/text-area/index.js +0 -1
  594. package/dist/components/text-field/TextField.css +0 -33
  595. package/dist/components/text-field/TextField.generated.d.ts +0 -35
  596. package/dist/components/text-field/TextField.generated.js +0 -89
  597. package/dist/components/text-field/TextField.recipe.d.ts +0 -17
  598. package/dist/components/text-field/TextField.recipe.js +0 -36
  599. package/dist/components/text-field/index.d.ts +0 -1
  600. package/dist/components/text-field/index.js +0 -1
  601. package/dist/components/toggle/Toggle.recipe.d.ts +0 -40
  602. package/dist/components/toggle/Toggle.recipe.js +0 -94
  603. package/dist/components/toggle/index.js +0 -1
  604. package/dist/styles/icons/generated-icons.css +0 -1
  605. /package/dist/components/{text-area/TextArea.css → textarea/Textarea.css} +0 -0
package/README.md CHANGED
@@ -162,7 +162,7 @@ import — the published size is the whole library, not what ships to your users
162
162
  |---|---|
163
163
  | **[Live showcase](https://js.software)** | every component, rendered and interactive |
164
164
  | **[Usage reference](https://github.com/pathscale/ui/blob/master/docs/ui-usage.md)** | theming, conventions, forms, table, toast, icons, dates |
165
- | **[Contributing](https://github.com/pathscale/ui/blob/master/CONTRIBUTING.md)** | local setup, playground, component checklist, proposal template |
165
+ | **[Contributing](https://github.com/pathscale/ui/blob/master/CONTRIBUTING.md)** | local setup, component checklist, proposal template |
166
166
 
167
167
  ## License
168
168
 
@@ -16,7 +16,7 @@
16
16
  left: 0;
17
17
  height: 1px;
18
18
  width: 100%;
19
- border-radius: 9999px;
19
+ border-radius: var(--radius-pill, 9999px);
20
20
  background-color: var(--color-base-300);
21
21
  }
22
22
 
@@ -54,8 +54,8 @@
54
54
 
55
55
  .accordion__trigger:focus-visible,
56
56
  .accordion__trigger[data-focus-visible="true"] {
57
- outline: 2px solid var(--color-base-content);
58
- outline-offset: 2px;
57
+ outline: var(--focus-ring-width, 2px) solid var(--color-base-content);
58
+ outline-offset: var(--focus-ring-offset, 2px);
59
59
  }
60
60
 
61
61
  .accordion__item--disabled .accordion__trigger,
@@ -1,11 +1,11 @@
1
1
  import type { Component as __LayoutComponent } from "solid-js";
2
2
  import "./Accordion.css";
3
3
  import { type JSX } from "solid-js";
4
- import type { IComponentBaseProps } from "../types";
4
+ import type { UIBaseProps, State } from "../vocabulary";
5
5
  export type AccordionSelectionMode = "single" | "multiple";
6
6
  export type AccordionVariant = "default" | "surface";
7
7
  export type AccordionValue = string | string[];
8
- export type AccordionRootProps = Omit<JSX.HTMLAttributes<HTMLDivElement>, "children"> & IComponentBaseProps & {
8
+ export type AccordionRootProps = Omit<JSX.HTMLAttributes<HTMLDivElement>, "children"> & UIBaseProps & {
9
9
  children?: JSX.Element;
10
10
  selectionMode?: AccordionSelectionMode;
11
11
  value?: AccordionValue;
@@ -13,25 +13,25 @@ export type AccordionRootProps = Omit<JSX.HTMLAttributes<HTMLDivElement>, "child
13
13
  onValueChange?: (value: string[]) => void;
14
14
  hideSeparator?: boolean;
15
15
  variant?: AccordionVariant;
16
- isDisabled?: boolean;
16
+ state?: State;
17
17
  disabled?: boolean;
18
18
  };
19
- export type AccordionItemProps = Omit<JSX.HTMLAttributes<HTMLDivElement>, "children"> & IComponentBaseProps & {
19
+ export type AccordionItemProps = Omit<JSX.HTMLAttributes<HTMLDivElement>, "children"> & UIBaseProps & {
20
20
  value?: string;
21
21
  children?: JSX.Element;
22
- isDisabled?: boolean;
22
+ state?: State;
23
23
  disabled?: boolean;
24
24
  };
25
- export type AccordionTriggerProps = Omit<JSX.ButtonHTMLAttributes<HTMLButtonElement>, "children" | "disabled"> & IComponentBaseProps & {
25
+ export type AccordionTriggerProps = Omit<JSX.ButtonHTMLAttributes<HTMLButtonElement>, "children" | "disabled"> & UIBaseProps & {
26
26
  children?: JSX.Element;
27
27
  showIndicator?: boolean;
28
28
  indicator?: JSX.Element;
29
29
  };
30
- export type AccordionContentProps = Omit<JSX.HTMLAttributes<HTMLDivElement>, "children"> & IComponentBaseProps & {
30
+ export type AccordionContentProps = Omit<JSX.HTMLAttributes<HTMLDivElement>, "children"> & UIBaseProps & {
31
31
  children?: JSX.Element;
32
32
  keepMounted?: boolean;
33
33
  };
34
- export type AccordionIndicatorProps = Omit<JSX.HTMLAttributes<HTMLSpanElement>, "children"> & IComponentBaseProps & {
34
+ export type AccordionIndicatorProps = Omit<JSX.HTMLAttributes<HTMLSpanElement>, "children"> & UIBaseProps & {
35
35
  children?: JSX.Element;
36
36
  };
37
37
  declare const AccordionRoot: __LayoutComponent<AccordionRootProps>;
@@ -23,7 +23,6 @@ const __solidLayoutAccordionRoot = (_stable, p)=>{
23
23
  const [local, others] = splitProps(p, [
24
24
  "children",
25
25
  "class",
26
- "className",
27
26
  "dataTheme",
28
27
  "style",
29
28
  "selectionMode",
@@ -32,14 +31,14 @@ const __solidLayoutAccordionRoot = (_stable, p)=>{
32
31
  "onValueChange",
33
32
  "hideSeparator",
34
33
  "variant",
35
- "isDisabled",
34
+ "state",
36
35
  "disabled",
37
36
  "ref"
38
37
  ]);
39
38
  const selectionMode = ()=>local.selectionMode ?? "single";
40
39
  const variant = ()=>local.variant ?? "default";
41
40
  const hideSeparator = ()=>Boolean(local.hideSeparator);
42
- const isDisabled = ()=>Boolean(local.isDisabled) || Boolean(local.disabled);
41
+ const isDisabled = ()=>Boolean("disabled" === local.state) || Boolean(local.disabled);
43
42
  const [internalValue, setInternalValue] = createSignal(normalizeAccordionValue(local.defaultValue, selectionMode()));
44
43
  const selectedValues = createMemo(()=>void 0 !== local.value ? normalizeAccordionValue(local.value, selectionMode()) : normalizeAccordionValue(internalValue(), selectionMode()));
45
44
  const isItemExpanded = (value)=>selectedValues().includes(value);
@@ -93,7 +92,7 @@ const __solidLayoutAccordionRoot = (_stable, p)=>{
93
92
  if ("function" == typeof local.ref) local.ref(node);
94
93
  }, _el$);
95
94
  spread(_el$, mergeProps(others, ()=>({
96
- class: twMerge(CLASSES.Root.base, CLASSES.Root.variant[variant()], local.class, local.className)
95
+ class: twMerge(CLASSES.Root.base, CLASSES.Root.variant[variant()], local.class)
97
96
  }), {
98
97
  "data-slot": "accordion",
99
98
  get ["data-selection-mode"] () {
@@ -134,10 +133,9 @@ const __solidLayoutAccordionItem = (_stable, p)=>{
134
133
  "value",
135
134
  "children",
136
135
  "class",
137
- "className",
138
136
  "dataTheme",
139
137
  "style",
140
- "isDisabled",
138
+ "state",
141
139
  "disabled"
142
140
  ]);
143
141
  const uniqueId = createUniqueId();
@@ -145,7 +143,7 @@ const __solidLayoutAccordionItem = (_stable, p)=>{
145
143
  const triggerId = ()=>`accordion-trigger-${uniqueId}`;
146
144
  const contentId = ()=>`accordion-content-${uniqueId}`;
147
145
  const isExpanded = ()=>accordion?.isItemExpanded(itemValue()) ?? false;
148
- const isDisabled = ()=>Boolean(local.isDisabled) || Boolean(local.disabled) || Boolean(accordion?.isDisabled());
146
+ const isDisabled = ()=>Boolean("disabled" === local.state) || Boolean(local.disabled) || Boolean(accordion?.isDisabled());
149
147
  const toggle = ()=>{
150
148
  if (isDisabled()) return;
151
149
  accordion?.toggleItem(itemValue());
@@ -163,7 +161,7 @@ const __solidLayoutAccordionItem = (_stable, p)=>{
163
161
  get children () {
164
162
  var _el$2 = _tmpl$();
165
163
  spread(_el$2, mergeProps(others, ()=>({
166
- class: twMerge(CLASSES.Item.base, isExpanded() && CLASSES.Item.flag.expanded, isDisabled() && CLASSES.Item.flag.disabled, accordion?.hideSeparator() && CLASSES.Item.flag.hideSeparator, local.class, local.className)
164
+ class: twMerge(CLASSES.Item.base, isExpanded() && CLASSES.Item.flag.expanded, isDisabled() && CLASSES.Item.flag.disabled, accordion?.hideSeparator() && CLASSES.Item.flag.hideSeparator, local.class)
167
165
  }), {
168
166
  "data-slot": "accordion-item",
169
167
  get ["data-expanded"] () {
@@ -195,7 +193,6 @@ const __solidLayoutAccordionTrigger = (_stable, p)=>{
195
193
  const [local, others] = splitProps(p, [
196
194
  "children",
197
195
  "class",
198
- "className",
199
196
  "dataTheme",
200
197
  "style",
201
198
  "onClick",
@@ -230,7 +227,7 @@ const __solidLayoutAccordionTrigger = (_stable, p)=>{
230
227
  return local.type ?? "button";
231
228
  }
232
229
  }, ()=>({
233
- class: twMerge(CLASSES.Trigger.base, local.class, local.className)
230
+ class: twMerge(CLASSES.Trigger.base, local.class)
234
231
  }), {
235
232
  "data-slot": "accordion-trigger",
236
233
  get ["data-expanded"] () {
@@ -283,7 +280,6 @@ const __solidLayoutAccordionContent = (_stable, p)=>{
283
280
  const [local, others] = splitProps(p, [
284
281
  "children",
285
282
  "class",
286
- "className",
287
283
  "dataTheme",
288
284
  "style",
289
285
  "keepMounted"
@@ -299,7 +295,7 @@ const __solidLayoutAccordionContent = (_stable, p)=>{
299
295
  },
300
296
  role: "region"
301
297
  }, ()=>({
302
- class: twMerge(CLASSES.Content.base, expanded() && CLASSES.Content.flag.expanded, local.class, local.className)
298
+ class: twMerge(CLASSES.Content.base, expanded() && CLASSES.Content.flag.expanded, local.class)
303
299
  }), {
304
300
  "data-slot": "accordion-content",
305
301
  get ["data-expanded"] () {
@@ -342,7 +338,6 @@ const __solidLayoutAccordionIndicator = (_stable, p)=>{
342
338
  const [local, others] = splitProps(p, [
343
339
  "children",
344
340
  "class",
345
- "className",
346
341
  "dataTheme",
347
342
  "style"
348
343
  ]);
@@ -352,7 +347,7 @@ const __solidLayoutAccordionIndicator = (_stable, p)=>{
352
347
  spread(_el$7, mergeProps(others, {
353
348
  "aria-hidden": "true"
354
349
  }, ()=>({
355
- class: twMerge(CLASSES.Indicator.base, expanded() && CLASSES.Indicator.flag.expanded, local.class, local.className)
350
+ class: twMerge(CLASSES.Indicator.base, expanded() && CLASSES.Indicator.flag.expanded, local.class)
356
351
  }), {
357
352
  "data-slot": "accordion-indicator",
358
353
  get ["data-expanded"] () {
@@ -0,0 +1,66 @@
1
+ @layer components {
2
+ .address {
3
+ display: inline-flex;
4
+ align-items: center;
5
+ gap: 0.375rem;
6
+ min-width: 0;
7
+ }
8
+
9
+ /* Hex is compared character by character, and a proportional face makes
10
+ `1` and `l` the same shape. */
11
+ .address--mono .address__value {
12
+ font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;
13
+ font-variant-ligatures: none;
14
+ }
15
+
16
+ .address__value {
17
+ overflow: hidden;
18
+ text-overflow: ellipsis;
19
+ white-space: nowrap;
20
+ }
21
+
22
+ .address__copy,
23
+ .address__link {
24
+ display: inline-flex;
25
+ align-items: center;
26
+ flex-shrink: 0;
27
+ border: 0;
28
+ background: none;
29
+ padding: 0;
30
+ color: var(--color-primary);
31
+ cursor: pointer;
32
+ text-decoration: none;
33
+ }
34
+
35
+ .address__copy:hover,
36
+ .address__link:hover {
37
+ text-decoration: underline;
38
+ }
39
+
40
+ .address__copy:disabled {
41
+ cursor: not-allowed;
42
+ color: var(--color-base-content);
43
+ opacity: 0.5;
44
+ }
45
+
46
+ .address__feedback {
47
+ color: var(--color-success);
48
+ }
49
+
50
+ .address--xs { font-size: 0.75rem; }
51
+ .address--sm { font-size: 0.8125rem; }
52
+ .address--md { font-size: 0.875rem; }
53
+ .address--lg { font-size: 1rem; }
54
+ .address--xl { font-size: 1.125rem; }
55
+
56
+ .address--loading { opacity: 0.6; }
57
+ .address--error .address__value,
58
+ .address--invalid .address__value { color: var(--color-error); }
59
+
60
+ .address--disabled {
61
+ opacity: 0.5;
62
+ pointer-events: none;
63
+ }
64
+
65
+ .address--hidden { display: none; }
66
+ }
@@ -0,0 +1,35 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import "./Address.css";
3
+ import { type JSX } from "solid-js";
4
+ import type { Size, State, UIBaseProps } from "../vocabulary";
5
+ export type AddressTruncate = "middle" | "none";
6
+ export type AddressProps = Omit<JSX.HTMLAttributes<HTMLSpanElement>, "onCopy"> & UIBaseProps & {
7
+ /** The address itself. Always the full value, whatever is displayed. */
8
+ value: string;
9
+ /**
10
+ * A resolved name, shown in place of the hex.
11
+ *
12
+ * ENS and its equivalents are what the address *means* to a person, so when
13
+ * one is known it leads. The hex stays reachable through the title and the
14
+ * copy, because the name is a lookup that can be wrong and the address
15
+ * cannot.
16
+ */
17
+ name?: JSX.Element;
18
+ /** Full URL to a block explorer. No link is rendered without one. */
19
+ explorerUrl?: string;
20
+ truncate?: AddressTruncate;
21
+ /** Characters kept at each end when truncating. */
22
+ lead?: number;
23
+ tail?: number;
24
+ size?: Size;
25
+ state?: State;
26
+ font?: "mono" | "inherit";
27
+ /** Copying is on by default: it is the reason most of these are on screen. */
28
+ copyable?: boolean;
29
+ /** Fired after a successful copy, with the full value. */
30
+ onCopy?: (value: string) => void;
31
+ copyLabel?: JSX.Element;
32
+ copiedLabel?: JSX.Element;
33
+ explorerLabel?: JSX.Element;
34
+ };
35
+ export declare const AddressLayout: __LayoutComponent<AddressProps>;
@@ -0,0 +1,106 @@
1
+ import { createComponent, insert, memo, mergeProps, spread, template } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import "./Address.css";
4
+ import { Show, createSignal, onCleanup } from "solid-js";
5
+ import { address } from "./Address.recipe.js";
6
+ import { DEFAULT_LEAD, DEFAULT_TAIL, copyAddress, scheduleCopyReset, truncateAddress } from "./Address.interactions.js";
7
+ var _tmpl$ = /*#__PURE__*/ template("<span>"), _tmpl$2 = /*#__PURE__*/ template("<button>"), _tmpl$3 = /*#__PURE__*/ template("<a>"), _tmpl$4 = /*#__PURE__*/ template("<span><span>");
8
+ const __solidLayoutAddressLayout = (_stable, p)=>{
9
+ const [copied, setCopied] = createSignal(false);
10
+ let cancel;
11
+ onCleanup(()=>cancel?.());
12
+ const shown = ()=>"none" === p.truncate ? p.value : truncateAddress(p.value, {
13
+ lead: p.lead ?? DEFAULT_LEAD,
14
+ tail: p.tail ?? DEFAULT_TAIL
15
+ });
16
+ const copy = async ()=>{
17
+ if (!await copyAddress(p.value)) return;
18
+ p.onCopy?.(p.value);
19
+ setCopied(true);
20
+ cancel?.();
21
+ cancel = scheduleCopyReset(()=>setCopied(false));
22
+ };
23
+ return (()=>{
24
+ var _el$ = _tmpl$4(), _el$2 = _el$.firstChild;
25
+ spread(_el$, mergeProps(()=>_stable.slot.root, {
26
+ get ["data-state"] () {
27
+ return p.state ?? "default";
28
+ }
29
+ }), false, true);
30
+ spread(_el$2, mergeProps(()=>_stable.slot.value, {
31
+ get title () {
32
+ return p.value;
33
+ }
34
+ }), false, true);
35
+ insert(_el$2, createComponent(Show, {
36
+ get when () {
37
+ return p.name;
38
+ },
39
+ get fallback () {
40
+ return shown();
41
+ },
42
+ get children () {
43
+ return p.name;
44
+ }
45
+ }));
46
+ insert(_el$, createComponent(Show, {
47
+ get when () {
48
+ return false !== p.copyable;
49
+ },
50
+ get children () {
51
+ var _el$3 = _tmpl$2();
52
+ spread(_el$3, mergeProps(()=>_stable.slot.copy, {
53
+ type: "button",
54
+ onClick: copy,
55
+ get disabled () {
56
+ return "disabled" === p.state;
57
+ },
58
+ get ["aria-label"] () {
59
+ return memo(()=>!!copied())() ? void 0 : p.copyLabel ?? "Copy address";
60
+ }
61
+ }), false, true);
62
+ insert(_el$3, createComponent(Show, {
63
+ get when () {
64
+ return copied();
65
+ },
66
+ get fallback () {
67
+ return p.copyLabel ?? "Copy";
68
+ },
69
+ get children () {
70
+ var _el$4 = _tmpl$();
71
+ spread(_el$4, mergeProps(()=>_stable.slot.feedback, {
72
+ role: "status"
73
+ }), false, true);
74
+ insert(_el$4, ()=>p.copiedLabel ?? "Copied");
75
+ return _el$4;
76
+ }
77
+ }));
78
+ return _el$3;
79
+ }
80
+ }), null);
81
+ insert(_el$, createComponent(Show, {
82
+ get when () {
83
+ return p.explorerUrl;
84
+ },
85
+ get children () {
86
+ var _el$5 = _tmpl$3();
87
+ spread(_el$5, mergeProps(()=>_stable.slot.link, {
88
+ get href () {
89
+ return p.explorerUrl;
90
+ },
91
+ target: "_blank",
92
+ rel: "noreferrer noopener"
93
+ }), false, true);
94
+ insert(_el$5, ()=>p.explorerLabel ?? "View");
95
+ return _el$5;
96
+ }
97
+ }), null);
98
+ return _el$;
99
+ })();
100
+ };
101
+ const AddressLayout = defineComponent({
102
+ recipe: address,
103
+ layout: __solidLayoutAddressLayout,
104
+ embedded: true
105
+ });
106
+ export { AddressLayout };
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Pure helpers behind `Address`.
3
+ *
4
+ * They live apart from the Layout for two reasons. A `.layout.tsx` template
5
+ * resolves free identifiers against props, so a bare `setTimeout` in that file
6
+ * compiles to `props.setTimeout`; and truncation is the part worth testing
7
+ * directly, because getting it wrong is how two different addresses come to
8
+ * look identical on screen.
9
+ */
10
+ /** How long "Copied" stays up. Long enough to read, short enough not to lie. */
11
+ export declare const COPY_FEEDBACK_MS = 1200;
12
+ export type TruncateOptions = {
13
+ /** Characters kept at the front, including any `0x`. */
14
+ lead?: number;
15
+ /** Characters kept at the end. */
16
+ tail?: number;
17
+ };
18
+ export declare const DEFAULT_LEAD = 6;
19
+ export declare const DEFAULT_TAIL = 4;
20
+ /**
21
+ * Shorten in the middle, never at the end.
22
+ *
23
+ * The tail is the part that distinguishes two addresses at a glance — every
24
+ * Ethereum address starts `0x` and a shared prefix is common, so an ellipsis
25
+ * at the end produces two labels that look the same and refer to different
26
+ * wallets. Keeping both ends is what makes the short form safe to compare.
27
+ *
28
+ * Returns the value unchanged when shortening would not actually shorten it,
29
+ * so a short address never gains an ellipsis it does not need.
30
+ */
31
+ export declare const truncateAddress: (value: string, options?: TruncateOptions) => string;
32
+ /**
33
+ * Copy, and report whether it worked.
34
+ *
35
+ * The clipboard is permission-gated and absent in several runtimes we ship
36
+ * into — Blitz exposes the DOM shape before every method has an implementation,
37
+ * so a bare call throws rather than returning a rejected promise. A caller that
38
+ * gets `false` should leave the address selectable rather than claim a copy
39
+ * that did not happen.
40
+ */
41
+ export declare const copyAddress: (value: string) => Promise<boolean>;
42
+ /**
43
+ * Clear the copied flag after the feedback window.
44
+ *
45
+ * Returns the cancel function so an unmount between the copy and the timeout
46
+ * does not write to a disposed signal.
47
+ */
48
+ export declare const scheduleCopyReset: (reset: () => void) => (() => void);
@@ -0,0 +1,25 @@
1
+ const COPY_FEEDBACK_MS = 1200;
2
+ const DEFAULT_LEAD = 6;
3
+ const DEFAULT_TAIL = 4;
4
+ const truncateAddress = (value, options = {})=>{
5
+ const lead = Math.max(0, options.lead ?? DEFAULT_LEAD);
6
+ const tail = Math.max(0, options.tail ?? DEFAULT_TAIL);
7
+ if (!value) return "";
8
+ if (value.length <= lead + tail + 1) return value;
9
+ return `${value.slice(0, lead)}…${value.slice(value.length - tail)}`;
10
+ };
11
+ const copyAddress = async (value)=>{
12
+ try {
13
+ const clipboard = globalThis.navigator?.clipboard;
14
+ if ("function" != typeof clipboard?.writeText) return false;
15
+ await clipboard.writeText(value);
16
+ return true;
17
+ } catch {
18
+ return false;
19
+ }
20
+ };
21
+ const scheduleCopyReset = (reset)=>{
22
+ const handle = setTimeout(reset, COPY_FEEDBACK_MS);
23
+ return ()=>clearTimeout(handle);
24
+ };
25
+ export { COPY_FEEDBACK_MS, DEFAULT_LEAD, DEFAULT_TAIL, copyAddress, scheduleCopyReset, truncateAddress };
@@ -0,0 +1,60 @@
1
+ /**
2
+ * A blockchain address, shown the way people actually read one.
3
+ *
4
+ * The survey found wallet addresses in two apps and a `truncateAddress` helper
5
+ * living in one of them and nowhere else, which is the usual sign that a
6
+ * component is missing rather than that the need is rare. Rendering the hex is
7
+ * the easy part; what every call site rebuilds is the middle truncation, the
8
+ * copy affordance and its confirmation, and the link out to an explorer.
9
+ *
10
+ * Deliberately not a form input. This displays an address someone already has;
11
+ * entering one is `Input` with a validator.
12
+ */
13
+ export declare const address: import("solid-layouts").Recipe<{
14
+ readonly component: "address";
15
+ readonly element: "span";
16
+ readonly slots: {
17
+ readonly root: {
18
+ readonly base: "address";
19
+ };
20
+ readonly value: {
21
+ readonly base: "address__value";
22
+ };
23
+ readonly copy: {
24
+ readonly base: "address__copy";
25
+ };
26
+ readonly link: {
27
+ readonly base: "address__link";
28
+ };
29
+ readonly feedback: {
30
+ readonly base: "address__feedback";
31
+ };
32
+ };
33
+ readonly props: {
34
+ readonly size: {
35
+ readonly xs: "address--xs";
36
+ readonly sm: "address--sm";
37
+ readonly md: "address--md";
38
+ readonly lg: "address--lg";
39
+ readonly xl: "address--xl";
40
+ };
41
+ readonly state: {
42
+ readonly default: "";
43
+ readonly loading: "address--loading";
44
+ readonly error: "address--error";
45
+ readonly invalid: "address--invalid";
46
+ readonly disabled: "address--disabled";
47
+ readonly hidden: "address--hidden";
48
+ };
49
+ /** Monospace by default: hex is compared character by character. */
50
+ readonly font: {
51
+ readonly mono: "address--mono";
52
+ readonly inherit: "";
53
+ };
54
+ };
55
+ readonly defaults: {
56
+ readonly size: "md";
57
+ readonly state: "default";
58
+ readonly font: "mono";
59
+ };
60
+ }>;
@@ -0,0 +1,101 @@
1
+ import { recipe } from "../../lib/layouts/index.js";
2
+ const address = recipe({
3
+ component: "address",
4
+ element: "span",
5
+ slots: {
6
+ root: {
7
+ base: "address"
8
+ },
9
+ value: {
10
+ base: "address__value"
11
+ },
12
+ copy: {
13
+ base: "address__copy"
14
+ },
15
+ link: {
16
+ base: "address__link"
17
+ },
18
+ feedback: {
19
+ base: "address__feedback"
20
+ }
21
+ },
22
+ props: {
23
+ size: {
24
+ xs: "address--xs",
25
+ sm: "address--sm",
26
+ md: "address--md",
27
+ lg: "address--lg",
28
+ xl: "address--xl"
29
+ },
30
+ state: {
31
+ default: "",
32
+ loading: "address--loading",
33
+ error: "address--error",
34
+ invalid: "address--invalid",
35
+ disabled: "address--disabled",
36
+ hidden: "address--hidden"
37
+ },
38
+ font: {
39
+ mono: "address--mono",
40
+ inherit: ""
41
+ }
42
+ },
43
+ defaults: {
44
+ size: "md",
45
+ state: "default",
46
+ font: "mono"
47
+ },
48
+ _layouts: {
49
+ slots: {
50
+ root: {
51
+ base: "address",
52
+ axes: {
53
+ size: {
54
+ xs: "address--xs",
55
+ sm: "address--sm",
56
+ md: "address--md",
57
+ lg: "address--lg",
58
+ xl: "address--xl"
59
+ },
60
+ state: {
61
+ default: "",
62
+ loading: "address--loading",
63
+ error: "address--error",
64
+ invalid: "address--invalid",
65
+ disabled: "address--disabled",
66
+ hidden: "address--hidden"
67
+ },
68
+ font: {
69
+ mono: "address--mono",
70
+ inherit: ""
71
+ }
72
+ }
73
+ },
74
+ value: {
75
+ base: "address__value",
76
+ axes: {}
77
+ },
78
+ copy: {
79
+ base: "address__copy",
80
+ axes: {}
81
+ },
82
+ link: {
83
+ base: "address__link",
84
+ axes: {}
85
+ },
86
+ feedback: {
87
+ base: "address__feedback",
88
+ axes: {}
89
+ }
90
+ },
91
+ stateKeys: [],
92
+ slotIds: {
93
+ root: 3,
94
+ value: 4,
95
+ copy: 0,
96
+ link: 2,
97
+ feedback: 1
98
+ }
99
+ }
100
+ });
101
+ export { address };
@@ -0,0 +1,5 @@
1
+ export { AddressLayout as default, AddressLayout as Address } from "./Address.generated";
2
+ export type { AddressProps, AddressTruncate } from "./Address.generated";
3
+ export { address } from "./Address.recipe";
4
+ export { truncateAddress, copyAddress, COPY_FEEDBACK_MS, DEFAULT_LEAD, DEFAULT_TAIL, } from "./Address.interactions";
5
+ export type { TruncateOptions } from "./Address.interactions";
@@ -0,0 +1,3 @@
1
+ export { AddressLayout as Address, AddressLayout as default } from "./Address.generated.js";
2
+ export { address } from "./Address.recipe.js";
3
+ export { COPY_FEEDBACK_MS, DEFAULT_LEAD, DEFAULT_TAIL, copyAddress, truncateAddress } from "./Address.interactions.js";