@salt-ds/core 1.68.0 → 1.69.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 (194) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/css/salt-core.css +318 -36
  3. package/dist-cjs/avatar/Avatar.css.js +1 -1
  4. package/dist-cjs/avatar/Avatar.js +5 -2
  5. package/dist-cjs/avatar/Avatar.js.map +1 -1
  6. package/dist-cjs/breadcrumbs/Breadcrumb.css.js +6 -0
  7. package/dist-cjs/breadcrumbs/Breadcrumb.css.js.map +1 -0
  8. package/dist-cjs/breadcrumbs/Breadcrumb.js +104 -0
  9. package/dist-cjs/breadcrumbs/Breadcrumb.js.map +1 -0
  10. package/dist-cjs/breadcrumbs/BreadcrumbLabel.js +25 -0
  11. package/dist-cjs/breadcrumbs/BreadcrumbLabel.js.map +1 -0
  12. package/dist-cjs/breadcrumbs/BreadcrumbTrigger.js +52 -0
  13. package/dist-cjs/breadcrumbs/BreadcrumbTrigger.js.map +1 -0
  14. package/dist-cjs/breadcrumbs/Breadcrumbs.css.js +6 -0
  15. package/dist-cjs/breadcrumbs/Breadcrumbs.css.js.map +1 -0
  16. package/dist-cjs/breadcrumbs/Breadcrumbs.js +151 -0
  17. package/dist-cjs/breadcrumbs/Breadcrumbs.js.map +1 -0
  18. package/dist-cjs/breadcrumbs/internal/BreadcrumbContext.js +12 -0
  19. package/dist-cjs/breadcrumbs/internal/BreadcrumbContext.js.map +1 -0
  20. package/dist-cjs/breadcrumbs/internal/BreadcrumbOverflowDisclosure.js +243 -0
  21. package/dist-cjs/breadcrumbs/internal/BreadcrumbOverflowDisclosure.js.map +1 -0
  22. package/dist-cjs/breadcrumbs/internal/breadcrumbItems.js +21 -0
  23. package/dist-cjs/breadcrumbs/internal/breadcrumbItems.js.map +1 -0
  24. package/dist-cjs/card/Card.css.js +1 -1
  25. package/dist-cjs/card/Card.js +4 -1
  26. package/dist-cjs/card/Card.js.map +1 -1
  27. package/dist-cjs/card/CardContent.css.js +6 -0
  28. package/dist-cjs/card/CardContent.css.js.map +1 -0
  29. package/dist-cjs/card/CardContent.js +30 -0
  30. package/dist-cjs/card/CardContent.js.map +1 -0
  31. package/dist-cjs/card/CardFooter.css.js +6 -0
  32. package/dist-cjs/card/CardFooter.css.js.map +1 -0
  33. package/dist-cjs/card/CardFooter.js +30 -0
  34. package/dist-cjs/card/CardFooter.js.map +1 -0
  35. package/dist-cjs/card/CardHeader.css.js +6 -0
  36. package/dist-cjs/card/CardHeader.css.js.map +1 -0
  37. package/dist-cjs/card/CardHeader.js +30 -0
  38. package/dist-cjs/card/CardHeader.js.map +1 -0
  39. package/dist-cjs/card/hasCardSection.js +16 -0
  40. package/dist-cjs/card/hasCardSection.js.map +1 -0
  41. package/dist-cjs/file-drop-zone/FileDropZone.css.js +1 -1
  42. package/dist-cjs/index.js +14 -0
  43. package/dist-cjs/index.js.map +1 -1
  44. package/dist-cjs/interactable-card/InteractableCard.css.js +1 -1
  45. package/dist-cjs/interactable-card/InteractableCard.js +4 -1
  46. package/dist-cjs/interactable-card/InteractableCard.js.map +1 -1
  47. package/dist-cjs/kbd/Kbd.css.js +1 -1
  48. package/dist-cjs/link-card/LinkCard.css.js +1 -1
  49. package/dist-cjs/link-card/LinkCard.js +4 -1
  50. package/dist-cjs/link-card/LinkCard.js.map +1 -1
  51. package/dist-cjs/list-box/ListBox.css.js +1 -1
  52. package/dist-cjs/list-box/ListBox.js +1 -1
  53. package/dist-cjs/list-box/ListBox.js.map +1 -1
  54. package/dist-cjs/mega-menu/MegaMenuPanel.css.js +1 -1
  55. package/dist-cjs/overlay/Overlay.js +46 -29
  56. package/dist-cjs/overlay/Overlay.js.map +1 -1
  57. package/dist-cjs/overlay/OverlayContext.js +1 -0
  58. package/dist-cjs/overlay/OverlayContext.js.map +1 -1
  59. package/dist-cjs/overlay/OverlayPanel.css.js +1 -1
  60. package/dist-cjs/overlay/OverlayPanel.js +4 -2
  61. package/dist-cjs/overlay/OverlayPanel.js.map +1 -1
  62. package/dist-cjs/semantic-icon-provider/SemanticIconProvider.js +2 -1
  63. package/dist-cjs/semantic-icon-provider/SemanticIconProvider.js.map +1 -1
  64. package/dist-cjs/side-panel/SidePanel.css.js +1 -1
  65. package/dist-cjs/slider/internal/SliderTooltip.css.js +1 -1
  66. package/dist-cjs/slider/internal/SliderTooltip.js +1 -1
  67. package/dist-cjs/slider/internal/SliderTooltip.js.map +1 -1
  68. package/dist-cjs/toast/Toast.css.js +1 -1
  69. package/dist-cjs/toggle-button-group/ToggleButtonGroup.css.js +1 -1
  70. package/dist-cjs/toggletip/ToggletipPanel.css.js +1 -1
  71. package/dist-cjs/toolbar/Toolbar.css.js +1 -1
  72. package/dist-cjs/tooltip/Tooltip.css.js +1 -1
  73. package/dist-cjs/viewport/ViewportProvider.js.map +1 -1
  74. package/dist-es/avatar/Avatar.css.js +1 -1
  75. package/dist-es/avatar/Avatar.js +5 -2
  76. package/dist-es/avatar/Avatar.js.map +1 -1
  77. package/dist-es/breadcrumbs/Breadcrumb.css.js +4 -0
  78. package/dist-es/breadcrumbs/Breadcrumb.css.js.map +1 -0
  79. package/dist-es/breadcrumbs/Breadcrumb.js +102 -0
  80. package/dist-es/breadcrumbs/Breadcrumb.js.map +1 -0
  81. package/dist-es/breadcrumbs/BreadcrumbLabel.js +23 -0
  82. package/dist-es/breadcrumbs/BreadcrumbLabel.js.map +1 -0
  83. package/dist-es/breadcrumbs/BreadcrumbTrigger.js +50 -0
  84. package/dist-es/breadcrumbs/BreadcrumbTrigger.js.map +1 -0
  85. package/dist-es/breadcrumbs/Breadcrumbs.css.js +4 -0
  86. package/dist-es/breadcrumbs/Breadcrumbs.css.js.map +1 -0
  87. package/dist-es/breadcrumbs/Breadcrumbs.js +149 -0
  88. package/dist-es/breadcrumbs/Breadcrumbs.js.map +1 -0
  89. package/dist-es/breadcrumbs/internal/BreadcrumbContext.js +9 -0
  90. package/dist-es/breadcrumbs/internal/BreadcrumbContext.js.map +1 -0
  91. package/dist-es/breadcrumbs/internal/BreadcrumbOverflowDisclosure.js +241 -0
  92. package/dist-es/breadcrumbs/internal/BreadcrumbOverflowDisclosure.js.map +1 -0
  93. package/dist-es/breadcrumbs/internal/breadcrumbItems.js +19 -0
  94. package/dist-es/breadcrumbs/internal/breadcrumbItems.js.map +1 -0
  95. package/dist-es/card/Card.css.js +1 -1
  96. package/dist-es/card/Card.js +4 -1
  97. package/dist-es/card/Card.js.map +1 -1
  98. package/dist-es/card/CardContent.css.js +4 -0
  99. package/dist-es/card/CardContent.css.js.map +1 -0
  100. package/dist-es/card/CardContent.js +28 -0
  101. package/dist-es/card/CardContent.js.map +1 -0
  102. package/dist-es/card/CardFooter.css.js +4 -0
  103. package/dist-es/card/CardFooter.css.js.map +1 -0
  104. package/dist-es/card/CardFooter.js +28 -0
  105. package/dist-es/card/CardFooter.js.map +1 -0
  106. package/dist-es/card/CardHeader.css.js +4 -0
  107. package/dist-es/card/CardHeader.css.js.map +1 -0
  108. package/dist-es/card/CardHeader.js +28 -0
  109. package/dist-es/card/CardHeader.js.map +1 -0
  110. package/dist-es/card/hasCardSection.js +14 -0
  111. package/dist-es/card/hasCardSection.js.map +1 -0
  112. package/dist-es/file-drop-zone/FileDropZone.css.js +1 -1
  113. package/dist-es/index.js +7 -0
  114. package/dist-es/index.js.map +1 -1
  115. package/dist-es/interactable-card/InteractableCard.css.js +1 -1
  116. package/dist-es/interactable-card/InteractableCard.js +4 -1
  117. package/dist-es/interactable-card/InteractableCard.js.map +1 -1
  118. package/dist-es/kbd/Kbd.css.js +1 -1
  119. package/dist-es/link-card/LinkCard.css.js +1 -1
  120. package/dist-es/link-card/LinkCard.js +4 -1
  121. package/dist-es/link-card/LinkCard.js.map +1 -1
  122. package/dist-es/list-box/ListBox.css.js +1 -1
  123. package/dist-es/list-box/ListBox.js +1 -1
  124. package/dist-es/list-box/ListBox.js.map +1 -1
  125. package/dist-es/mega-menu/MegaMenuPanel.css.js +1 -1
  126. package/dist-es/overlay/Overlay.js +46 -29
  127. package/dist-es/overlay/Overlay.js.map +1 -1
  128. package/dist-es/overlay/OverlayContext.js +1 -0
  129. package/dist-es/overlay/OverlayContext.js.map +1 -1
  130. package/dist-es/overlay/OverlayPanel.css.js +1 -1
  131. package/dist-es/overlay/OverlayPanel.js +4 -2
  132. package/dist-es/overlay/OverlayPanel.js.map +1 -1
  133. package/dist-es/semantic-icon-provider/SemanticIconProvider.js +3 -2
  134. package/dist-es/semantic-icon-provider/SemanticIconProvider.js.map +1 -1
  135. package/dist-es/side-panel/SidePanel.css.js +1 -1
  136. package/dist-es/slider/internal/SliderTooltip.css.js +1 -1
  137. package/dist-es/slider/internal/SliderTooltip.js +1 -1
  138. package/dist-es/slider/internal/SliderTooltip.js.map +1 -1
  139. package/dist-es/toast/Toast.css.js +1 -1
  140. package/dist-es/toggle-button-group/ToggleButtonGroup.css.js +1 -1
  141. package/dist-es/toggletip/ToggletipPanel.css.js +1 -1
  142. package/dist-es/toolbar/Toolbar.css.js +1 -1
  143. package/dist-es/tooltip/Tooltip.css.js +1 -1
  144. package/dist-es/viewport/ViewportProvider.js.map +1 -1
  145. package/dist-types/avatar/Avatar.d.ts +11 -1
  146. package/dist-types/breadcrumbs/Breadcrumb.d.ts +23 -0
  147. package/dist-types/breadcrumbs/BreadcrumbLabel.d.ts +4 -0
  148. package/dist-types/breadcrumbs/BreadcrumbTrigger.d.ts +8 -0
  149. package/dist-types/breadcrumbs/Breadcrumbs.d.ts +32 -0
  150. package/dist-types/breadcrumbs/index.d.ts +4 -0
  151. package/dist-types/breadcrumbs/internal/BreadcrumbContext.d.ts +14 -0
  152. package/dist-types/breadcrumbs/internal/BreadcrumbOverflowDisclosure.d.ts +9 -0
  153. package/dist-types/breadcrumbs/internal/breadcrumbItems.d.ts +9 -0
  154. package/dist-types/breakpoints/BreakpointProvider.d.ts +1 -1
  155. package/dist-types/card/CardContent.d.ts +4 -0
  156. package/dist-types/card/CardFooter.d.ts +4 -0
  157. package/dist-types/card/CardHeader.d.ts +4 -0
  158. package/dist-types/card/hasCardSection.d.ts +2 -0
  159. package/dist-types/card/index.d.ts +3 -0
  160. package/dist-types/dialog/Dialog.d.ts +1 -1
  161. package/dist-types/form-field/FormFieldHelperText.d.ts +1 -1
  162. package/dist-types/form-field/FormFieldLabel.d.ts +1 -1
  163. package/dist-types/index.d.ts +1 -0
  164. package/dist-types/mega-menu/MegaMenu.d.ts +1 -1
  165. package/dist-types/menu/Menu.d.ts +1 -1
  166. package/dist-types/menu/MenuBase.d.ts +1 -1
  167. package/dist-types/navigation-item/ExpansionIcon.d.ts +1 -1
  168. package/dist-types/overlay/Overlay.d.ts +14 -3
  169. package/dist-types/overlay/OverlayContext.d.ts +1 -0
  170. package/dist-types/pagination/PageRanges.d.ts +1 -1
  171. package/dist-types/radio-button/RadioButtonIcon.d.ts +1 -1
  172. package/dist-types/salt-provider/SaltProvider.d.ts +2 -2
  173. package/dist-types/salt-provider/ThemeApplicator.d.ts +1 -1
  174. package/dist-types/semantic-icon-provider/SemanticIconProvider.d.ts +2 -1
  175. package/dist-types/side-panel/SidePanelProvider.d.ts +1 -1
  176. package/dist-types/slider/internal/SliderThumb.d.ts +1 -1
  177. package/dist-types/slider/internal/SliderTooltip.d.ts +1 -1
  178. package/dist-types/spinner/svgSpinners/SpinnerSVG.d.ts +1 -1
  179. package/dist-types/stepper/internal/StepConnector.d.ts +1 -1
  180. package/dist-types/stepper/internal/StepExpandTrigger.d.ts +1 -1
  181. package/dist-types/stepper/internal/StepIcon.d.ts +1 -1
  182. package/dist-types/stepper/internal/StepScreenReaderOnly.d.ts +1 -1
  183. package/dist-types/stepper/internal/StepText.d.ts +1 -1
  184. package/dist-types/stepper/internal/StepperProvider.d.ts +1 -1
  185. package/dist-types/tabs/internal/overflow/TabSlot.d.ts +1 -1
  186. package/dist-types/toggletip/Toggletip.d.ts +1 -1
  187. package/dist-types/toolbar/ToolbarOverflow.d.ts +4 -4
  188. package/dist-types/toolbar/ToolbarOverflowFloatingBoundary.d.ts +2 -2
  189. package/dist-types/tooltip/TooltipBase.d.ts +1 -1
  190. package/dist-types/utils/useFloatingUI/useFloatingUI.d.ts +2 -2
  191. package/dist-types/vertical-navigation/SubMenuContext.d.ts +1 -1
  192. package/dist-types/vertical-navigation/VerticalNavigationItemExpansionIcon.d.ts +1 -1
  193. package/dist-types/viewport/ViewportProvider.d.ts +2 -2
  194. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,51 @@
1
1
  # @salt-ds/core
2
2
 
3
+ ## 1.69.0
4
+
5
+ ### Minor Changes
6
+
7
+ - fc59869: Added a `kind` prop to `Avatar` to distinguish usage by what the Avatar represents.
8
+
9
+ - `kind="person"` (default) renders a circular Avatar.
10
+ - `kind="entity"` renders a square Avatar.
11
+
12
+ ```tsx
13
+ <Avatar name="John Doe" />
14
+ <Avatar kind="entity" name="JPMC" />
15
+ ```
16
+
17
+ - e3c0230: Add `CardHeader`, `CardContent` and `CardFooter`, composable layout sections that own the inner padding of a card. Use them as direct children of `Card`, `LinkCard` or `InteractableCard` to create structured layouts and allow other children, such as images or dividers, to extend to the card's edges. When a section is present, the wrapping card's default padding is automatically removed.
18
+ - b573303: Added `Breadcrumbs`, `Breadcrumb`, `BreadcrumbTrigger`, and `BreadcrumbLabel` for secondary navigation trails with collapse, wrapping, and router compatible link rendering.
19
+
20
+ Renamed from `BreadcrumbsNext`, `BreadcrumbNext`, `BreadcrumbNextTrigger`, and `BreadcrumbNextLabel` in lab.
21
+
22
+ ```tsx
23
+ import { Breadcrumb, Breadcrumbs } from "@salt-ds/core";
24
+
25
+ <Breadcrumbs aria-label="Breadcrumb">
26
+ <Breadcrumb href="/">Home</Breadcrumb>
27
+ <Breadcrumb href="/level-1">Level 1</Breadcrumb>
28
+ <Breadcrumb href="/level-2">Current level</Breadcrumb>
29
+ </Breadcrumbs>;
30
+ ```
31
+
32
+ - 9c4e307: Add `hideArrow` prop to `Overlay`.
33
+
34
+ ```tsx
35
+ <Overlay hideArrow>
36
+ <OverlayTrigger>
37
+ <Button>Show Overlay</Button>
38
+ </OverlayTrigger>
39
+ <OverlayPanel>Overlay content</OverlayPanel>
40
+ </Overlay>
41
+ ```
42
+
43
+ ### Patch Changes
44
+
45
+ - e25daab: Fixed the TypeScript definition for `OverlayProps` to no longer include unsupported DOM attributes, since `Overlay` does not render a DOM element.
46
+ - e25daab: Reduced the gap between `Overlay` panels and their anchor element, and improved `Overlay` rendering performance by memoizing context values.
47
+ - df76f3e: Fixed the default semantic `UserIcon` to render with the outline icon instead of the solid icon. Validation semantic icons continue to use solid icons by default.
48
+
3
49
  ## 1.68.0
4
50
 
5
51
  ### Minor Changes
package/css/salt-core.css CHANGED
@@ -148,6 +148,9 @@
148
148
  overflow: hidden;
149
149
  user-select: none;
150
150
  }
151
+ .saltAvatar-entity {
152
+ border-radius: var(--salt-palette-corner-weak, 0);
153
+ }
151
154
  .saltAvatar-accent {
152
155
  --avatar-background: var(--salt-sentiment-accent-background);
153
156
  }
@@ -371,6 +374,155 @@ a.saltAvatar::after {
371
374
  bottom: 0;
372
375
  }
373
376
 
377
+ /* src/breadcrumbs/Breadcrumb.css */
378
+ .saltBreadcrumb {
379
+ align-items: center;
380
+ display: inline-flex;
381
+ flex: 0 1 auto;
382
+ gap: var(--salt-spacing-100);
383
+ list-style: none;
384
+ min-width: 0;
385
+ }
386
+ .saltBreadcrumb-current,
387
+ .saltBreadcrumb-label,
388
+ .saltBreadcrumb-link,
389
+ .saltBreadcrumb-trigger {
390
+ min-width: 0;
391
+ }
392
+ .saltBreadcrumb-trigger {
393
+ align-items: center;
394
+ color: var(--salt-content-primary-foreground);
395
+ display: inline-flex;
396
+ font-family: var(--salt-text-label-fontFamily);
397
+ font-size: var(--salt-text-label-fontSize);
398
+ font-weight: var(--salt-text-fontWeight);
399
+ gap: var(--salt-spacing-50);
400
+ letter-spacing: var(--salt-text-letterSpacing);
401
+ line-height: var(--salt-text-label-lineHeight);
402
+ max-width: 100%;
403
+ text-decoration: var(--salt-typography-textDecoration-none);
404
+ }
405
+ .saltBreadcrumb-link:not(.saltBreadcrumb-current) {
406
+ text-decoration: var(--salt-typography-textDecoration-underline);
407
+ }
408
+ .saltBreadcrumb-link:not(.saltBreadcrumb-current):hover {
409
+ text-decoration: var(--salt-typography-textDecoration-none);
410
+ }
411
+ .saltBreadcrumb-link:not(.saltBreadcrumb-current):active {
412
+ text-decoration: var(--salt-typography-textDecoration-underline);
413
+ }
414
+ .saltBreadcrumb-trigger:focus {
415
+ outline: var(--salt-focused-outline);
416
+ text-decoration: var(--salt-typography-textDecoration-none);
417
+ }
418
+ .saltBreadcrumb-current {
419
+ cursor: var(--salt-cursor-text);
420
+ }
421
+ .saltBreadcrumb-separator {
422
+ --saltIcon-color: var(--salt-content-secondary-foreground);
423
+ --saltIcon-size: var(--salt-size-icon);
424
+ flex: 0 0 auto;
425
+ }
426
+
427
+ /* src/breadcrumbs/Breadcrumbs.css */
428
+ .saltBreadcrumbs {
429
+ display: block;
430
+ margin-block: var(--salt-spacing-25);
431
+ }
432
+ .saltBreadcrumbs-ol {
433
+ display: flex;
434
+ align-items: center;
435
+ flex-wrap: nowrap;
436
+ gap: var(--salt-spacing-100);
437
+ justify-content: flex-start;
438
+ list-style: none;
439
+ margin: 0;
440
+ padding: 0;
441
+ }
442
+ .saltBreadcrumbs-ol-wrap {
443
+ flex-wrap: wrap;
444
+ }
445
+ .saltBreadcrumbs-collapseItem {
446
+ align-items: center;
447
+ display: inline-flex;
448
+ flex: 0 1 auto;
449
+ gap: var(--salt-spacing-100);
450
+ list-style: none;
451
+ min-width: 0;
452
+ }
453
+ .saltBreadcrumbs-collapseButton[aria-expanded=true] {
454
+ --saltButton-background: var(--salt-actionable-subtle-background-active);
455
+ --saltButton-background-hover: var(--salt-actionable-subtle-background-active);
456
+ --saltButton-text-color: var(--salt-actionable-subtle-foreground-active);
457
+ --saltButton-text-color-hover: var(--salt-actionable-subtle-foreground-active);
458
+ --saltButton-borderColor: var(--salt-actionable-subtle-borderColor-active);
459
+ --saltButton-borderColor-hover: var(--salt-actionable-subtle-borderColor-active);
460
+ cursor: var(--salt-cursor-active);
461
+ }
462
+ .saltBreadcrumbs-disclosure {
463
+ background: var(--salt-container-primary-background);
464
+ border: var(--salt-size-fixed-100) var(--salt-borderStyle-solid) var(--salt-selectable-borderColor-selected);
465
+ overflow: hidden;
466
+ overflow-y: auto;
467
+ min-width: 10em;
468
+ position: relative;
469
+ z-index: var(--salt-zIndex-flyover);
470
+ box-shadow: var(--salt-overlayable-shadow-popout);
471
+ box-sizing: border-box;
472
+ border-radius: var(--salt-palette-corner, 0);
473
+ }
474
+ .saltBreadcrumbs-disclosureList {
475
+ list-style: none;
476
+ margin: 0;
477
+ padding: 0;
478
+ }
479
+ .saltBreadcrumbs-disclosureListItem {
480
+ list-style: none;
481
+ margin: 0;
482
+ padding: 0;
483
+ }
484
+ .saltBreadcrumbs-disclosureItem {
485
+ color: var(--salt-content-primary-foreground);
486
+ background: var(--salt-selectable-background);
487
+ font-size: var(--salt-text-fontSize);
488
+ font-weight: var(--salt-text-fontWeight);
489
+ font-family: var(--salt-text-fontFamily);
490
+ line-height: var(--salt-text-lineHeight);
491
+ letter-spacing: var(--salt-text-letterSpacing);
492
+ min-height: calc(var(--salt-size-base) + var(--salt-spacing-100));
493
+ padding: calc(var(--salt-spacing-100) + var(--salt-spacing-25)) var(--salt-spacing-100);
494
+ display: flex;
495
+ gap: var(--salt-spacing-100);
496
+ position: relative;
497
+ cursor: var(--salt-cursor-hover);
498
+ box-sizing: border-box;
499
+ flex-shrink: 0;
500
+ text-decoration: none;
501
+ width: 100%;
502
+ }
503
+ .saltBreadcrumbs-disclosureItem:focus-visible {
504
+ outline: var(--salt-focused-outline);
505
+ outline-offset: calc(var(--salt-size-fixed-100) * -2);
506
+ }
507
+ .saltBreadcrumbs-disclosureItem:hover {
508
+ outline: none;
509
+ }
510
+ .saltBreadcrumbs-disclosureItem:hover,
511
+ .saltBreadcrumbs-disclosureItem:focus-visible {
512
+ background: var(--salt-selectable-background-hover);
513
+ }
514
+ .saltBreadcrumbs-disclosureItem:active {
515
+ background: var(--salt-selectable-background-selected);
516
+ box-shadow: 0 calc(var(--salt-size-fixed-100) * -1) 0 0 var(--salt-selectable-borderColor-selected), 0 var(--salt-size-fixed-100) 0 0 var(--salt-selectable-borderColor-selected);
517
+ }
518
+ .saltBreadcrumbs-disclosureItem[aria-disabled=true],
519
+ .saltBreadcrumbs-disclosureItem[aria-disabled=true]:active {
520
+ background: var(--salt-selectable-background-disabled);
521
+ color: var(--salt-content-primary-foreground-disabled);
522
+ cursor: var(--salt-cursor-disabled);
523
+ box-shadow: none;
524
+ }
525
+
374
526
  /* src/button/Button.css */
375
527
  .saltButton {
376
528
  --button-borderWidth: var(--salt-size-fixed-100);
@@ -697,7 +849,7 @@ a.saltAvatar::after {
697
849
  .saltCard {
698
850
  border-width: var(--saltCard-borderWidth, var(--salt-size-fixed-100));
699
851
  border-style: var(--salt-borderStyle-solid);
700
- padding: var(--saltCard-padding, var(--salt-spacing-200));
852
+ padding: var(--saltCard-padding, var(--card-padding));
701
853
  position: relative;
702
854
  box-shadow: var(--salt-overlayable-shadow);
703
855
  transition: box-shadow var(--salt-duration-instant) ease-in-out;
@@ -705,18 +857,31 @@ a.saltAvatar::after {
705
857
  border-radius: var(--saltCard-borderRadius, var(--salt-palette-corner, 0));
706
858
  overflow: hidden;
707
859
  --card-accent-color: var(--salt-sentiment-accent-background);
860
+ --card-padding: var(--salt-spacing-200);
861
+ }
862
+ .saltCard.saltCard-sectioned {
863
+ padding: 0;
864
+ display: flex;
865
+ flex-direction: column;
866
+ }
867
+ @supports selector(:has(*)) {
868
+ .saltCard:has(> .saltCardHeader, > .saltCardContent, > .saltCardFooter) {
869
+ padding: 0;
870
+ display: flex;
871
+ flex-direction: column;
872
+ }
708
873
  }
709
874
  .saltCard-primary {
710
875
  background: var(--saltCard-background, var(--salt-container-primary-background));
711
- border-color: var(--salt-container-primary-borderColor);
876
+ border-color: var(--salt-container-bold-borderColor);
712
877
  }
713
878
  .saltCard-secondary {
714
879
  background: var(--saltCard-background, var(--salt-container-secondary-background));
715
- border-color: var(--salt-container-secondary-borderColor);
880
+ border-color: var(--salt-container-bold-borderColor);
716
881
  }
717
882
  .saltCard-tertiary {
718
883
  background: var(--saltCard-background, var(--salt-container-tertiary-background));
719
- border-color: var(--salt-container-tertiary-borderColor);
884
+ border-color: var(--salt-container-bold-borderColor);
720
885
  }
721
886
  .saltCard-ghost {
722
887
  background: var(--saltCard-background, var(--salt-container-ghost-background));
@@ -782,7 +947,7 @@ a:focus .saltCard-interactable.saltCard-disabled,
782
947
  .saltCard-disabled,
783
948
  .saltCard-disabled.saltCard-interactable,
784
949
  a:focus .saltCard-interactable.saltCard-disabled {
785
- border-color: var(--salt-container-primary-borderColor-disabled);
950
+ border-color: var(--salt-container-bold-borderColor-disabled);
786
951
  color: var(--saltCard-color-disabled, var(--salt-content-primary-foreground-disabled));
787
952
  cursor: var(--saltCard-cursor-disabled, var(--salt-cursor-disabled));
788
953
  outline: none;
@@ -791,6 +956,97 @@ a:focus .saltCard-interactable.saltCard-disabled {
791
956
  pointer-events: none;
792
957
  }
793
958
 
959
+ /* src/card/CardContent.css */
960
+ .saltCardContent {
961
+ padding: var(--saltCardContent-padding, var(--salt-spacing-200));
962
+ box-sizing: border-box;
963
+ }
964
+ .saltCard-sectioned > .saltCardHeader + .saltCardContent,
965
+ .saltCard-sectioned > .saltCardContent + .saltCardContent,
966
+ .saltLinkCard-sectioned > .saltCardHeader + .saltCardContent,
967
+ .saltLinkCard-sectioned > .saltCardContent + .saltCardContent,
968
+ .saltInteractableCard-sectioned > .saltCardHeader + .saltCardContent,
969
+ .saltInteractableCard-sectioned > .saltCardContent + .saltCardContent {
970
+ padding-top: 0;
971
+ }
972
+ .saltCard-sectioned > .saltCardContent,
973
+ .saltLinkCard-sectioned > .saltCardContent,
974
+ .saltInteractableCard-sectioned > .saltCardContent {
975
+ flex: 1 1 auto;
976
+ }
977
+ @supports selector(:has(*)) {
978
+ .saltCard > .saltCardHeader + .saltCardContent,
979
+ .saltCard > .saltCardContent + .saltCardContent,
980
+ .saltLinkCard > .saltCardHeader + .saltCardContent,
981
+ .saltLinkCard > .saltCardContent + .saltCardContent,
982
+ .saltInteractableCard > .saltCardHeader + .saltCardContent,
983
+ .saltInteractableCard > .saltCardContent + .saltCardContent {
984
+ padding-top: 0;
985
+ }
986
+ .saltCard > .saltCardContent,
987
+ .saltLinkCard > .saltCardContent,
988
+ .saltInteractableCard > .saltCardContent {
989
+ flex: 1 1 auto;
990
+ }
991
+ }
992
+
993
+ /* src/card/CardFooter.css */
994
+ .saltCardFooter {
995
+ padding: var(--saltCardFooter-padding, var(--salt-spacing-200));
996
+ display: flex;
997
+ align-items: center;
998
+ gap: var(--salt-spacing-100);
999
+ box-sizing: border-box;
1000
+ }
1001
+ .saltCard-sectioned > .saltCardHeader + .saltCardFooter,
1002
+ .saltCard-sectioned > .saltCardContent + .saltCardFooter,
1003
+ .saltLinkCard-sectioned > .saltCardHeader + .saltCardFooter,
1004
+ .saltLinkCard-sectioned > .saltCardContent + .saltCardFooter,
1005
+ .saltInteractableCard-sectioned > .saltCardHeader + .saltCardFooter,
1006
+ .saltInteractableCard-sectioned > .saltCardContent + .saltCardFooter {
1007
+ padding-top: 0;
1008
+ }
1009
+ .saltCard-sectioned > .saltCardFooter,
1010
+ .saltLinkCard-sectioned > .saltCardFooter,
1011
+ .saltInteractableCard-sectioned > .saltCardFooter {
1012
+ flex-shrink: 0;
1013
+ margin-top: auto;
1014
+ }
1015
+ @supports selector(:has(*)) {
1016
+ .saltCard > .saltCardHeader + .saltCardFooter,
1017
+ .saltCard > .saltCardContent + .saltCardFooter,
1018
+ .saltLinkCard > .saltCardHeader + .saltCardFooter,
1019
+ .saltLinkCard > .saltCardContent + .saltCardFooter,
1020
+ .saltInteractableCard > .saltCardHeader + .saltCardFooter,
1021
+ .saltInteractableCard > .saltCardContent + .saltCardFooter {
1022
+ padding-top: 0;
1023
+ }
1024
+ .saltCard > .saltCardFooter,
1025
+ .saltLinkCard > .saltCardFooter,
1026
+ .saltInteractableCard > .saltCardFooter {
1027
+ flex-shrink: 0;
1028
+ margin-top: auto;
1029
+ }
1030
+ }
1031
+
1032
+ /* src/card/CardHeader.css */
1033
+ .saltCardHeader {
1034
+ padding: var(--saltCardHeader-padding, var(--salt-spacing-200));
1035
+ box-sizing: border-box;
1036
+ }
1037
+ .saltCard-sectioned > .saltCardHeader,
1038
+ .saltLinkCard-sectioned > .saltCardHeader,
1039
+ .saltInteractableCard-sectioned > .saltCardHeader {
1040
+ flex-shrink: 0;
1041
+ }
1042
+ @supports selector(:has(*)) {
1043
+ .saltCard > .saltCardHeader,
1044
+ .saltLinkCard > .saltCardHeader,
1045
+ .saltInteractableCard > .saltCardHeader {
1046
+ flex-shrink: 0;
1047
+ }
1048
+ }
1049
+
794
1050
  /* src/checkbox/Checkbox.css */
795
1051
  .saltCheckbox {
796
1052
  display: inline-flex;
@@ -1452,7 +1708,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
1452
1708
  text-align: center;
1453
1709
  align-items: center;
1454
1710
  justify-content: center;
1455
- border: var(--saltFileDropZone-border, var(--salt-size-fixed-200) var(--salt-borderStyle-dashed) var(--salt-container-primary-borderColor));
1711
+ border: var(--saltFileDropZone-border, var(--salt-size-fixed-200) var(--salt-borderStyle-dashed) var(--salt-container-bold-borderColor));
1456
1712
  border-radius: var(--saltFileDropZone-borderRadius, var(--salt-palette-corner, 0));
1457
1713
  flex-direction: column;
1458
1714
  padding: var(--salt-spacing-200);
@@ -1475,7 +1731,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
1475
1731
  }
1476
1732
  .saltFileDropZone-disabled {
1477
1733
  background: var(--salt-container-primary-background-disabled);
1478
- border: var(--salt-size-fixed-200) var(--salt-borderStyle-dashed) var(--salt-container-primary-borderColor-disabled);
1734
+ border: var(--salt-size-fixed-200) var(--salt-borderStyle-dashed) var(--salt-container-bold-borderColor-disabled);
1479
1735
  cursor: var(--salt-cursor-disabled);
1480
1736
  color: var(--salt-content-primary-foreground-disabled);
1481
1737
  }
@@ -1917,24 +2173,37 @@ a:focus .saltCard-interactable.saltCard-disabled {
1917
2173
  border-radius: var(--saltInteractableCard-borderRadius, var(--salt-palette-corner, 0));
1918
2174
  box-shadow: var(--salt-overlayable-shadow);
1919
2175
  display: block;
1920
- padding: var(--saltInteractableCard-padding, var(--salt-spacing-200));
2176
+ padding: var(--saltInteractableCard-padding, var(--card-padding));
1921
2177
  position: relative;
1922
2178
  text-align: start;
1923
2179
  transition: box-shadow var(--salt-duration-instant) ease-in-out;
1924
2180
  overflow: hidden;
1925
2181
  --card-accent-color: var(--salt-sentiment-accent-background);
2182
+ --card-padding: var(--salt-spacing-200);
2183
+ }
2184
+ .saltInteractableCard.saltInteractableCard-sectioned {
2185
+ padding: 0;
2186
+ display: flex;
2187
+ flex-direction: column;
2188
+ }
2189
+ @supports selector(:has(*)) {
2190
+ .saltInteractableCard:has(> .saltCardHeader, > .saltCardContent, > .saltCardFooter) {
2191
+ padding: 0;
2192
+ display: flex;
2193
+ flex-direction: column;
2194
+ }
1926
2195
  }
1927
2196
  .saltInteractableCard-primary {
1928
2197
  background: var(--saltInteractableCard-background, var(--salt-container-primary-background));
1929
- border-color: var(--salt-container-primary-borderColor);
2198
+ border-color: var(--salt-container-bold-borderColor);
1930
2199
  }
1931
2200
  .saltInteractableCard-secondary {
1932
2201
  background: var(--saltInteractableCard-background, var(--salt-container-secondary-background));
1933
- border-color: var(--salt-container-secondary-borderColor);
2202
+ border-color: var(--salt-container-bold-borderColor);
1934
2203
  }
1935
2204
  .saltInteractableCard-tertiary {
1936
2205
  background: var(--saltInteractableCard-background, var(--salt-container-tertiary-background));
1937
- border-color: var(--salt-container-tertiary-borderColor);
2206
+ border-color: var(--salt-container-bold-borderColor);
1938
2207
  }
1939
2208
  .saltInteractableCard-accent::after {
1940
2209
  content: "";
@@ -2029,9 +2298,9 @@ a:focus .saltCard-interactable.saltCard-disabled {
2029
2298
  box-sizing: border-box;
2030
2299
  width: fit-content;
2031
2300
  border-radius: var(--salt-palette-corner-weaker);
2032
- border: var(--salt-size-fixed-100) var(--salt-borderStyle-solid) var(--salt-container-primary-borderColor);
2301
+ border: var(--salt-size-fixed-100) var(--salt-borderStyle-solid) var(--salt-container-bold-borderColor);
2033
2302
  background: var(--kbd-background);
2034
- box-shadow: 0 var(--salt-size-fixed-100) 0 0 var(--salt-container-primary-borderColor);
2303
+ box-shadow: 0 var(--salt-size-fixed-100) 0 0 var(--salt-container-bold-borderColor);
2035
2304
  height: calc(var(--salt-size-base) - var(--salt-spacing-100));
2036
2305
  align-items: center;
2037
2306
  padding: 0 var(--salt-spacing-50);
@@ -2140,23 +2409,36 @@ a:focus .saltCard-interactable.saltCard-disabled {
2140
2409
  box-shadow: var(--salt-overlayable-shadow);
2141
2410
  display: block;
2142
2411
  overflow: hidden;
2143
- padding: var(--saltLinkCard-padding, var(--salt-spacing-200));
2412
+ padding: var(--saltLinkCard-padding, var(--card-padding));
2144
2413
  position: relative;
2145
2414
  text-decoration: none;
2146
2415
  transition: box-shadow var(--salt-duration-instant) ease-in-out;
2147
2416
  --linkCard-accent-color: var(--salt-sentiment-accent-background);
2417
+ --card-padding: var(--salt-spacing-200);
2418
+ }
2419
+ .saltLinkCard.saltLinkCard-sectioned {
2420
+ padding: 0;
2421
+ display: flex;
2422
+ flex-direction: column;
2423
+ }
2424
+ @supports selector(:has(*)) {
2425
+ .saltLinkCard:has(> .saltCardHeader, > .saltCardContent, > .saltCardFooter) {
2426
+ padding: 0;
2427
+ display: flex;
2428
+ flex-direction: column;
2429
+ }
2148
2430
  }
2149
2431
  .saltLinkCard-primary {
2150
2432
  background: var(--saltLinkCard-background, var(--salt-container-primary-background));
2151
- border-color: var(--salt-container-primary-borderColor);
2433
+ border-color: var(--salt-container-bold-borderColor);
2152
2434
  }
2153
2435
  .saltLinkCard-secondary {
2154
2436
  background: var(--saltLinkCard-background, var(--salt-container-secondary-background));
2155
- border-color: var(--salt-container-secondary-borderColor);
2437
+ border-color: var(--salt-container-bold-borderColor);
2156
2438
  }
2157
2439
  .saltLinkCard-tertiary {
2158
2440
  background: var(--saltLinkCard-background, var(--salt-container-tertiary-background));
2159
- border-color: var(--salt-container-tertiary-borderColor);
2441
+ border-color: var(--salt-container-bold-borderColor);
2160
2442
  }
2161
2443
  .saltLinkCard-accent::after {
2162
2444
  content: "";
@@ -2224,7 +2506,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
2224
2506
  max-height: inherit;
2225
2507
  }
2226
2508
  .saltListBox-bordered {
2227
- border: var(--salt-size-fixed-100) var(--salt-borderStyle-solid) var(--salt-container-primary-borderColor);
2509
+ border: var(--salt-size-fixed-100) var(--salt-borderStyle-solid) var(--salt-container-bold-borderColor);
2228
2510
  border-radius: var(--salt-palette-corner, 0);
2229
2511
  }
2230
2512
  .saltListBox:focus-visible {
@@ -2368,7 +2650,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
2368
2650
  overflow-y: auto;
2369
2651
  box-sizing: border-box;
2370
2652
  border-radius: var(--salt-palette-corner, 0);
2371
- border: var(--salt-size-fixed-100) var(--salt-borderStyle-solid) var(--salt-container-primary-borderColor);
2653
+ border: var(--salt-size-fixed-100) var(--salt-borderStyle-solid) var(--salt-container-bold-borderColor);
2372
2654
  background: var(--salt-container-primary-background);
2373
2655
  box-shadow: var(--salt-overlayable-shadow-modal);
2374
2656
  }
@@ -3148,7 +3430,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
3148
3430
 
3149
3431
  /* src/overlay/OverlayPanel.css */
3150
3432
  .saltOverlayPanel {
3151
- --overlay-borderColor: var(--saltOverlay-borderColor, var(--salt-container-primary-borderColor));
3433
+ --overlay-borderColor: var(--saltOverlay-borderColor, var(--salt-container-bold-borderColor));
3152
3434
  --overlay-background: var(--saltOverlay-background, var(--salt-container-primary-background));
3153
3435
  font-family: var(--salt-text-fontFamily);
3154
3436
  font-size: var(--saltOverlay-fontSize, var(--salt-text-fontSize));
@@ -4024,7 +4306,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
4024
4306
  /* src/side-panel/SidePanel.css */
4025
4307
  .saltSidePanel {
4026
4308
  --saltSidePanel-width: 300px;
4027
- --sidePanel-border: var(--salt-size-fixed-100) var(--salt-borderStyle-solid) var(--sidePanel-borderColor, var(--salt-container-primary-borderColor));
4309
+ --sidePanel-border: var(--salt-size-fixed-100) var(--salt-borderStyle-solid) var(--sidePanel-borderColor, var(--salt-container-bold-borderColor));
4028
4310
  --saltSidePanel-padding: var(--salt-spacing-300);
4029
4311
  position: relative;
4030
4312
  display: flex;
@@ -4037,15 +4319,15 @@ a:focus .saltCard-interactable.saltCard-disabled {
4037
4319
  }
4038
4320
  .saltSidePanel-primary {
4039
4321
  --sidePanel-background: var(--salt-container-primary-background);
4040
- --sidePanel-borderColor: var(--salt-container-primary-borderColor);
4322
+ --sidePanel-borderColor: var(--salt-container-bold-borderColor);
4041
4323
  }
4042
4324
  .saltSidePanel-secondary {
4043
4325
  --sidePanel-background: var(--salt-container-secondary-background);
4044
- --sidePanel-borderColor: var(--salt-container-secondary-borderColor);
4326
+ --sidePanel-borderColor: var(--salt-container-bold-borderColor);
4045
4327
  }
4046
4328
  .saltSidePanel-tertiary {
4047
4329
  --sidePanel-background: var(--salt-container-tertiary-background);
4048
- --sidePanel-borderColor: var(--salt-container-tertiary-borderColor);
4330
+ --sidePanel-borderColor: var(--salt-container-bold-borderColor);
4049
4331
  }
4050
4332
  .saltSidePanel-none {
4051
4333
  --sidePanel-background: none;
@@ -5272,7 +5554,7 @@ label.saltText small,
5272
5554
  /* src/toast/Toast.css */
5273
5555
  .saltToast {
5274
5556
  --toast-background: var(--salt-container-primary-background);
5275
- --toast-borderColor: var(--salt-container-primary-borderColor);
5557
+ --toast-borderColor: var(--salt-container-bold-borderColor);
5276
5558
  --toast-iconColor: var(--salt-content-primary-foreground);
5277
5559
  background: var(--saltToast-background, var(--toast-background));
5278
5560
  border-color: var(--saltToast-borderColor, var(--toast-borderColor));
@@ -5583,7 +5865,7 @@ label.saltText small,
5583
5865
  --toggleButtonGroup-borderWidth: var(--salt-size-fixed-100);
5584
5866
  display: flex;
5585
5867
  background: var(--salt-container-primary-background);
5586
- border: var(--toggleButtonGroup-borderWidth) var(--salt-borderStyle-solid) var(--salt-container-primary-borderColor);
5868
+ border: var(--toggleButtonGroup-borderWidth) var(--salt-borderStyle-solid) var(--salt-container-bold-borderColor);
5587
5869
  border-radius: var(--salt-palette-corner-weak, 0);
5588
5870
  width: fit-content;
5589
5871
  gap: var(--salt-spacing-50);
@@ -5592,12 +5874,12 @@ label.saltText small,
5592
5874
  }
5593
5875
  .saltToggleButtonGroup-disabled {
5594
5876
  background: var(--salt-container-primary-background-disabled);
5595
- border-color: var(--salt-container-primary-borderColor-disabled);
5877
+ border-color: var(--salt-container-bold-borderColor-disabled);
5596
5878
  cursor: var(--salt-cursor-disabled);
5597
5879
  }
5598
5880
  .saltToggleButtonGroup-readOnly {
5599
5881
  background: var(--salt-container-primary-background);
5600
- border-color: var(--salt-container-primary-borderColor);
5882
+ border-color: var(--salt-container-bold-borderColor);
5601
5883
  cursor: var(--salt-cursor-disabled);
5602
5884
  }
5603
5885
  .saltToggleButtonGroup .saltToggleButton {
@@ -5616,7 +5898,7 @@ label.saltText small,
5616
5898
  /* src/toggletip/ToggletipPanel.css */
5617
5899
  .saltToggletipPanel {
5618
5900
  --toggletip-background: var(--salt-container-primary-background);
5619
- --toggletip-borderColor: var(--salt-container-primary-borderColor);
5901
+ --toggletip-borderColor: var(--salt-container-bold-borderColor);
5620
5902
  box-sizing: border-box;
5621
5903
  padding: var(--salt-spacing-100);
5622
5904
  font-family: var(--salt-text-fontFamily);
@@ -5725,15 +6007,15 @@ label.saltText small,
5725
6007
  }
5726
6008
  .saltToolbar-primary {
5727
6009
  --toolbar-background: var(--salt-container-primary-background);
5728
- --toolbar-borderColor: var(--salt-container-primary-borderColor);
6010
+ --toolbar-borderColor: var(--salt-container-bold-borderColor);
5729
6011
  }
5730
6012
  .saltToolbar-secondary {
5731
6013
  --toolbar-background: var(--salt-container-secondary-background);
5732
- --toolbar-borderColor: var(--salt-container-secondary-borderColor);
6014
+ --toolbar-borderColor: var(--salt-container-bold-borderColor);
5733
6015
  }
5734
6016
  .saltToolbar-tertiary {
5735
6017
  --toolbar-background: var(--salt-container-tertiary-background);
5736
- --toolbar-borderColor: var(--salt-container-tertiary-borderColor);
6018
+ --toolbar-borderColor: var(--salt-container-bold-borderColor);
5737
6019
  }
5738
6020
  .saltToolbar-bordered {
5739
6021
  background: var(--saltToolbar-background, var(--toolbar-background));
@@ -5880,7 +6162,7 @@ label.saltText small,
5880
6162
  --tooltip-background: var(--saltTooltip-background, var(--salt-container-primary-background));
5881
6163
  --tooltip-zIndex: var(--saltTooltip-zIndex, var(--salt-zIndex-flyover));
5882
6164
  --tooltip-icon-marginTop: calc((var(--salt-text-lineHeight) - max(var(--salt-size-icon), 12px)) / 2);
5883
- --tooltip-status-borderColor: var(--salt-container-primary-borderColor);
6165
+ --tooltip-status-borderColor: var(--salt-container-bold-borderColor);
5884
6166
  --tooltip-borderWidth: var(--salt-size-fixed-100);
5885
6167
  --tooltip-padding: calc(var(--salt-spacing-75) - var(--tooltip-borderWidth)) var(--salt-spacing-100);
5886
6168
  }
@@ -6480,7 +6762,7 @@ label.saltText small,
6480
6762
  /* src/slider/internal/SliderTooltip.css */
6481
6763
  .saltSliderTooltip {
6482
6764
  background: var(--salt-container-primary-background);
6483
- border-color: var(--salt-container-primary-borderColor);
6765
+ border-color: var(--salt-container-bold-borderColor);
6484
6766
  border-style: var(--saltTooltip-borderStyle, var(--salt-borderStyle-solid));
6485
6767
  border-width: var(--saltTooltip-borderWidth, var(--salt-size-fixed-100));
6486
6768
  border-radius: var(--saltTooltip-borderRadius, var(--salt-palette-corner-weak, 0));
@@ -6507,7 +6789,7 @@ label.saltText small,
6507
6789
  pointer-events: none;
6508
6790
  top: 100%;
6509
6791
  transform: translateX(-50%);
6510
- stroke: var(--salt-container-primary-borderColor);
6792
+ stroke: var(--salt-container-bold-borderColor);
6511
6793
  stroke-width: var(--salt-size-fixed-100);
6512
6794
  width: var(--salt-size-icon);
6513
6795
  }
@@ -6859,4 +7141,4 @@ label.saltText small,
6859
7141
  box-shadow: 0 calc(var(--salt-size-fixed-100) * -1) 0 0 var(--salt-selectable-borderColor-selected), 0 var(--salt-size-fixed-100) 0 0 var(--salt-selectable-borderColor-selected);
6860
7142
  }
6861
7143
 
6862
- /* src/467e9838-024c-426c-b48e-541cfcba6225.css */
7144
+ /* src/c5e3d709-38a6-4a0c-a69c-6a4d66821241.css */
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var css_248z = "/* Default variables applied to the root element */\n.saltAvatar {\n --avatar-size-multiplier: var(--saltAvatar-size-multiplier, 1);\n --avatar-base-size: var(--salt-size-base);\n --avatar-base-fontSize: var(--saltAvatar-fontSize, var(--salt-text-notation-fontSize));\n --avatar-container-size: calc(var(--avatar-base-size) * var(--avatar-size-multiplier));\n --avatar-fontSize: calc(var(--avatar-base-fontSize) * var(--avatar-size-multiplier));\n /* Icon styling */\n --saltIcon-size: calc(var(--avatar-container-size) / 2);\n}\n\n/* Style applied to the root element */\n.saltAvatar {\n color: var(--saltAvatar-foreground, var(--salt-content-bold-foreground));\n background: var(--saltAvatar-background, var(--avatar-background));\n font-size: var(--avatar-fontSize);\n line-height: var(--saltAvatar-lineHeight, var(--salt-text-notation-lineHeight));\n font-family: var(--salt-text-notation-fontFamily);\n font-weight: var(--salt-text-notation-fontWeight);\n width: var(--avatar-container-size);\n min-width: var(--avatar-container-size);\n height: var(--avatar-container-size);\n min-height: var(--avatar-container-size);\n border-radius: var(--saltAvatar-borderRadius, var(--salt-palette-corner-strongest, 50%));\n border: none;\n padding: 0;\n appearance: none;\n -webkit-appearance: none;\n text-decoration: none;\n position: relative;\n\n display: flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n user-select: none;\n}\n\n.saltAvatar-accent {\n --avatar-background: var(--salt-sentiment-accent-background);\n}\n\n.saltAvatar-category-1 {\n --avatar-background: var(--salt-category-1-bold-background);\n}\n.saltAvatar-category-2 {\n --avatar-background: var(--salt-category-2-bold-background);\n}\n\n.saltAvatar-category-3 {\n --avatar-background: var(--salt-category-3-bold-background);\n}\n\n.saltAvatar-category-4 {\n --avatar-background: var(--salt-category-4-bold-background);\n}\n\n.saltAvatar-category-5 {\n --avatar-background: var(--salt-category-5-bold-background);\n}\n\n.saltAvatar-category-6 {\n --avatar-background: var(--salt-category-6-bold-background);\n}\n\n.saltAvatar-category-7 {\n --avatar-background: var(--salt-category-7-bold-background);\n}\n\n.saltAvatar-category-8 {\n --avatar-background: var(--salt-category-8-bold-background);\n}\n\n.saltAvatar-category-9 {\n --avatar-background: var(--salt-category-9-bold-background);\n}\n\n.saltAvatar-category-10 {\n --avatar-background: var(--salt-category-10-bold-background);\n}\n.saltAvatar-category-11 {\n --avatar-background: var(--salt-category-11-bold-background);\n}\n.saltAvatar-category-12 {\n --avatar-background: var(--salt-category-12-bold-background);\n}\n.saltAvatar-category-13 {\n --avatar-background: var(--salt-category-13-bold-background);\n}\n.saltAvatar-category-14 {\n --avatar-background: var(--salt-category-14-bold-background);\n}\n.saltAvatar-category-15 {\n --avatar-background: var(--salt-category-15-bold-background);\n}\n.saltAvatar-category-16 {\n --avatar-background: var(--salt-category-16-bold-background);\n}\n.saltAvatar-category-17 {\n --avatar-background: var(--salt-category-17-bold-background);\n}\n.saltAvatar-category-18 {\n --avatar-background: var(--salt-category-18-bold-background);\n}\n.saltAvatar-category-19 {\n --avatar-background: var(--salt-category-19-bold-background);\n}\n.saltAvatar-category-20 {\n --avatar-background: var(--salt-category-20-bold-background);\n}\n\n.saltAvatar:has(img),\n.saltAvatar-withImage {\n --avatar-background: none;\n}\n\n/* Style applied to the image/svg element. We specifically allow SVGs as the Avatar image to enable SVGs such as Flags to take up the full Avatar space */\n.saltAvatar > img,\n.saltAvatar > svg:not(.saltIcon) {\n width: 100%;\n height: 100%;\n}\n\n.saltAvatar:focus-visible {\n outline-offset: var(--salt-spacing-fixed-100);\n}\n\nbutton.saltAvatar,\na.saltAvatar {\n cursor: var(--salt-cursor-hover);\n}\n\nbutton.saltAvatar:disabled {\n cursor: var(--salt-cursor-disabled);\n}\n\nbutton.saltAvatar::after,\na.saltAvatar::after {\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n pointer-events: none;\n background: transparent;\n}\n\n.saltAvatar[aria-expanded=\"true\"][aria-haspopup=\"menu\"]::after,\n.saltAvatar[aria-expanded=\"true\"][aria-haspopup=\"dialog\"]::after {\n background: var(--salt-overlayable-background-hover);\n}\n\n@media (hover: hover) {\n button.saltAvatar:hover::after,\n a.saltAvatar:hover::after {\n background: var(--salt-overlayable-background-hover);\n }\n\n button.saltAvatar:disabled:hover::after {\n background: transparent;\n }\n}\n";
3
+ var css_248z = "/* Default variables applied to the root element */\n.saltAvatar {\n --avatar-size-multiplier: var(--saltAvatar-size-multiplier, 1);\n --avatar-base-size: var(--salt-size-base);\n --avatar-base-fontSize: var(--saltAvatar-fontSize, var(--salt-text-notation-fontSize));\n --avatar-container-size: calc(var(--avatar-base-size) * var(--avatar-size-multiplier));\n --avatar-fontSize: calc(var(--avatar-base-fontSize) * var(--avatar-size-multiplier));\n /* Icon styling */\n --saltIcon-size: calc(var(--avatar-container-size) / 2);\n}\n\n/* Style applied to the root element */\n.saltAvatar {\n color: var(--saltAvatar-foreground, var(--salt-content-bold-foreground));\n background: var(--saltAvatar-background, var(--avatar-background));\n font-size: var(--avatar-fontSize);\n line-height: var(--saltAvatar-lineHeight, var(--salt-text-notation-lineHeight));\n font-family: var(--salt-text-notation-fontFamily);\n font-weight: var(--salt-text-notation-fontWeight);\n width: var(--avatar-container-size);\n min-width: var(--avatar-container-size);\n height: var(--avatar-container-size);\n min-height: var(--avatar-container-size);\n border-radius: var(--saltAvatar-borderRadius, var(--salt-palette-corner-strongest, 50%));\n border: none;\n padding: 0;\n appearance: none;\n -webkit-appearance: none;\n text-decoration: none;\n position: relative;\n\n display: flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n user-select: none;\n}\n\n.saltAvatar-entity {\n border-radius: var(--salt-palette-corner-weak, 0);\n}\n\n.saltAvatar-accent {\n --avatar-background: var(--salt-sentiment-accent-background);\n}\n\n.saltAvatar-category-1 {\n --avatar-background: var(--salt-category-1-bold-background);\n}\n.saltAvatar-category-2 {\n --avatar-background: var(--salt-category-2-bold-background);\n}\n\n.saltAvatar-category-3 {\n --avatar-background: var(--salt-category-3-bold-background);\n}\n\n.saltAvatar-category-4 {\n --avatar-background: var(--salt-category-4-bold-background);\n}\n\n.saltAvatar-category-5 {\n --avatar-background: var(--salt-category-5-bold-background);\n}\n\n.saltAvatar-category-6 {\n --avatar-background: var(--salt-category-6-bold-background);\n}\n\n.saltAvatar-category-7 {\n --avatar-background: var(--salt-category-7-bold-background);\n}\n\n.saltAvatar-category-8 {\n --avatar-background: var(--salt-category-8-bold-background);\n}\n\n.saltAvatar-category-9 {\n --avatar-background: var(--salt-category-9-bold-background);\n}\n\n.saltAvatar-category-10 {\n --avatar-background: var(--salt-category-10-bold-background);\n}\n.saltAvatar-category-11 {\n --avatar-background: var(--salt-category-11-bold-background);\n}\n.saltAvatar-category-12 {\n --avatar-background: var(--salt-category-12-bold-background);\n}\n.saltAvatar-category-13 {\n --avatar-background: var(--salt-category-13-bold-background);\n}\n.saltAvatar-category-14 {\n --avatar-background: var(--salt-category-14-bold-background);\n}\n.saltAvatar-category-15 {\n --avatar-background: var(--salt-category-15-bold-background);\n}\n.saltAvatar-category-16 {\n --avatar-background: var(--salt-category-16-bold-background);\n}\n.saltAvatar-category-17 {\n --avatar-background: var(--salt-category-17-bold-background);\n}\n.saltAvatar-category-18 {\n --avatar-background: var(--salt-category-18-bold-background);\n}\n.saltAvatar-category-19 {\n --avatar-background: var(--salt-category-19-bold-background);\n}\n.saltAvatar-category-20 {\n --avatar-background: var(--salt-category-20-bold-background);\n}\n\n.saltAvatar:has(img),\n.saltAvatar-withImage {\n --avatar-background: none;\n}\n\n/* Style applied to the image/svg element. We specifically allow SVGs as the Avatar image to enable SVGs such as Flags to take up the full Avatar space */\n.saltAvatar > img,\n.saltAvatar > svg:not(.saltIcon) {\n width: 100%;\n height: 100%;\n}\n\n.saltAvatar:focus-visible {\n outline-offset: var(--salt-spacing-fixed-100);\n}\n\nbutton.saltAvatar,\na.saltAvatar {\n cursor: var(--salt-cursor-hover);\n}\n\nbutton.saltAvatar:disabled {\n cursor: var(--salt-cursor-disabled);\n}\n\nbutton.saltAvatar::after,\na.saltAvatar::after {\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n pointer-events: none;\n background: transparent;\n}\n\n.saltAvatar[aria-expanded=\"true\"][aria-haspopup=\"menu\"]::after,\n.saltAvatar[aria-expanded=\"true\"][aria-haspopup=\"dialog\"]::after {\n background: var(--salt-overlayable-background-hover);\n}\n\n@media (hover: hover) {\n button.saltAvatar:hover::after,\n a.saltAvatar:hover::after {\n background: var(--salt-overlayable-background-hover);\n }\n\n button.saltAvatar:disabled:hover::after {\n background: transparent;\n }\n}\n";
4
4
 
5
5
  module.exports = css_248z;
6
6
  //# sourceMappingURL=Avatar.css.js.map
@@ -29,6 +29,7 @@ const Avatar = React.forwardRef(function Avatar2({
29
29
  color = "accent",
30
30
  name,
31
31
  nameToInitials = defaultNameToInitials,
32
+ kind = "person",
32
33
  src,
33
34
  size = DEFAULT_AVATAR_SIZE,
34
35
  style: styleProp,
@@ -37,8 +38,9 @@ const Avatar = React.forwardRef(function Avatar2({
37
38
  ...rest
38
39
  }, ref) {
39
40
  const targetWindow = window.useWindow();
40
- const { UserIcon } = SemanticIconProvider.useIcon();
41
- const fallbackIcon = fallbackIconProp === void 0 ? /* @__PURE__ */ jsxRuntime.jsx(UserIcon, { "aria-hidden": true }) : fallbackIconProp;
41
+ const { UserIcon, EntityIcon } = SemanticIconProvider.useIcon();
42
+ const DefaultFallbackIcon = kind === "entity" ? EntityIcon : UserIcon;
43
+ const fallbackIcon = fallbackIconProp === void 0 ? /* @__PURE__ */ jsxRuntime.jsx(DefaultFallbackIcon, { "aria-hidden": true }) : fallbackIconProp;
42
44
  styles.useComponentCssInjection({
43
45
  testId: "salt-avatar",
44
46
  css: Avatar$1,
@@ -72,6 +74,7 @@ const Avatar = React.forwardRef(function Avatar2({
72
74
  className: clsx.clsx(
73
75
  withBaseName(),
74
76
  withBaseName(color),
77
+ withBaseName(kind),
75
78
  {
76
79
  [withBaseName("withImage")]: hasImgNotFailing
77
80
  },