@pathscale/ui 2.1.1 → 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 -129
  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
@@ -26,7 +26,6 @@ const __solidLayoutSlider = (_stable, p)=>{
26
26
  "size",
27
27
  "dataTheme",
28
28
  "class",
29
- "className",
30
29
  "style"
31
30
  ]);
32
31
  const min = ()=>local.min ?? 0;
@@ -111,7 +110,7 @@ const __solidLayoutSlider = (_stable, p)=>{
111
110
  return (()=>{
112
111
  var _el$ = _tmpl$2(), _el$4 = _el$.firstChild, _el$5 = _el$4.firstChild, _el$6 = _el$5.nextSibling;
113
112
  spread(_el$, mergeProps(()=>({
114
- class: twMerge(CLASSES.base, CLASSES.size[size()], local.class, local.className)
113
+ class: twMerge(CLASSES.base, CLASSES.size[size()], local.class)
115
114
  }), {
116
115
  get ["data-theme"] () {
117
116
  return local.dataTheme;
@@ -1,14 +1,12 @@
1
1
  import type { Component as __LayoutComponent } from "solid-js";
2
2
  import "./Spinner.css";
3
3
  import { type JSX } from "solid-js";
4
- import type { IComponentBaseProps } from "../types";
5
- export type SpinnerSize = "xs" | "sm" | "md" | "lg" | "xl";
6
- export type SpinnerColor = "current" | "accent" | "success" | "warning" | "danger";
7
- export type SpinnerVariant = "spinner" | "dots" | "ring" | "ball" | "bars" | "infinity";
8
- export type SpinnerProps = Omit<JSX.HTMLAttributes<HTMLSpanElement>, "children"> & IComponentBaseProps & {
9
- size?: SpinnerSize;
10
- color?: SpinnerColor;
11
- variant?: SpinnerVariant;
4
+ import type { Size, State, UIBaseProps } from "../vocabulary";
5
+ export type SpinnerShape = "spinner" | "dots" | "ring" | "ball" | "bars" | "infinity";
6
+ export type SpinnerProps = Omit<JSX.HTMLAttributes<HTMLSpanElement>, "children"> & UIBaseProps & {
7
+ size?: Size;
8
+ state?: State;
9
+ shape?: SpinnerShape;
12
10
  label?: string;
13
11
  };
14
12
  export declare const SpinnerLayout: __LayoutComponent<SpinnerProps>;
@@ -3,7 +3,7 @@ import { defineComponent } from "solid-layouts/application-boundary";
3
3
  import "./Spinner.css";
4
4
  import { createUniqueId } from "solid-js";
5
5
  import { spinner } from "./Spinner.recipe.js";
6
- var _tmpl$ = /*#__PURE__*/ template('<svg aria-hidden=true data-slot=spinner-icon fill=none viewBox="0 0 24 24"><defs><linearGradient x1=50% x2=50% y1=5.271% y2=91.793%><stop offset=0% stop-color=currentColor></stop><stop offset=100% stop-color=currentColor stop-opacity=0.55></stop></linearGradient><linearGradient x1=50% x2=50% y1=15.24% y2=87.15%><stop offset=0% stop-color=currentColor stop-opacity=0></stop><stop offset=100% stop-color=currentColor stop-opacity=0.55></stop></linearGradient></defs><g fill=none><path d="M8.749.021a1.5 1.5 0 0 1 .497 2.958A7.5 7.5 0 0 0 3 10.375a7.5 7.5 0 0 0 7.5 7.5v3c-5.799 0-10.5-4.7-10.5-10.5C0 5.23 3.726.865 8.749.021"transform="translate(1.5 1.625)"></path><path d="M15.392 2.673a1.5 1.5 0 0 1 2.119-.115A10.48 10.48 0 0 1 21 10.375c0 5.8-4.701 10.5-10.5 10.5v-3a7.5 7.5 0 0 0 5.007-13.084a1.5 1.5 0 0 1-.115-2.118"transform="translate(1.5 1.625)">'), _tmpl$2 = /*#__PURE__*/ template("<span>");
6
+ var _tmpl$ = /*#__PURE__*/ template('<svg aria-hidden=true data-slot=spinner-icon fill=none viewBox="0 0 24 24"><defs><linearGradient x1=50% x2=50% y1=5.271% y2=91.793%><stop offset=0% stop-state=currentColor></stop><stop offset=100% stop-state=currentColor stop-opacity=0.55></stop></linearGradient><linearGradient x1=50% x2=50% y1=15.24% y2=87.15%><stop offset=0% stop-state=currentColor stop-opacity=0></stop><stop offset=100% stop-state=currentColor stop-opacity=0.55></stop></linearGradient></defs><g fill=none><path d="M8.749.021a1.5 1.5 0 0 1 .497 2.958A7.5 7.5 0 0 0 3 10.375a7.5 7.5 0 0 0 7.5 7.5v3c-5.799 0-10.5-4.7-10.5-10.5C0 5.23 3.726.865 8.749.021"transform="translate(1.5 1.625)"></path><path d="M15.392 2.673a1.5 1.5 0 0 1 2.119-.115A10.48 10.48 0 0 1 21 10.375c0 5.8-4.701 10.5-10.5 10.5v-3a7.5 7.5 0 0 0 5.007-13.084a1.5 1.5 0 0 1-.115-2.118"transform="translate(1.5 1.625)">'), _tmpl$2 = /*#__PURE__*/ template("<span>");
7
7
  const SpinnerSVG = ()=>{
8
8
  const id = createUniqueId();
9
9
  return (()=>{
@@ -15,9 +15,9 @@ const SpinnerSVG = ()=>{
15
15
  return _el$;
16
16
  })();
17
17
  };
18
- const __solidLayoutSpinnerLayout = ({ slot, children }, p)=>(()=>{
18
+ const __solidLayoutSpinnerLayout = (_stable, p)=>(()=>{
19
19
  var _el$8 = _tmpl$2();
20
- spread(_el$8, mergeProps(()=>slot.root, {
20
+ spread(_el$8, mergeProps(()=>_stable.slot.root, {
21
21
  role: "status",
22
22
  get ["aria-label"] () {
23
23
  return p.label ?? "Loading";
@@ -29,7 +29,7 @@ const __solidLayoutSpinnerLayout = ({ slot, children }, p)=>(()=>{
29
29
  }
30
30
  }), false, true);
31
31
  insert(_el$8, (()=>{
32
- var _c$ = memo(()=>"spinner" === p.variant);
32
+ var _c$ = memo(()=>"spinner" === p.shape);
33
33
  return ()=>_c$() ? createComponent(SpinnerSVG, {}) : void 0;
34
34
  })());
35
35
  return _el$8;
@@ -1,28 +1,9 @@
1
- export declare const CLASSES: {
2
- readonly base: "spinner";
3
- readonly size: {
4
- readonly xs: "spinner--xs";
5
- readonly sm: "spinner--sm";
6
- readonly md: "";
7
- readonly lg: "spinner--lg";
8
- readonly xl: "spinner--xl";
9
- };
10
- readonly color: {
11
- readonly current: "spinner--current";
12
- readonly accent: "spinner--accent";
13
- readonly success: "spinner--success";
14
- readonly warning: "spinner--warning";
15
- readonly danger: "spinner--danger";
16
- };
17
- readonly variant: {
18
- readonly spinner: "spinner--spinner";
19
- readonly dots: "spinner--dots";
20
- readonly ring: "spinner--ring";
21
- readonly ball: "spinner--ball";
22
- readonly bars: "spinner--bars";
23
- readonly infinity: "spinner--infinity";
24
- };
25
- };
1
+ /**
2
+ * `shape` rather than `variant`: the thing that varies here is the animation
3
+ * (bars, dots, a ring), not emphasis, so it must not borrow the word that
4
+ * means solid/soft/outline everywhere else. The fleet passed `bars` at 23 of
5
+ * the 38 sites that used the old `Loading` alias.
6
+ */
26
7
  export declare const spinner: import("solid-layouts").Recipe<{
27
8
  readonly component: "spinner";
28
9
  readonly element: "span";
@@ -35,18 +16,21 @@ export declare const spinner: import("solid-layouts").Recipe<{
35
16
  readonly size: {
36
17
  readonly xs: "spinner--xs";
37
18
  readonly sm: "spinner--sm";
38
- readonly md: "";
19
+ readonly md: "spinner--md";
39
20
  readonly lg: "spinner--lg";
40
21
  readonly xl: "spinner--xl";
41
22
  };
42
- readonly color: {
43
- readonly current: "spinner--current";
23
+ readonly state: {
24
+ readonly neutral: "spinner--neutral";
25
+ readonly primary: "spinner--primary";
26
+ readonly secondary: "spinner--secondary";
44
27
  readonly accent: "spinner--accent";
45
28
  readonly success: "spinner--success";
46
29
  readonly warning: "spinner--warning";
47
30
  readonly danger: "spinner--danger";
31
+ readonly info: "spinner--info";
48
32
  };
49
- readonly variant: {
33
+ readonly shape: {
50
34
  readonly spinner: "spinner--spinner";
51
35
  readonly dots: "spinner--dots";
52
36
  readonly ring: "spinner--ring";
@@ -58,8 +42,8 @@ export declare const spinner: import("solid-layouts").Recipe<{
58
42
  };
59
43
  readonly defaults: {
60
44
  readonly size: "md";
61
- readonly color: "current";
62
- readonly variant: "spinner";
45
+ readonly state: "neutral";
46
+ readonly shape: "spinner";
63
47
  readonly label: "Loading";
64
48
  };
65
49
  }>;
@@ -1,48 +1,83 @@
1
1
  import { recipe } from "../../lib/layouts/index.js";
2
- const CLASSES = {
3
- base: "spinner",
4
- size: {
5
- xs: "spinner--xs",
6
- sm: "spinner--sm",
7
- md: "",
8
- lg: "spinner--lg",
9
- xl: "spinner--xl"
10
- },
11
- color: {
12
- current: "spinner--current",
13
- accent: "spinner--accent",
14
- success: "spinner--success",
15
- warning: "spinner--warning",
16
- danger: "spinner--danger"
17
- },
18
- variant: {
19
- spinner: "spinner--spinner",
20
- dots: "spinner--dots",
21
- ring: "spinner--ring",
22
- ball: "spinner--ball",
23
- bars: "spinner--bars",
24
- infinity: "spinner--infinity"
25
- }
26
- };
27
2
  const spinner = recipe({
28
3
  component: "spinner",
29
4
  element: "span",
30
5
  slots: {
31
6
  root: {
32
- base: CLASSES.base
7
+ base: "spinner"
33
8
  }
34
9
  },
35
10
  props: {
36
- size: CLASSES.size,
37
- color: CLASSES.color,
38
- variant: CLASSES.variant,
11
+ size: {
12
+ xs: "spinner--xs",
13
+ sm: "spinner--sm",
14
+ md: "spinner--md",
15
+ lg: "spinner--lg",
16
+ xl: "spinner--xl"
17
+ },
18
+ state: {
19
+ neutral: "spinner--neutral",
20
+ primary: "spinner--primary",
21
+ secondary: "spinner--secondary",
22
+ accent: "spinner--accent",
23
+ success: "spinner--success",
24
+ warning: "spinner--warning",
25
+ danger: "spinner--danger",
26
+ info: "spinner--info"
27
+ },
28
+ shape: {
29
+ spinner: "spinner--spinner",
30
+ dots: "spinner--dots",
31
+ ring: "spinner--ring",
32
+ ball: "spinner--ball",
33
+ bars: "spinner--bars",
34
+ infinity: "spinner--infinity"
35
+ },
39
36
  label: {}
40
37
  },
41
38
  defaults: {
42
39
  size: "md",
43
- color: "current",
44
- variant: "spinner",
40
+ state: "neutral",
41
+ shape: "spinner",
45
42
  label: "Loading"
43
+ },
44
+ _layouts: {
45
+ slots: {
46
+ root: {
47
+ base: "spinner",
48
+ axes: {
49
+ size: {
50
+ xs: "spinner--xs",
51
+ sm: "spinner--sm",
52
+ md: "spinner--md",
53
+ lg: "spinner--lg",
54
+ xl: "spinner--xl"
55
+ },
56
+ state: {
57
+ neutral: "spinner--neutral",
58
+ primary: "spinner--primary",
59
+ secondary: "spinner--secondary",
60
+ accent: "spinner--accent",
61
+ success: "spinner--success",
62
+ warning: "spinner--warning",
63
+ danger: "spinner--danger",
64
+ info: "spinner--info"
65
+ },
66
+ shape: {
67
+ spinner: "spinner--spinner",
68
+ dots: "spinner--dots",
69
+ ring: "spinner--ring",
70
+ ball: "spinner--ball",
71
+ bars: "spinner--bars",
72
+ infinity: "spinner--infinity"
73
+ }
74
+ }
75
+ }
76
+ },
77
+ stateKeys: [],
78
+ slotIds: {
79
+ root: 0
80
+ }
46
81
  }
47
82
  });
48
- export { CLASSES, spinner };
83
+ export { spinner };
@@ -1,2 +1,3 @@
1
- export { SpinnerLayout as default, SpinnerLayout as Spinner, SpinnerLayout as Loading, } from "./Spinner.generated";
2
- export type { SpinnerProps, SpinnerSize, SpinnerColor, SpinnerVariant } from "./Spinner.generated";
1
+ export { SpinnerLayout as default, SpinnerLayout as Spinner } from "./Spinner.generated";
2
+ export type { SpinnerProps, SpinnerShape } from "./Spinner.generated";
3
+ export { spinner } from "./Spinner.recipe";
@@ -1 +1,2 @@
1
- export { SpinnerLayout as Loading, SpinnerLayout as Spinner, SpinnerLayout as default } from "./Spinner.generated.js";
1
+ export { SpinnerLayout as Spinner, SpinnerLayout as default } from "./Spinner.generated.js";
2
+ export { spinner } from "./Spinner.recipe.js";
@@ -0,0 +1,3 @@
1
+ export { summarizeStatus, diffStatus } from "./status";
2
+ export type { Health, Quality, StatusItem, StatusSummary, StatusTransition } from "./status";
3
+ export { FLAPPING_THRESHOLD } from "./status";
@@ -0,0 +1 @@
1
+ export { FLAPPING_THRESHOLD, diffStatus, summarizeStatus } from "./status.js";
@@ -0,0 +1,167 @@
1
+ import type { JSX } from "solid-js";
2
+ /**
3
+ * Aggregate status: combining many conditions into one indicator without
4
+ * losing the one fact that matters.
5
+ *
6
+ * A realtime call has at least seven independent conditions — is my internet
7
+ * up, am I on the server, is my mic working, is my camera working, is the
8
+ * other party connected, is their mic working, is their camera working — and
9
+ * the naive answer, "show the worst one", is wrong in the way that costs
10
+ * support time: if the internet is down then six of the seven are also down,
11
+ * and reporting "their camera is off" is true, useless, and sends the user to
12
+ * fix the wrong thing.
13
+ *
14
+ * These conditions are not peers. They form a dependency graph, and the useful
15
+ * report is the **root cause**: the deepest failing item whose own
16
+ * dependencies are all healthy. Everything downstream of it is a symptom.
17
+ */
18
+ /**
19
+ * `flapping` earns a value rather than a boolean because it is a condition
20
+ * people name and treat specifically — a link that keeps returning just long
21
+ * enough to look fine is not merely "degraded", and the remedy differs: back
22
+ * off rather than retry harder.
23
+ *
24
+ * It ranks between `degraded` and `reconnecting`. Worse than degraded, because
25
+ * nothing can be relied on; better than reconnecting, because it does work
26
+ * sometimes.
27
+ *
28
+ * `reconnecting` is a value for the same reason: it is a condition a user asks
29
+ * about by name — "was I ever connected?" — and it is not `down`, because down
30
+ * is over and this is in progress.
31
+ *
32
+ * `connecting` and `reconnecting` are separate values because a user reads
33
+ * them differently: the first says be patient, the second says something that
34
+ * was working just broke. "Was I ever connected?" is the question, and only
35
+ * `reconnecting` carries evidence that the answer is yes.
36
+ *
37
+ * down > reconnecting > connecting > flapping > degraded > unknown > ok
38
+ *
39
+ * `connecting` outranks `flapping` because a flapping link at least serves
40
+ * some traffic, and outranks nothing above it because a first attempt is
41
+ * expected rather than broken.
42
+ */
43
+ export type Health = "ok" | "degraded" | "flapping" | "connecting" | "reconnecting" | "down" | "unknown";
44
+ /**
45
+ * How well it is working, given that it *is* working.
46
+ *
47
+ * Orthogonal to `Health` on purpose. nofilter.io proves the need: a call can
48
+ * be `connected` and simultaneously "Quality critical", which is why its chip
49
+ * ends up concatenating two sentences with a separator. Folding quality into
50
+ * health would force a choice between "up" and "bad" when both are true.
51
+ */
52
+ export type Quality = "good" | "fair" | "poor" | "unknown";
53
+ export interface StatusItem {
54
+ id: string;
55
+ health: Health;
56
+ /**
57
+ * Whose problem is it. Only `local` is actionable by this user, which is
58
+ * what decides whether to offer a fix or an explanation.
59
+ */
60
+ scope?: "local" | "remote";
61
+ /** Ids this depends on. Internet before server, server before media. */
62
+ dependsOn?: string[];
63
+ label?: JSX.Element;
64
+ detail?: JSX.Element;
65
+ /** Present when the user can do something about it. */
66
+ onRetry?: () => void;
67
+ /** Working, but how well. Independent of `health`. */
68
+ quality?: Quality;
69
+ /**
70
+ * Can this recover on its own?
71
+ *
72
+ * ICE distinguishes `disconnected` — dropped, may come back — from `failed`,
73
+ * which will not. That difference decides whether the UI shows a spinner or
74
+ * a retry button, and collapsing both to `down` loses it.
75
+ */
76
+ recoverable?: boolean;
77
+ /** Mid-transition: connecting, checking, reconnecting. Drives the pulse. */
78
+ transitioning?: boolean;
79
+ /**
80
+ * Has this ever been healthy in this session?
81
+ *
82
+ * The difference between "Connecting" and "Reconnecting", which the user
83
+ * reads very differently: the first says be patient, the second says
84
+ * something that was working just broke. Same spinner, different sentence.
85
+ */
86
+ everHealthy?: boolean;
87
+ /**
88
+ * How many times this has flipped recently.
89
+ *
90
+ * Flapping is worse than being cleanly down: the connection keeps coming
91
+ * back just long enough for the app to re-run its reconnect work, and a
92
+ * chip that says "connected" between flaps is lying about the experience.
93
+ */
94
+ recentChanges?: number;
95
+ }
96
+ /** Flips within the window above which a connection is treated as unstable. */
97
+ export declare const FLAPPING_THRESHOLD = 3;
98
+ export interface StatusSummary {
99
+ /**
100
+ * The worst health among **causes**, not symptoms.
101
+ *
102
+ * Symptoms inherit their severity from what broke them, so counting them
103
+ * would report the consequence and bury the cause: a server that is
104
+ * reconnecting takes its media down with it, and "reconnecting" is both
105
+ * truer and more useful than "down".
106
+ */
107
+ health: Health;
108
+ /** Worst quality among items that are otherwise healthy. */
109
+ quality: Quality;
110
+ /**
111
+ * What to call the attempt in progress, if any.
112
+ *
113
+ * `connecting` has never worked; `reconnecting` did and stopped. Answers
114
+ * "was I ever connected?", which is the question behind the spinner.
115
+ */
116
+ attempting?: "connecting" | "reconnecting";
117
+ /** Flipping repeatedly. Not the same as down, and worse to live with. */
118
+ flapping: boolean;
119
+ /** True when the only problems can recover on their own — wait, do not retry. */
120
+ recovering: boolean;
121
+ /**
122
+ * The item to actually tell the user about: the deepest failure whose own
123
+ * dependencies are healthy. Undefined when everything is `ok`.
124
+ */
125
+ cause?: StatusItem;
126
+ /** Every unhealthy item, worst first — the breakdown behind the summary. */
127
+ failing: StatusItem[];
128
+ /** Failures explained by something upstream. Shown as consequences, not causes. */
129
+ symptoms: StatusItem[];
130
+ }
131
+ /**
132
+ * Combine many conditions into one.
133
+ *
134
+ * `health` is the worst present, so the indicator never looks better than
135
+ * reality. `cause` is the root: an item is only a cause if everything it
136
+ * depends on is healthy, which is what stops "camera off" being reported when
137
+ * the real answer is "no internet".
138
+ *
139
+ * Cycles and unknown ids are tolerated — a dependency that is not in the list
140
+ * counts as healthy, so a partial set still produces a sane answer.
141
+ */
142
+ export declare function summarizeStatus(input: StatusItem[]): StatusSummary;
143
+ export interface StatusTransition {
144
+ previous: StatusSummary;
145
+ current: StatusSummary;
146
+ /** Items that just became unhealthy. */
147
+ degraded: StatusItem[];
148
+ /** Items that just became healthy — what "reconnected" is made of. */
149
+ recovered: StatusItem[];
150
+ /** Overall health changed direction. */
151
+ healthChanged: boolean;
152
+ /** Quality moved while health stayed put — nofilter's `quality-restored`/`unstable`. */
153
+ qualityChanged: boolean;
154
+ }
155
+ /**
156
+ * Diff two summaries into the transition between them.
157
+ *
158
+ * Pure, so the caller owns when to run it and how long to show anything. A
159
+ * transient like "quality restored" is `qualityChanged` plus an improvement,
160
+ * displayed for a while by whoever is rendering — the model does not hold a
161
+ * timer, because a timer in a pure function is how you get a status that lies
162
+ * after a tab has been backgrounded.
163
+ */
164
+ export declare function diffStatus(previous: StatusSummary, current: StatusSummary, items: {
165
+ previous: StatusItem[];
166
+ current: StatusItem[];
167
+ }): StatusTransition;
@@ -0,0 +1,101 @@
1
+ const RANK = {
2
+ down: 6,
3
+ reconnecting: 5,
4
+ connecting: 4,
5
+ flapping: 3,
6
+ degraded: 2,
7
+ unknown: 1,
8
+ ok: 0
9
+ };
10
+ const FLAPPING_THRESHOLD = 3;
11
+ const isUnhealthy = (i)=>"ok" !== i.health;
12
+ function summarizeStatus(input) {
13
+ const items = input.map((i)=>{
14
+ if ("flapping" === i.health || "reconnecting" === i.health || "connecting" === i.health) return i;
15
+ if ((i.recentChanges ?? 0) >= FLAPPING_THRESHOLD) return {
16
+ ...i,
17
+ health: "flapping"
18
+ };
19
+ if (i.transitioning && isUnhealthy(i)) return {
20
+ ...i,
21
+ health: i.everHealthy ? "reconnecting" : "connecting"
22
+ };
23
+ return i;
24
+ });
25
+ const byId = new Map(items.map((i)=>[
26
+ i.id,
27
+ i
28
+ ]));
29
+ const unhealthy = items.filter(isUnhealthy).sort((a, b)=>RANK[b.health] - RANK[a.health]);
30
+ const worstQuality = (list)=>{
31
+ const rank = {
32
+ poor: 3,
33
+ fair: 2,
34
+ unknown: 1,
35
+ good: 0
36
+ };
37
+ return list.reduce((worst, i)=>i.quality && rank[i.quality] > rank[worst] ? i.quality : worst, "good");
38
+ };
39
+ const flapping = items.some((i)=>"flapping" === i.health);
40
+ const attempting = (list)=>{
41
+ const trying = list.find((i)=>i.transitioning);
42
+ if (!trying) return;
43
+ return trying.everHealthy ? "reconnecting" : "connecting";
44
+ };
45
+ if (0 === unhealthy.length) return {
46
+ health: "ok",
47
+ quality: flapping ? "poor" : worstQuality(items),
48
+ attempting: attempting(items),
49
+ flapping,
50
+ recovering: false,
51
+ failing: [],
52
+ symptoms: []
53
+ };
54
+ const explainedByUpstream = (item, seen = new Set())=>{
55
+ if (seen.has(item.id)) return false;
56
+ seen.add(item.id);
57
+ return (item.dependsOn ?? []).some((id)=>{
58
+ const dep = byId.get(id);
59
+ return dep ? isUnhealthy(dep) : false;
60
+ });
61
+ };
62
+ const causes = unhealthy.filter((i)=>!explainedByUpstream(i));
63
+ const symptoms = unhealthy.filter((i)=>explainedByUpstream(i));
64
+ const ranked = [
65
+ ...causes
66
+ ].sort((a, b)=>{
67
+ const byHealth = RANK[b.health] - RANK[a.health];
68
+ if (0 !== byHealth) return byHealth;
69
+ const actionable = (i)=>("local" === i.scope ? 1 : 0) + (i.onRetry ? 1 : 0);
70
+ return actionable(b) - actionable(a);
71
+ });
72
+ return {
73
+ health: ranked[0]?.health ?? unhealthy[0].health,
74
+ quality: flapping ? "poor" : worstQuality(items.filter((i)=>!isUnhealthy(i))),
75
+ attempting: attempting(unhealthy),
76
+ flapping,
77
+ recovering: unhealthy.every((i)=>false !== i.recoverable) && unhealthy.some((i)=>i.transitioning || i.recoverable),
78
+ cause: ranked[0],
79
+ failing: unhealthy,
80
+ symptoms
81
+ };
82
+ }
83
+ const QUALITY_RANK = {
84
+ poor: 3,
85
+ fair: 2,
86
+ unknown: 1,
87
+ good: 0
88
+ };
89
+ function diffStatus(previous, current, items) {
90
+ const wasUnhealthy = new Set(items.previous.filter(isUnhealthy).map((i)=>i.id));
91
+ const isNowUnhealthy = new Set(items.current.filter(isUnhealthy).map((i)=>i.id));
92
+ return {
93
+ previous,
94
+ current,
95
+ degraded: items.current.filter((i)=>isNowUnhealthy.has(i.id) && !wasUnhealthy.has(i.id)),
96
+ recovered: items.current.filter((i)=>!isNowUnhealthy.has(i.id) && wasUnhealthy.has(i.id)),
97
+ healthChanged: previous.health !== current.health,
98
+ qualityChanged: QUALITY_RANK[previous.quality] !== QUALITY_RANK[current.quality]
99
+ };
100
+ }
101
+ export { FLAPPING_THRESHOLD, diffStatus, summarizeStatus };