@starci/grammar 0.12.11 → 0.12.13

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 (64) hide show
  1. package/LICENSE +21 -21
  2. package/dist/.build-stamp.json +4 -4
  3. package/dist/common/components-forms.css +27 -13
  4. package/dist/common/components-navigation.css +11 -11
  5. package/dist/common/components-overlays.css +2 -2
  6. package/dist/common/registry.d.ts +3 -3
  7. package/dist/common/renderers-forms.d.ts +2 -2
  8. package/dist/common/renderers-forms.d.ts.map +1 -1
  9. package/dist/common/renderers-forms.js.map +1 -1
  10. package/dist/common/renderers-navigation.d.ts +1 -1
  11. package/dist/common/renderers.d.ts +1 -1
  12. package/dist/common/renderers.d.ts.map +1 -1
  13. package/dist/common/renderers.js.map +1 -1
  14. package/dist/common/styles.css +155 -25
  15. package/dist/core/HorizontalScrollFrame.d.ts +12 -0
  16. package/dist/core/HorizontalScrollFrame.d.ts.map +1 -0
  17. package/dist/core/HorizontalScrollFrame.js +36 -0
  18. package/dist/core/HorizontalScrollFrame.js.map +1 -0
  19. package/dist/core/branch/ListBox/index.d.ts +7 -1
  20. package/dist/core/branch/ListBox/index.d.ts.map +1 -1
  21. package/dist/core/branch/ListBox/index.js +2 -2
  22. package/dist/core/branch/ListBox/index.js.map +1 -1
  23. package/dist/core/branch/Tabs/index.d.ts +1 -1
  24. package/dist/core/branch/Tabs/index.d.ts.map +1 -1
  25. package/dist/core/branch/Tabs/index.js +2 -20
  26. package/dist/core/branch/Tabs/index.js.map +1 -1
  27. package/dist/core/composite/ChatBubble/index.d.ts +4 -1
  28. package/dist/core/composite/ChatBubble/index.d.ts.map +1 -1
  29. package/dist/core/composite/ChatBubble/index.js +2 -1
  30. package/dist/core/composite/ChatBubble/index.js.map +1 -1
  31. package/dist/core/composite/HorizontalScrollRegion/index.d.ts +5 -0
  32. package/dist/core/composite/HorizontalScrollRegion/index.d.ts.map +1 -1
  33. package/dist/core/composite/HorizontalScrollRegion/index.js +5 -3
  34. package/dist/core/composite/HorizontalScrollRegion/index.js.map +1 -1
  35. package/dist/core/composite/SegmentedControl/index.d.ts +7 -1
  36. package/dist/core/composite/SegmentedControl/index.d.ts.map +1 -1
  37. package/dist/core/composite/SegmentedControl/index.js +3 -3
  38. package/dist/core/composite/SegmentedControl/index.js.map +1 -1
  39. package/dist/core/composite/VerticalScrollRegion/index.d.ts +7 -0
  40. package/dist/core/composite/VerticalScrollRegion/index.d.ts.map +1 -1
  41. package/dist/core/composite/VerticalScrollRegion/index.js +4 -3
  42. package/dist/core/composite/VerticalScrollRegion/index.js.map +1 -1
  43. package/dist/core/primitive/Avatar/index.d.ts +1 -1
  44. package/dist/core/primitive/Avatar/index.d.ts.map +1 -1
  45. package/dist/core/primitive/Avatar/index.js +1 -1
  46. package/dist/core/primitive/Button/index.d.ts.map +1 -1
  47. package/dist/core/primitive/Button/index.js +2 -2
  48. package/dist/core/primitive/Button/index.js.map +1 -1
  49. package/dist/core/primitive/Divider/index.d.ts +7 -0
  50. package/dist/core/primitive/Divider/index.d.ts.map +1 -1
  51. package/dist/core/primitive/Divider/index.js +2 -1
  52. package/dist/core/primitive/Divider/index.js.map +1 -1
  53. package/dist/core/primitive/Field/index.d.ts +3 -1
  54. package/dist/core/primitive/Field/index.d.ts.map +1 -1
  55. package/dist/core/primitive/Field/index.js +2 -2
  56. package/dist/core/primitive/Field/index.js.map +1 -1
  57. package/dist/core/primitive/IconButton/index.d.ts +5 -3
  58. package/dist/core/primitive/IconButton/index.d.ts.map +1 -1
  59. package/dist/core/primitive/IconButton/index.js +6 -2
  60. package/dist/core/primitive/IconButton/index.js.map +1 -1
  61. package/dist/core/primitive/Switch/index.d.ts +1 -1
  62. package/dist/core/primitive/Switch/index.js +1 -1
  63. package/dist/core/primitive/Switch/index.js.map +1 -1
  64. package/package.json +1 -1
@@ -550,7 +550,7 @@
550
550
  display: flex;
551
551
  width: 100%;
552
552
  min-width: 0;
553
- height: 2.25rem;
553
+ height: var(--starci-core-control-min-size, 2.5rem);
554
554
  align-items: center;
555
555
  justify-content: space-between;
556
556
  gap: 0.5rem;
@@ -628,6 +628,52 @@
628
628
  * `overflow: auto auto` - two scrolling axes under an OVERFLOW-3 claim that promises one. Naming
629
629
  * both axes here keeps the render at the one axis the claim describes.
630
630
  */
631
+ .starci-horizontal-scroll-frame {
632
+ position: relative;
633
+ width: 100%;
634
+ min-width: 0;
635
+ }
636
+
637
+ .starci-horizontal-scroll-prev,
638
+ .starci-horizontal-scroll-next {
639
+ position: absolute;
640
+ z-index: 2;
641
+ top: 50%;
642
+ transform: translateY(-50%);
643
+ display: none;
644
+ }
645
+
646
+ .starci-horizontal-scroll-prev { inset-inline-start: 0.25rem; }
647
+ .starci-horizontal-scroll-next { inset-inline-end: 0.25rem; }
648
+ .starci-horizontal-scroll-next svg { rotate: 180deg; }
649
+ .starci-horizontal-scroll-frame:dir(rtl) > :is(.starci-horizontal-scroll-prev, .starci-horizontal-scroll-next) svg { scale: -1 1; }
650
+
651
+ .starci-horizontal-scroll-frame:has(> :is([data-left-scroll="true"], [data-left-right-scroll="true"])) > .starci-horizontal-scroll-prev,
652
+ .starci-horizontal-scroll-frame:has(> :is([data-right-scroll="true"], [data-left-right-scroll="true"])) > .starci-horizontal-scroll-next {
653
+ display: inline-flex;
654
+ }
655
+
656
+ /* Preserve the Tabs glyph's vendor size and center, with a small IconButton hit target. */
657
+ .starci-horizontal-scroll-frame[data-scroll-appearance="tabs"] > .starci-horizontal-scroll-prev { inset-inline-start: -0.25rem; }
658
+ .starci-horizontal-scroll-frame[data-scroll-appearance="tabs"] > .starci-horizontal-scroll-next { inset-inline-end: -0.25rem; }
659
+ .starci-horizontal-scroll-frame[data-scroll-appearance="tabs"] .starci-core-icon-button {
660
+ --button-bg-hover: transparent;
661
+ --button-bg-pressed: transparent;
662
+ --button-fg: var(--foreground);
663
+ transform: none;
664
+ transition: opacity 150ms var(--ease-smooth);
665
+ }
666
+ @media (hover: hover) {
667
+ .starci-horizontal-scroll-frame[data-scroll-appearance="tabs"] .starci-core-icon-button:hover { opacity: 0.7; }
668
+ }
669
+ @media (prefers-reduced-motion: reduce) {
670
+ .starci-horizontal-scroll-frame[data-scroll-appearance="tabs"] .starci-core-icon-button { transition: none; }
671
+ }
672
+ .starci-horizontal-scroll-frame[data-scroll-appearance="tabs"] .starci-core-icon {
673
+ width: 1rem;
674
+ height: 1rem;
675
+ }
676
+
631
677
  .starci-core-horizontal-scroll-region {
632
678
  width: 100%;
633
679
  min-width: 0;
@@ -1860,8 +1906,8 @@
1860
1906
  .starci-core-navigation-feature-nav-actions :where(button, [role="button"], a[href]),
1861
1907
  .starci-core-navigation-feature-nav-navigation :where(button, [role="button"], a[href]),
1862
1908
  .starci-core-navigation-feature-nav-compact-navigation :where(button, [role="button"], a[href]) {
1863
- min-inline-size: var(--starci-core-control-min-size, 2.75rem);
1864
- min-block-size: var(--starci-core-control-min-size, 2.75rem);
1909
+ min-inline-size: var(--starci-core-control-min-size, 2.5rem);
1910
+ min-block-size: var(--starci-core-control-min-size, 2.5rem);
1865
1911
  }
1866
1912
 
1867
1913
  /*
@@ -1872,7 +1918,7 @@
1872
1918
  * touch target.
1873
1919
  */
1874
1920
  .starci-core-navigation-feature-nav-identity .starci-core-text-action[data-appearance="plain"] {
1875
- min-block-size: var(--starci-core-control-min-size, 2.75rem);
1921
+ min-block-size: var(--starci-core-control-min-size, 2.5rem);
1876
1922
  }
1877
1923
 
1878
1924
  .starci-core-navigation-feature-nav-feature {
@@ -1953,8 +1999,8 @@
1953
1999
  */
1954
2000
  .starci-core-subnav-toggle {
1955
2001
  display: inline-flex;
1956
- width: 2.75rem !important;
1957
- height: 2.75rem !important;
2002
+ width: var(--starci-core-control-min-size, 2.5rem) !important;
2003
+ height: var(--starci-core-control-min-size, 2.5rem) !important;
1958
2004
  align-items: center;
1959
2005
  justify-content: center;
1960
2006
  border-radius: 0 !important;
@@ -1976,8 +2022,8 @@
1976
2022
  */
1977
2023
  @media (pointer: coarse), (max-width: 40rem) {
1978
2024
  .starci-core-subnav-toggle {
1979
- min-inline-size: var(--starci-core-control-min-size, 2.75rem);
1980
- min-block-size: var(--starci-core-control-min-size, 2.75rem);
2025
+ min-inline-size: var(--starci-core-control-min-size, 2.5rem);
2026
+ min-block-size: var(--starci-core-control-min-size, 2.5rem);
1981
2027
  }
1982
2028
  }
1983
2029
 
@@ -2383,8 +2429,8 @@
2383
2429
  }
2384
2430
 
2385
2431
  .starci-core-sidebar[data-collapsed="true"] .starci-core-sidebar-item {
2386
- width: 2.75rem !important;
2387
- height: 2.75rem;
2432
+ width: var(--starci-core-control-min-size, 2.5rem) !important;
2433
+ height: var(--starci-core-control-min-size, 2.5rem);
2388
2434
  justify-content: center !important;
2389
2435
  gap: 0 !important;
2390
2436
  border-radius: var(--starci-core-pill-radius, 999px) !important;
@@ -2467,8 +2513,8 @@
2467
2513
 
2468
2514
  .starci-core-chat-workspace-rail-trigger {
2469
2515
  display: inline-flex;
2470
- min-width: 2.75rem;
2471
- min-height: 2.75rem;
2516
+ min-width: var(--starci-core-control-min-size, 2.5rem);
2517
+ min-height: var(--starci-core-control-min-size, 2.5rem);
2472
2518
  align-items: center;
2473
2519
  justify-content: center;
2474
2520
  padding-inline: 0.75rem;
@@ -2767,6 +2813,17 @@
2767
2813
  flex: 1 1 0%;
2768
2814
  }
2769
2815
 
2816
+ /* A vertical hairline between touching columns of one joined surface: it fills the row, whatever its height. */
2817
+ .starci-core-divider-bare[data-grammar-divider-orientation="vertical"] {
2818
+ align-self: stretch;
2819
+ flex: 0 0 auto;
2820
+ }
2821
+
2822
+ /* A scroll region on the page tone: the surface's content scrolls on the background so what it holds (bubbles) stands out. */
2823
+ [data-grammar-scroll-region-tone="background"] {
2824
+ background-color: var(--background);
2825
+ }
2826
+
2770
2827
  /* Region, List, ListItem: semantic page structure that draws nothing of its own. */
2771
2828
  .starci-core-region[data-grammar-region-spacing="spaced"] {
2772
2829
  padding-block-end: 2rem;
@@ -2844,15 +2901,55 @@
2844
2901
  /* --- Icon button: a HeroUI `Button` worn as a circle. --- */
2845
2902
  .starci-core-control-size .starci-core-field-skeleton-control {
2846
2903
  box-sizing: border-box;
2847
- block-size: var(--starci-core-control-min-size, 2.75rem) !important;
2848
- min-block-size: var(--starci-core-control-min-size, 2.75rem) !important;
2849
- max-block-size: var(--starci-core-control-min-size, 2.75rem) !important;
2904
+ block-size: var(--starci-core-control-min-size, 2.5rem) !important;
2905
+ min-block-size: var(--starci-core-control-min-size, 2.5rem) !important;
2906
+ max-block-size: var(--starci-core-control-min-size, 2.5rem) !important;
2907
+ }
2908
+
2909
+ /*
2910
+ * Owner ruling `control-height-40`: one control height, 2.5rem (40px, HeroUI's own h-10), is the default of every
2911
+ * standalone control. `md` and `control` are the same square circle in both axes (the vendor's md:h-9 desktop step
2912
+ * is overridden, and a square needs both axes or it collapses into an oval); `sm` (2rem) is for a control nested in
2913
+ * an item or a dense toolbar; `lg` (3rem) is the landing hero step.
2914
+ */
2915
+ .starci-core-icon-button[data-size="md"],
2916
+ .starci-core-icon-button[data-size="control"] {
2917
+ inline-size: var(--starci-core-control-min-size, 2.5rem) !important;
2918
+ min-inline-size: var(--starci-core-control-min-size, 2.5rem) !important;
2919
+ max-inline-size: var(--starci-core-control-min-size, 2.5rem) !important;
2920
+ block-size: var(--starci-core-control-min-size, 2.5rem) !important;
2921
+ min-block-size: var(--starci-core-control-min-size, 2.5rem) !important;
2922
+ max-block-size: var(--starci-core-control-min-size, 2.5rem) !important;
2923
+ }
2924
+
2925
+ .starci-core-icon-button[data-size="sm"] {
2926
+ inline-size: 2rem !important;
2927
+ min-inline-size: 2rem !important;
2928
+ block-size: 2rem !important;
2929
+ min-block-size: 2rem !important;
2850
2930
  }
2851
2931
 
2852
- .starci-core-icon-button[data-grammar-control-size="control"] {
2853
- inline-size: var(--starci-core-control-min-size, 2.75rem) !important;
2854
- min-inline-size: var(--starci-core-control-min-size, 2.75rem) !important;
2855
- max-inline-size: var(--starci-core-control-min-size, 2.75rem) !important;
2932
+ .starci-core-button[data-size="md"]:not([data-width="fill"]),
2933
+ .starci-core-button[data-size="control"]:not([data-width="fill"]) {
2934
+ block-size: var(--starci-core-control-min-size, 2.5rem) !important;
2935
+ min-block-size: var(--starci-core-control-min-size, 2.5rem) !important;
2936
+ }
2937
+
2938
+ .starci-core-button[data-size="sm"]:not([data-width="fill"]) {
2939
+ block-size: 2rem !important;
2940
+ min-block-size: 2rem !important;
2941
+ }
2942
+
2943
+ .starci-core-button[data-size="lg"]:not([data-width="fill"]) {
2944
+ block-size: 3rem !important;
2945
+ min-block-size: 3rem !important;
2946
+ }
2947
+
2948
+ /* The chrome avatar (`control`) is drawn here over the vendor `lg` box: the shared control height. */
2949
+ [data-component="Avatar"][data-grammar-avatar-size="control"] {
2950
+ --avatar-size: var(--starci-core-control-min-size, 2.5rem);
2951
+ inline-size: var(--starci-core-control-min-size, 2.5rem);
2952
+ block-size: var(--starci-core-control-min-size, 2.5rem);
2856
2953
  }
2857
2954
 
2858
2955
  .starci-core-text-action[data-size="control"] {
@@ -2865,9 +2962,9 @@
2865
2962
  }
2866
2963
 
2867
2964
  .starci-core-icon-button[data-size="lg"] {
2868
- width: 3.5rem !important;
2869
- height: 3.5rem !important;
2870
- min-width: 3.5rem !important;
2965
+ width: 3rem !important;
2966
+ height: 3rem !important;
2967
+ min-width: 3rem !important;
2871
2968
  }
2872
2969
 
2873
2970
  .starci-core-icon-button[data-size="lg"] > :is(svg, [data-slot="icon"]) {
@@ -3243,7 +3340,7 @@
3243
3340
  display: inline-flex;
3244
3341
  width: fit-content;
3245
3342
  min-width: 0;
3246
- min-block-size: var(--starci-core-control-min-size, 2.75rem);
3343
+ min-block-size: var(--starci-core-control-min-size, 2.5rem);
3247
3344
  flex: none;
3248
3345
  align-items: center;
3249
3346
  gap: 0.5rem;
@@ -3298,7 +3395,7 @@
3298
3395
  .starci-core-text-action[data-appearance="route"] {
3299
3396
  border-radius: var(--starci-core-pill-radius, 999px);
3300
3397
  padding: 0.5rem 0.75rem;
3301
- min-block-size: var(--starci-core-control-min-size, 2.75rem);
3398
+ min-block-size: var(--starci-core-control-min-size, 2.5rem);
3302
3399
  color: var(--muted, var(--starci-core-muted, GrayText));
3303
3400
  }
3304
3401
 
@@ -3464,13 +3561,46 @@
3464
3561
  .starci-core-chat-bubble[data-grammar-bubble-footer="true"] .starci-core-chat-bubble-stack { width: min(40rem, 85%); }
3465
3562
  .starci-core-chat-bubble-footer { align-self: stretch; width: 100%; min-width: 0; max-width: 100%; }
3466
3563
 
3564
+ /*
3565
+ * Message actions (copy, reply, open): a small floating toolbar beside the bubble, on a bordered surface, centred on the
3566
+ * stack's outer side (the end side of an incoming bubble, the start side of an outgoing one). It takes no height in the
3567
+ * thread and never overlaps text; it shows on hover or focus inside the message. Touch has no hover: there it is a quiet
3568
+ * in-flow row under the bubble, always visible.
3569
+ */
3467
3570
  .starci-core-chat-bubble-actions {
3468
3571
  display: flex;
3469
- gap: 0.25rem;
3572
+ align-items: center;
3573
+ gap: 0.125rem;
3470
3574
  opacity: 0;
3471
3575
  transition: opacity var(--starci-core-motion-duration, 150ms) cubic-bezier(0.4, 0, 0.2, 1);
3472
3576
  }
3473
3577
 
3578
+ @media (hover: hover) {
3579
+ .starci-core-chat-bubble-actions {
3580
+ position: absolute;
3581
+ z-index: 1;
3582
+ inset-block-start: 50%;
3583
+ transform: translateY(-50%);
3584
+ padding: 0.125rem;
3585
+ border: 1px solid var(--border, GrayText);
3586
+ border-radius: 0.75rem;
3587
+ background: var(--surface, Canvas);
3588
+ box-shadow: var(--shadow-surface, 0 1px 3px rgb(0 0 0 / 0.16));
3589
+ pointer-events: none;
3590
+ }
3591
+
3592
+ .starci-core-chat-bubble[data-grammar-bubble-side="incoming"] .starci-core-chat-bubble-actions {
3593
+ inset-inline-start: calc(100% + 0.5rem);
3594
+ }
3595
+
3596
+ .starci-core-chat-bubble[data-grammar-bubble-side="outgoing"] .starci-core-chat-bubble-actions {
3597
+ inset-inline-end: calc(100% + 0.5rem);
3598
+ }
3599
+
3600
+ .starci-core-chat-bubble:hover .starci-core-chat-bubble-actions,
3601
+ .starci-core-chat-bubble:focus-within .starci-core-chat-bubble-actions { pointer-events: auto; }
3602
+ }
3603
+
3474
3604
  .starci-core-chat-bubble:hover .starci-core-chat-bubble-actions,
3475
3605
  .starci-core-chat-bubble:focus-within .starci-core-chat-bubble-actions { opacity: 1; }
3476
3606
 
@@ -0,0 +1,12 @@
1
+ import { ScrollShadow } from "@heroui/react";
2
+ import { type ComponentProps } from "react";
3
+ type HorizontalScrollFrameProps = ComponentProps<typeof ScrollShadow> & {
4
+ readonly carets?: boolean;
5
+ readonly appearance?: "region" | "tabs";
6
+ readonly scrollPreviousLabel: string;
7
+ readonly scrollNextLabel: string;
8
+ };
9
+ /** One horizontal scroller, with HeroUI's fading edges and directional page controls. */
10
+ export declare const HorizontalScrollFrame: import("react").ForwardRefExoticComponent<Omit<HorizontalScrollFrameProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
11
+ export {};
12
+ //# sourceMappingURL=HorizontalScrollFrame.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HorizontalScrollFrame.d.ts","sourceRoot":"","sources":["../../src/core/HorizontalScrollFrame.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAM,MAAM,eAAe,CAAA;AAChD,OAAO,EAAmC,KAAK,cAAc,EAAE,MAAM,OAAO,CAAA;AAS5E,KAAK,0BAA0B,GAAG,cAAc,CAAC,OAAO,YAAY,CAAC,GAAG;IACpE,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;IACvC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAA;IACpC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CACnC,CAAA;AAED,yFAAyF;AACzF,eAAO,MAAM,qBAAqB,oIAoChC,CAAA"}
@@ -0,0 +1,36 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { ScrollShadow, cn } from "@heroui/react";
4
+ import { forwardRef, useCallback, useRef } from "react";
5
+ import { IconButton } from "./primitive/IconButton/index.js";
6
+ /** HeroUI's horizontal chevron geometry, shared by both directional controls. */
7
+ const ScrollChevron = (props) => _jsx("svg", { ...props, viewBox: "0 0 16 16", fill: "none", children: _jsx("path", { d: "M10.53 2.97a.75.75 0 0 1 0 1.06L6.56 8l3.97 3.97a.75.75 0 1 1-1.06 1.06l-4.5-4.5a.75.75 0 0 1 0-1.06l4.5-4.5a.75.75 0 0 1 1.06 0", fill: "currentColor", fillRule: "evenodd", clipRule: "evenodd" }) });
8
+ /** One horizontal scroller, with HeroUI's fading edges and directional page controls. */
9
+ export const HorizontalScrollFrame = forwardRef(({ carets = true, appearance = "region", scrollPreviousLabel, scrollNextLabel, className, ...props }, forwardedRef) => {
10
+ const scrollerRef = useRef(null);
11
+ const setRef = useCallback((node) => {
12
+ scrollerRef.current = node;
13
+ if (typeof forwardedRef === "function")
14
+ forwardedRef(node);
15
+ else if (forwardedRef !== null)
16
+ forwardedRef.current = node;
17
+ }, [forwardedRef]);
18
+ const scrollPage = (direction) => {
19
+ const node = scrollerRef.current;
20
+ if (node === null)
21
+ return;
22
+ const rtl = getComputedStyle(node).direction === "rtl";
23
+ const maximum = Math.max(0, node.scrollWidth - node.clientWidth);
24
+ const target = node.scrollLeft + direction * node.clientWidth * 0.8 * (rtl ? -1 : 1);
25
+ node.scrollTo({
26
+ left: Math.min(rtl ? 0 : maximum, Math.max(rtl ? -maximum : 0, target)),
27
+ behavior: "smooth",
28
+ });
29
+ };
30
+ const scroller = _jsx(ScrollShadow, { ...props, ref: setRef, orientation: "horizontal", className: cn(className, appearance === "tabs" ? "tabs__list-container__scroller" : undefined) });
31
+ if (!carets)
32
+ return scroller;
33
+ return _jsxs("div", { className: cn("starci-horizontal-scroll-frame", appearance === "tabs" ? "tabs__list-container" : undefined), "data-scroll-appearance": appearance, children: [scroller, _jsx("span", { className: "starci-horizontal-scroll-prev", children: _jsx(IconButton, { source: ScrollChevron, label: scrollPreviousLabel, variant: "ghost", size: "sm", onPress: () => scrollPage(-1) }) }), _jsx("span", { className: "starci-horizontal-scroll-next", children: _jsx(IconButton, { source: ScrollChevron, label: scrollNextLabel, variant: "ghost", size: "sm", onPress: () => scrollPage(1) }) })] });
34
+ });
35
+ HorizontalScrollFrame.displayName = "HorizontalScrollFrame";
36
+ //# sourceMappingURL=HorizontalScrollFrame.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HorizontalScrollFrame.js","sourceRoot":"","sources":["../../src/core/HorizontalScrollFrame.tsx"],"names":[],"mappings":"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"}
@@ -50,6 +50,12 @@ export type ListBoxProps = ListBoxContent & {
50
50
  readonly defaultSelectedIds?: ReadonlyArray<string>;
51
51
  readonly onSelectionChange?: (ids: ReadonlyArray<string>) => void;
52
52
  readonly onAction?: (id: string) => void;
53
+ /**
54
+ * The vendor selection indicator (the check at the end of a selected row). `check` (default) keeps HeroUI's anatomy; `none`
55
+ * omits `ListBox.ItemIndicator` for a list whose selected row already reads from its fill (a conversation list), so the
56
+ * row shows the fill and no check. Selection, `aria-selected` and keyboard behaviour are unchanged.
57
+ */
58
+ readonly selectionIndicator?: "check" | "none";
53
59
  readonly emptyContent?: ReactNode;
54
60
  /**
55
61
  * The options are loading (knowledge STATE-8). With no `items` it draws `loadingRows` skeleton options (a label line and a
@@ -67,6 +73,6 @@ export type ListBoxProps = ListBoxContent & {
67
73
  * selection indicator at the end of the row; the selected row carries the vendor `aria-selected`.
68
74
  * Contract: list FOCUS-2 STATE-1, empty STATE-3, leading and title-line glyphs A11Y-2.
69
75
  */
70
- export declare const ListBox: ({ label, items, sections, inset, size, selectionMode, selectedIds, defaultSelectedIds, onSelectionChange, onAction, emptyContent, isLoading, loadingRows, className, }: ListBoxProps) => import("react").JSX.Element;
76
+ export declare const ListBox: ({ label, items, sections, inset, size, selectionMode, selectedIds, defaultSelectedIds, onSelectionChange, onAction, selectionIndicator, emptyContent, isLoading, loadingRows, className, }: ListBoxProps) => import("react").JSX.Element;
71
77
  export {};
72
78
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/branch/ListBox/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAyB,SAAS,EAAE,MAAM,OAAO,CAAA;AAK7D,OAAO,EAAiC,KAAK,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAElG,oGAAoG;AACpG,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAE5C,MAAM,MAAM,WAAW,GAAG;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,mEAAmE;IACnE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,CAAA;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAA;IAChC,kHAAkH;IAClH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,oBAAoB,CAAA;IAChD,kFAAkF;IAClF,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAC5B,kFAAkF;IAClF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;IAC5B,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED,2GAA2G;AAC3G,MAAM,MAAM,cAAc,GAAG;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,CAAA;CAC7C,CAAA;AAED,KAAK,cAAc,GACb;IAAE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAA;CAAE,GACzE;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,cAAc,CAAC,CAAA;CAAE,CAAA;AAqBlF,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG;IACxC,sCAAsC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,2GAA2G;IAC3G,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;IACpC,sFAAsF;IACtF,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAA;IAC3B,wFAAwF;IACxF,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAA;IACvD,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC5C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IACnD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;IACjE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,CAAA;IACjC;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,2EAA2E;IAC3E,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,wKAerB,YAAY,gCA0Ed,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/branch/ListBox/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAyB,SAAS,EAAE,MAAM,OAAO,CAAA;AAK7D,OAAO,EAAiC,KAAK,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAElG,oGAAoG;AACpG,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAE5C,MAAM,MAAM,WAAW,GAAG;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,mEAAmE;IACnE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,CAAA;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAA;IAChC,kHAAkH;IAClH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,oBAAoB,CAAA;IAChD,kFAAkF;IAClF,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAC5B,kFAAkF;IAClF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;IAC5B,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED,2GAA2G;AAC3G,MAAM,MAAM,cAAc,GAAG;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,CAAA;CAC7C,CAAA;AAED,KAAK,cAAc,GACb;IAAE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAA;CAAE,GACzE;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,cAAc,CAAC,CAAA;CAAE,CAAA;AAqBlF,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG;IACxC,sCAAsC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,2GAA2G;IAC3G,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;IACpC,sFAAsF;IACtF,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAA;IAC3B,wFAAwF;IACxF,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAA;IACvD,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC5C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IACnD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;IACjE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC;;;;OAIG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAC9C,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,CAAA;IACjC;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,2EAA2E;IAC3E,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,4LAgBrB,YAAY,gCA0Ed,CAAA"}
@@ -18,13 +18,13 @@ const loadingSkeleton = (rows) => (_jsx("div", { className: "starci-core-list-bo
18
18
  * selection indicator at the end of the row; the selected row carries the vendor `aria-selected`.
19
19
  * Contract: list FOCUS-2 STATE-1, empty STATE-3, leading and title-line glyphs A11Y-2.
20
20
  */
21
- export const ListBox = ({ label, items = [], sections, inset, size = "md", selectionMode = "single", selectedIds, defaultSelectedIds, onSelectionChange, onAction, emptyContent, isLoading = false, loadingRows = 3, className, }) => {
21
+ export const ListBox = ({ label, items = [], sections, inset, size = "md", selectionMode = "single", selectedIds, defaultSelectedIds, onSelectionChange, onAction, selectionIndicator = "check", emptyContent, isLoading = false, loadingRows = 3, className, }) => {
22
22
  const presentation = useCollectionItemPresentation();
23
23
  const nested = useSurfaceNesting();
24
24
  const resolvedInset = inset ?? (nested ? "panel" : "default");
25
25
  const allItems = sections === undefined ? items : sections.flatMap((section) => section.items);
26
26
  const renderLabel = (item) => (_jsxs(HeroLabel, { "data-grammar-item-label": "true", style: item.emphasis === "unread" ? { fontWeight: presentation.unreadWeight } : undefined, children: [item.labelLeading === undefined ? null : (_jsxs(_Fragment, { children: [_jsx("span", { "aria-hidden": "true", "data-grammar-list-leading": "label", "data-contract": "A11Y-2", children: item.labelLeading }), " "] })), item.label] }));
27
- const renderItem = (item) => (_jsx(HeroListBox.Item, { id: item.id, "aria-label": item.label, className: "starci-core-list-box-item", "data-grammar-list-item": "true", "data-grammar-list-size": item.size ?? size, "data-grammar-list-emphasis": item.emphasis, textValue: item.label, ...(item.isDisabled === undefined ? {} : { isDisabled: item.isDisabled }), children: _jsxs(ButtonPlacementProvider, { placement: "item", children: [item.leading === undefined ? null : _jsx("span", { "aria-hidden": "true", "data-grammar-list-leading": "true", "data-contract": "A11Y-2", children: item.leading }), item.description === undefined ? renderLabel(item) : (_jsxs("div", { "data-grammar-list-copy": "true", children: [renderLabel(item), _jsx(HeroDescription, { "data-grammar-item-description": "true", "data-grammar-description-lines": item.descriptionLines ?? presentation.descriptionLines, style: item.emphasis === "unread" ? { fontWeight: presentation.unreadWeight } : undefined, children: item.description })] })), item.trailing === undefined ? null : _jsx("span", { "data-grammar-list-trailing": "true", children: item.trailing }), selectionMode === "none" ? null : _jsx(HeroListBox.ItemIndicator, {})] }) }, item.id));
27
+ const renderItem = (item) => (_jsx(HeroListBox.Item, { id: item.id, "aria-label": item.label, className: "starci-core-list-box-item", "data-grammar-list-item": "true", "data-grammar-list-size": item.size ?? size, "data-grammar-list-emphasis": item.emphasis, textValue: item.label, ...(item.isDisabled === undefined ? {} : { isDisabled: item.isDisabled }), children: _jsxs(ButtonPlacementProvider, { placement: "item", children: [item.leading === undefined ? null : _jsx("span", { "aria-hidden": "true", "data-grammar-list-leading": "true", "data-contract": "A11Y-2", children: item.leading }), item.description === undefined ? renderLabel(item) : (_jsxs("div", { "data-grammar-list-copy": "true", children: [renderLabel(item), _jsx(HeroDescription, { "data-grammar-item-description": "true", "data-grammar-description-lines": item.descriptionLines ?? presentation.descriptionLines, style: item.emphasis === "unread" ? { fontWeight: presentation.unreadWeight } : undefined, children: item.description })] })), item.trailing === undefined ? null : _jsx("span", { "data-grammar-list-trailing": "true", children: item.trailing }), selectionMode === "none" || selectionIndicator === "none" ? null : _jsx(HeroListBox.ItemIndicator, {})] }) }, item.id));
28
28
  return (_jsx(HeroListBox, { "aria-label": label, className: navigationClassName("starci-core-list-box", className), "data-component": "ListBox", "data-contract": "FOCUS-2 STATE-1 PADDING-0", "data-tier": "branch", "data-loading": String(isLoading), ...(isLoading ? { render: (domProps) => _jsxs("div", { ...domProps, "aria-busy": "true", children: [domProps.children, allItems.length === 0 ? loadingSkeleton(loadingRows) : null] }) } : {}), "data-grammar-list-inset": resolvedInset, "data-grammar-list-size": size, "data-grammar-list-selection": selectionMode, selectionMode: selectionMode, ...(selectedIds === undefined ? {} : { selectedKeys: new Set(selectedIds) }), ...(defaultSelectedIds === undefined ? {} : { defaultSelectedKeys: new Set(defaultSelectedIds) }), ...(onSelectionChange === undefined ? {} : {
29
29
  onSelectionChange: (selection) => onSelectionChange(selection === "all" ? allItems.map((item) => item.id) : [...selection].map(String)),
30
30
  }), ...(onAction === undefined ? {} : { onAction: (key) => onAction(String(key)) }), ...(isLoading
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/branch/ListBox/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/branch/ListBox/index.tsx"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export type TabItem = {
6
6
  readonly leading?: ReactNode;
7
7
  };
8
8
  /**
9
- * Business-neutral controlled peer tabs with HeroUI's ListContainer owning overflow,
9
+ * Business-neutral controlled peer tabs with the shared horizontal frame owning overflow,
10
10
  * scroll shadows and the directional controls.
11
11
  */
12
12
  export type TabsProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/branch/Tabs/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAgD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AASpF,mEAAmE;AACnE,MAAM,MAAM,OAAO,GAAG;IAClB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;CAC/B,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;IAC1C,uLAAuL;IACvL,QAAQ,CAAC,eAAe,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAA;IAClD,+EAA+E;IAC/E,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAChC;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;IAC1C,4IAA4I;IAC5I,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAA;IACrC,sFAAsF;IACtF,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CACpC,CAAA;AAED,qFAAqF;AACrF,eAAO,MAAM,IAAI,GAAI,OAAO,SAAS,gCA+FpC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/branch/Tabs/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAgD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAUpF,mEAAmE;AACnE,MAAM,MAAM,OAAO,GAAG;IAClB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;CAC/B,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;IAC1C,uLAAuL;IACvL,QAAQ,CAAC,eAAe,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAA;IAClD,+EAA+E;IAC/E,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAChC;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;IAC1C,4IAA4I;IAC5I,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAA;IACrC,sFAAsF;IACtF,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CACpC,CAAA;AAED,qFAAqF;AACrF,eAAO,MAAM,IAAI,GAAI,OAAO,SAAS,gCAgFpC,CAAA"}
@@ -2,6 +2,7 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { Tabs as HeroTabs } from "@heroui/react";
4
4
  import { useEffect, useLayoutEffect, useRef, useState } from "react";
5
+ import { HorizontalScrollFrame } from "../../HorizontalScrollFrame.js";
5
6
  import { useSurfaceNesting } from "../../surfaceContext.js";
6
7
  import { tabContentClassName, tabLabelClassName, tabsClassName, tabsFrameClassName, } from "./classNames.js";
7
8
  /** Render peer tabs through Core's selected, accessible and responsive treatment. */
@@ -50,25 +51,6 @@ export const Tabs = (props) => {
50
51
  }, [isClientReady, props.items, props.panelId, props.selectedKey]);
51
52
  const scrollPreviousLabel = props.scrollPreviousLabel ?? "Scroll tabs left";
52
53
  const scrollNextLabel = props.scrollNextLabel ?? "Scroll tabs right";
53
- useLayoutEffect(() => {
54
- const frame = frameRef.current;
55
- if (!isClientReady || frame === null)
56
- return;
57
- // The vendor renders the carets with fixed English aria-labels and no label prop; name them from props.
58
- const nameCarets = () => {
59
- const carets = [[".tabs__list-container__scroll-prev", scrollPreviousLabel], [".tabs__list-container__scroll-next", scrollNextLabel]];
60
- carets.forEach(([selector, text]) => {
61
- frame.querySelectorAll(selector).forEach((caret) => {
62
- if (caret.getAttribute("aria-label") !== text)
63
- caret.setAttribute("aria-label", text);
64
- });
65
- });
66
- };
67
- const observer = new MutationObserver(nameCarets);
68
- observer.observe(frame, { childList: true, subtree: true, attributes: true, attributeFilter: ["aria-label"] });
69
- nameCarets();
70
- return () => observer.disconnect();
71
- }, [isClientReady, scrollPreviousLabel, scrollNextLabel]);
72
54
  const inset = props.inset ?? "none";
73
55
  const variant = props.variant ?? (nested ? "secondary" : "primary");
74
56
  // STATE-6 names the page underline "primary" and the nested pill "secondary".
@@ -77,6 +59,6 @@ export const Tabs = (props) => {
77
59
  const frameContract = inset === "page" ? "PADDING-5" : undefined;
78
60
  if (!isClientReady)
79
61
  return _jsx("div", { "aria-hidden": "true", className: tabsFrameClassName, "data-contract": frameContract, "data-component": "Tabs", "data-tier": "branch", "data-grammar-tabs": "true", "data-grammar-tabs-client": "pending", "data-grammar-tabs-inset": inset, "data-grammar-tabs-variant": variant, style: { minHeight: "3rem" } });
80
- return _jsx("div", { ref: frameRef, className: tabsFrameClassName, "data-contract": frameContract, "data-component": "Tabs", "data-tier": "branch", "data-grammar-tabs": "true", "data-grammar-tabs-client": "ready", "data-grammar-tabs-inset": inset, "data-grammar-tabs-variant": variant, "data-grammar-tab-labels": props.labelVisibility ?? "responsive", children: _jsx(HeroTabs, { variant: vendorVariant, selectedKey: props.selectedKey, onSelectionChange: (key) => props.onSelect?.(String(key)), className: tabsClassName ?? "", "data-contract": "FLOW-2", children: _jsx(HeroTabs.ListContainer, { children: _jsx(HeroTabs.List, { "aria-label": props.label, children: props.items.map((item) => (_jsxs(HeroTabs.Tab, { id: item.id, "aria-label": item.label, "data-contract": "PADDING-3", children: [_jsxs("span", { className: tabContentClassName, "data-contract": "GAP-2", "data-grammar-tab-id": item.id, children: [item.leading, _jsx("span", { className: tabLabelClassName, style: props.labelVisibility === "always" || item.leading == null ? { display: "inline" } : undefined, children: item.label })] }), _jsx(HeroTabs.Indicator, {})] }, item.id))) }) }) }) });
62
+ return _jsx("div", { ref: frameRef, className: tabsFrameClassName, "data-contract": frameContract, "data-component": "Tabs", "data-tier": "branch", "data-grammar-tabs": "true", "data-grammar-tabs-client": "ready", "data-grammar-tabs-inset": inset, "data-grammar-tabs-variant": variant, "data-grammar-tab-labels": props.labelVisibility ?? "responsive", children: _jsx(HeroTabs, { variant: vendorVariant, selectedKey: props.selectedKey, onSelectionChange: (key) => props.onSelect?.(String(key)), className: tabsClassName ?? "", "data-contract": "FLOW-2", children: _jsx(HeroTabs.List, { "aria-label": props.label, render: ({ children, ref, ...listProps }) => (_jsx(HorizontalScrollFrame, { appearance: "tabs", hideScrollBar: true, size: 64, scrollPreviousLabel: scrollPreviousLabel, scrollNextLabel: scrollNextLabel, children: _jsx("div", { ...listProps, ref: ref, children: children }) })), children: props.items.map((item) => (_jsxs(HeroTabs.Tab, { id: item.id, "aria-label": item.label, "data-contract": "PADDING-3", children: [_jsxs("span", { className: tabContentClassName, "data-contract": "GAP-2", "data-grammar-tab-id": item.id, children: [item.leading, _jsx("span", { className: tabLabelClassName, style: props.labelVisibility === "always" || item.leading == null ? { display: "inline" } : undefined, children: item.label })] }), _jsx(HeroTabs.Indicator, {})] }, item.id))) }) }) });
81
63
  };
82
64
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/branch/Tabs/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAkB,MAAM,OAAO,CAAA;AACpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EACH,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EACb,kBAAkB,GACrB,MAAM,iBAAiB,CAAA;AAqCxB,qFAAqF;AACrF,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,KAAgB,EAAE,EAAE;IACrC,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAA;IAClC,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACzD,MAAM,QAAQ,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAA;IAC7C,SAAS,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;IAC3C,eAAe,CAAC,GAAG,EAAE;QACjB,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAA;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;QAC7B,IAAI,CAAC,aAAa,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS;YAAE,OAAM;QAErE,4EAA4E;QAC5E,+EAA+E;QAC/E,MAAM,aAAa,GAAG,IAAI,GAAG,EAA6D,CAAA;QAC1F,MAAM,YAAY,GAAG,GAAG,EAAE;YACtB,KAAK,CAAC,gBAAgB,CAAc,uBAAuB,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAC9E,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAA;gBAC5C,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAc,cAAc,CAAC,CAAA;gBACzD,IAAI,MAAM,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI;oBAAE,OAAM;gBAChD,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,CAAC,eAAe,CAAC,CAAA;gBACjD,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;gBAChC,MAAM,QAAQ,GAAG,QAAQ,KAAK,SAAS,IAAI,OAAO,KAAK,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAA;gBACrG,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAA;gBACvD,IAAI,OAAO,KAAK,QAAQ;oBAAE,GAAG,CAAC,YAAY,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAA;YACzE,CAAC,CAAC,CAAA;QACN,CAAC,CAAA;QACD,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAA;QACnD,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,eAAe,EAAE,qBAAqB,CAAC,EAAE,CAAC,CAAA;QACxI,YAAY,EAAE,CAAA;QACd,OAAO,GAAG,EAAE;YACR,QAAQ,CAAC,UAAU,EAAE,CAAA;YACrB,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE;gBACjD,IAAI,GAAG,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,OAAO;oBAAE,OAAM;gBACzD,IAAI,QAAQ,KAAK,IAAI;oBAAE,GAAG,CAAC,eAAe,CAAC,eAAe,CAAC,CAAA;;oBACtD,GAAG,CAAC,YAAY,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAA;YACpD,CAAC,CAAC,CAAA;QACN,CAAC,CAAA;IACL,CAAC,EAAE,CAAC,aAAa,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAA;IAElE,MAAM,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,IAAI,kBAAkB,CAAA;IAC3E,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,IAAI,mBAAmB,CAAA;IACpE,eAAe,CAAC,GAAG,EAAE;QACjB,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAA;QAC9B,IAAI,CAAC,aAAa,IAAI,KAAK,KAAK,IAAI;YAAE,OAAM;QAC5C,wGAAwG;QACxG,MAAM,UAAU,GAAG,GAAG,EAAE;YACpB,MAAM,MAAM,GAA6C,CAAC,CAAC,oCAAoC,EAAE,mBAAmB,CAAC,EAAE,CAAC,oCAAoC,EAAE,eAAe,CAAC,CAAC,CAAA;YAC/K,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE;gBAChC,KAAK,CAAC,gBAAgB,CAAc,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;oBAC5D,IAAI,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,IAAI;wBAAE,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;gBACzF,CAAC,CAAC,CAAA;YACN,CAAC,CAAC,CAAA;QACN,CAAC,CAAA;QACD,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,UAAU,CAAC,CAAA;QACjD,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;QAC9G,UAAU,EAAE,CAAA;QACZ,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAA;IACtC,CAAC,EAAE,CAAC,aAAa,EAAE,mBAAmB,EAAE,eAAe,CAAC,CAAC,CAAA;IAEzD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,MAAM,CAAA;IACnC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IACnE,8EAA8E;IAC9E,+DAA+D;IAC/D,MAAM,aAAa,GAAG,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAA;IACvE,MAAM,aAAa,GAAG,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAA;IAChE,IAAI,CAAC,aAAa;QAAE,OAAO,6BAAiB,MAAM,EAAC,SAAS,EAAE,kBAAkB,mBAAiB,aAAa,oBAAiB,MAAM,eAAW,QAAQ,uBAAmB,MAAM,8BAA0B,SAAS,6BAA0B,KAAK,+BAA6B,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,GAAI,CAAA;IAEzT,OAAO,cAAK,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,kBAAkB,mBAAiB,aAAa,oBAAiB,MAAM,eAAW,QAAQ,uBAAmB,MAAM,8BAA0B,OAAO,6BAA0B,KAAK,+BAA6B,OAAO,6BAA2B,KAAK,CAAC,eAAe,IAAI,YAAY,YACzT,KAAC,QAAQ,IACL,OAAO,EAAE,aAAa,EACtB,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,iBAAiB,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EACzD,SAAS,EAAE,aAAa,IAAI,EAAE,mBAChB,QAAQ,YAEtB,KAAC,QAAQ,CAAC,aAAa,cACnB,KAAC,QAAQ,CAAC,IAAI,kBAAa,KAAK,CAAC,KAAK,YACjC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACvB,MAAC,QAAQ,CAAC,GAAG,IAET,EAAE,EAAE,IAAI,CAAC,EAAE,gBACC,IAAI,CAAC,KAAK,mBACR,WAAW,aAEzB,gBAAM,SAAS,EAAE,mBAAmB,mBAAgB,OAAO,yBAAsB,IAAI,CAAC,EAAE,aACnF,IAAI,CAAC,OAAO,EACb,eAAM,SAAS,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK,CAAC,eAAe,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,YAAG,IAAI,CAAC,KAAK,GAAQ,IAC3J,EACP,KAAC,QAAQ,CAAC,SAAS,KAAG,KATjB,IAAI,CAAC,EAAE,CAUD,CAClB,CAAC,GACU,GACK,GAClB,GACT,CAAA;AACV,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/branch/Tabs/index.tsx"],"names":[],"mappings":"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"}
@@ -13,7 +13,10 @@ export type ChatBubbleProps = {
13
13
  readonly meta?: ReactNode;
14
14
  /** A short marker beside the author, e.g. a neutral `Badge` "AI". */
15
15
  readonly status?: ReactNode;
16
- /** Quiet message actions (copy, reply, react), revealed on hover and keyboard focus inside the message. */
16
+ /**
17
+ * Message actions (copy, reply, open): `IconButton`s (each with a `Tooltip`) drawn as a small floating toolbar beside the bubble on a
18
+ * bordered surface, revealed on hover and keyboard focus inside the message. They take `chrome` placement (neutral = ghost).
19
+ */
17
20
  readonly actions?: ReactNode;
18
21
  /** Content under the body that is not part of the message text: an attachment, an approval card, a reaction row. */
19
22
  readonly footer?: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composite/ChatBubble/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGtC,wIAAwI;AACxI,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,UAAU,CAAA;AAEpD,MAAM,MAAM,eAAe,GAAG;IAC1B,qGAAqG;IACrG,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAA;IAC9B,6FAA6F;IAC7F,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B,mHAAmH;IACnH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B,0DAA0D;IAC1D,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAA;IACzB,qEAAqE;IACrE,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B,2GAA2G;IAC3G,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;IAC5B,oHAAoH;IACpH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B,sFAAsF;IACtF,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,kDAAkD;IAClD,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,iGAYxB,eAAe,gCAgDjB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACnC,6FAA6F;IAC7F,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,iEAAiE;IACjE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,sBAAkC,wBAAwB,gCAM7F,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composite/ChatBubble/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAItC,wIAAwI;AACxI,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,UAAU,CAAA;AAEpD,MAAM,MAAM,eAAe,GAAG;IAC1B,qGAAqG;IACrG,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAA;IAC9B,6FAA6F;IAC7F,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B,mHAAmH;IACnH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B,0DAA0D;IAC1D,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAA;IACzB,qEAAqE;IACrE,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;IAC5B,oHAAoH;IACpH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B,sFAAsF;IACtF,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,kDAAkD;IAClD,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,iGAYxB,eAAe,gCAgDjB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACnC,6FAA6F;IAC7F,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,iEAAiE;IACjE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,sBAAkC,wBAAwB,gCAM7F,CAAA"}
@@ -1,4 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ButtonPlacementProvider } from "../../buttonIntent.js";
2
3
  import { Skeleton } from "../../primitive/Skeleton/index.js";
3
4
  /**
4
5
  * One chat message. The app owns the thread (order, grouping, day dividers with `Divider label`, scroll with
@@ -11,7 +12,7 @@ export const ChatBubble = ({ children, side = "incoming", author, avatar, meta,
11
12
  return (_jsxs("div", { "aria-hidden": "true", className: "starci-core-chat-bubble", "data-component": "ChatBubble", "data-tier": "composite", "data-contract": "SURFACE-3 SURFACE-4 RADIUS-6 STATE-8", "data-grammar-bubble-side": side, "data-grammar-bubble-highlight": "false", "data-grammar-bubble-footer": "false", "data-grammar-skeleton": "true", children: [avatar == null ? null : _jsx("div", { className: "starci-core-chat-bubble-avatar", children: _jsx(Skeleton, { shape: "circle", size: "sm" }) }), _jsx("div", { className: "starci-core-chat-bubble-stack", children: _jsx("div", { className: "starci-core-chat-bubble-body starci-core-chat-bubble-skeleton-body", children: _jsx(Skeleton, { shape: "text", lines: 2 }) }) })] }));
12
13
  }
13
14
  const hasHead = author != null || meta != null || status != null;
14
- return (_jsxs("div", { ...(id === undefined ? {} : { id }), className: "starci-core-chat-bubble", "data-component": "ChatBubble", "data-tier": "composite", "data-contract": "SURFACE-3 SURFACE-4 RADIUS-6", "data-grammar-bubble-side": side, "data-grammar-bubble-highlight": isHighlight ? "true" : "false", "data-grammar-bubble-footer": footer == null ? "false" : "true", children: [avatar == null ? null : _jsx("div", { className: "starci-core-chat-bubble-avatar", children: avatar }), _jsxs("div", { className: "starci-core-chat-bubble-stack", children: [hasHead ? (_jsxs("div", { className: "starci-core-chat-bubble-head", children: [author == null ? null : _jsx("span", { className: "starci-core-chat-bubble-author", children: author }), status, meta == null ? null : _jsx("span", { className: "starci-core-chat-bubble-meta", children: meta })] })) : null, _jsx("div", { className: "starci-core-chat-bubble-body", children: children }), footer == null ? null : _jsx("div", { className: "starci-core-chat-bubble-footer", children: footer }), actions == null ? null : _jsx("div", { className: "starci-core-chat-bubble-actions", children: actions })] })] }));
15
+ return (_jsxs("div", { ...(id === undefined ? {} : { id }), className: "starci-core-chat-bubble", "data-component": "ChatBubble", "data-tier": "composite", "data-contract": "SURFACE-3 SURFACE-4 RADIUS-6", "data-grammar-bubble-side": side, "data-grammar-bubble-highlight": isHighlight ? "true" : "false", "data-grammar-bubble-footer": footer == null ? "false" : "true", children: [avatar == null ? null : _jsx("div", { className: "starci-core-chat-bubble-avatar", children: avatar }), _jsxs("div", { className: "starci-core-chat-bubble-stack", children: [hasHead ? (_jsxs("div", { className: "starci-core-chat-bubble-head", children: [author == null ? null : _jsx("span", { className: "starci-core-chat-bubble-author", children: author }), status, meta == null ? null : _jsx("span", { className: "starci-core-chat-bubble-meta", children: meta })] })) : null, _jsx("div", { className: "starci-core-chat-bubble-body", children: children }), footer == null ? null : _jsx("div", { className: "starci-core-chat-bubble-footer", children: footer }), actions == null ? null : _jsx("div", { className: "starci-core-chat-bubble-actions", "data-grammar-bubble-actions": "toolbar", children: _jsx(ButtonPlacementProvider, { placement: "chrome", children: actions }) })] })] }));
15
16
  };
16
17
  /**
17
18
  * A loading conversation: `count` skeleton bubbles that alternate incoming and outgoing, inside one `aria-busy` thread.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composite/ChatBubble/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composite/ChatBubble/index.tsx"],"names":[],"mappings":"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"}
@@ -14,6 +14,11 @@ export type HorizontalScrollRegionProps = Omit<ComponentProps<"div">, "children"
14
14
  readonly hideScrollBar?: boolean;
15
15
  /** The region's own overflow answer; the stamp and the render both follow it. */
16
16
  readonly overflow?: HorizontalScrollRegionOverflow;
17
+ /** Directional page controls, shown only at edges with more content. Default `true`. */
18
+ readonly carets?: boolean;
19
+ /** Localized accessible names for the previous and next page controls. */
20
+ readonly scrollPreviousLabel?: string;
21
+ readonly scrollNextLabel?: string;
17
22
  /**
18
23
  * Keyboard reachability (WCAG 2.1.1). Default `true`: the region is a Tab stop and, when named,
19
24
  * a `role="region"`. Pass `false` when every scrolled item is itself focusable (tabs, OTP slots).
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composite/HorizontalScrollRegion/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAIvE;;;;;;;GAOG;AACH,MAAM,MAAM,8BAA8B,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAEhE,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,GAAG;IAChF,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;IAC5B,+FAA+F;IAC/F,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,iFAAiF;IACjF,QAAQ,CAAC,QAAQ,CAAC,EAAE,8BAA8B,CAAA;IAClD;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CACjC,CAAA;AAED,4FAA4F;AAC5F,eAAO,MAAM,sBAAsB,qIAmBjC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composite/HorizontalScrollRegion/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAKvE;;;;;;;GAOG;AACH,MAAM,MAAM,8BAA8B,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAEhE,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,GAAG;IAChF,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;IAC5B,+FAA+F;IAC/F,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,iFAAiF;IACjF,QAAQ,CAAC,QAAQ,CAAC,EAAE,8BAA8B,CAAA;IAClD,wFAAwF;IACxF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,0EAA0E;IAC1E,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAA;IACrC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CACjC,CAAA;AAED,4FAA4F;AAC5F,eAAO,MAAM,sBAAsB,qIAsBjC,CAAA"}