@starci/grammar 0.12.1 → 0.12.4
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.
- package/README.md +119 -35
- package/dist/.build-stamp.json +4 -4
- package/dist/common/components-avatar-group.css +7 -0
- package/dist/common/components-forms.css +12 -74
- package/dist/common/components-list-panel.css +36 -7
- package/dist/common/components-navigation.css +46 -157
- package/dist/common/components-overlays.css +1 -85
- package/dist/common/registry.d.ts +6 -6
- package/dist/common/renderers-navigation.d.ts +6 -5
- package/dist/common/renderers-navigation.d.ts.map +1 -1
- package/dist/common/renderers-navigation.js.map +1 -1
- package/dist/common/renderers.d.ts +5 -1
- package/dist/common/renderers.d.ts.map +1 -1
- package/dist/common/renderers.js +3 -0
- package/dist/common/renderers.js.map +1 -1
- package/dist/common/styles.css +7 -132
- package/dist/core/branch/AlertDialog/index.d.ts.map +1 -1
- package/dist/core/branch/AlertDialog/index.js +4 -1
- package/dist/core/branch/AlertDialog/index.js.map +1 -1
- package/dist/core/branch/DataTable/index.d.ts +0 -2
- package/dist/core/branch/DataTable/index.d.ts.map +1 -1
- package/dist/core/branch/DataTable/index.js +3 -2
- package/dist/core/branch/DataTable/index.js.map +1 -1
- package/dist/core/branch/Dialog/index.d.ts.map +1 -1
- package/dist/core/branch/Dialog/index.js +2 -1
- package/dist/core/branch/Dialog/index.js.map +1 -1
- package/dist/core/branch/DragItem/index.d.ts +2 -1
- package/dist/core/branch/DragItem/index.d.ts.map +1 -1
- package/dist/core/branch/DragItem/index.js +1 -1
- package/dist/core/branch/DragItem/index.js.map +1 -1
- package/dist/core/branch/Drawer/index.d.ts.map +1 -1
- package/dist/core/branch/Drawer/index.js +2 -1
- package/dist/core/branch/Drawer/index.js.map +1 -1
- package/dist/core/branch/DropdownMenu/index.d.ts +5 -2
- package/dist/core/branch/DropdownMenu/index.d.ts.map +1 -1
- package/dist/core/branch/DropdownMenu/index.js +6 -4
- package/dist/core/branch/DropdownMenu/index.js.map +1 -1
- package/dist/core/branch/FlowGraph/index.d.ts +4 -1
- package/dist/core/branch/FlowGraph/index.d.ts.map +1 -1
- package/dist/core/branch/FlowGraph/index.js +1 -1
- package/dist/core/branch/FlowGraph/index.js.map +1 -1
- package/dist/core/branch/ListBox/index.d.ts +22 -3
- package/dist/core/branch/ListBox/index.d.ts.map +1 -1
- package/dist/core/branch/ListBox/index.js +9 -5
- package/dist/core/branch/ListBox/index.js.map +1 -1
- package/dist/core/branch/Rail/index.d.ts.map +1 -1
- package/dist/core/branch/Rail/index.js +2 -4
- package/dist/core/branch/Rail/index.js.map +1 -1
- package/dist/core/branch/Select/index.d.ts +3 -0
- package/dist/core/branch/Select/index.d.ts.map +1 -1
- package/dist/core/branch/Select/index.js +7 -3
- package/dist/core/branch/Select/index.js.map +1 -1
- package/dist/core/branch/SurfaceAccordionCard/classNames.d.ts +1 -1
- package/dist/core/branch/SurfaceAccordionCard/classNames.d.ts.map +1 -1
- package/dist/core/branch/SurfaceAccordionCard/classNames.js +3 -3
- package/dist/core/branch/SurfaceAccordionCard/classNames.js.map +1 -1
- package/dist/core/branch/SurfaceAccordionCard/index.d.ts +2 -2
- package/dist/core/branch/SurfaceAccordionCard/index.d.ts.map +1 -1
- package/dist/core/branch/SurfaceAccordionCard/index.js +10 -9
- package/dist/core/branch/SurfaceAccordionCard/index.js.map +1 -1
- package/dist/core/branch/SurfaceCard/classNames.d.ts +0 -4
- package/dist/core/branch/SurfaceCard/classNames.d.ts.map +1 -1
- package/dist/core/branch/SurfaceCard/classNames.js +0 -4
- package/dist/core/branch/SurfaceCard/classNames.js.map +1 -1
- package/dist/core/branch/SurfaceCard/index.d.ts +0 -3
- package/dist/core/branch/SurfaceCard/index.d.ts.map +1 -1
- package/dist/core/branch/SurfaceCard/index.js +11 -29
- package/dist/core/branch/SurfaceCard/index.js.map +1 -1
- package/dist/core/branch/SurfaceListCard/index.d.ts.map +1 -1
- package/dist/core/branch/SurfaceListCard/index.js +2 -1
- package/dist/core/branch/SurfaceListCard/index.js.map +1 -1
- package/dist/core/branch/Tabs/classNames.d.ts +1 -3
- package/dist/core/branch/Tabs/classNames.d.ts.map +1 -1
- package/dist/core/branch/Tabs/classNames.js +1 -4
- package/dist/core/branch/Tabs/classNames.js.map +1 -1
- package/dist/core/branch/Tabs/index.d.ts +5 -8
- package/dist/core/branch/Tabs/index.d.ts.map +1 -1
- package/dist/core/branch/Tabs/index.js +8 -4
- package/dist/core/branch/Tabs/index.js.map +1 -1
- package/dist/core/branch/Toast/index.js +2 -2
- package/dist/core/branch/Toast/index.js.map +1 -1
- package/dist/core/branch/Tooltip/classNames.d.ts +1 -2
- package/dist/core/branch/Tooltip/classNames.d.ts.map +1 -1
- package/dist/core/branch/Tooltip/classNames.js +1 -2
- package/dist/core/branch/Tooltip/classNames.js.map +1 -1
- package/dist/core/branch/Tooltip/index.d.ts +10 -14
- package/dist/core/branch/Tooltip/index.d.ts.map +1 -1
- package/dist/core/branch/Tooltip/index.js +10 -48
- package/dist/core/branch/Tooltip/index.js.map +1 -1
- package/dist/core/buttonIntent.d.ts +27 -0
- package/dist/core/buttonIntent.d.ts.map +1 -0
- package/dist/core/buttonIntent.js +29 -0
- package/dist/core/buttonIntent.js.map +1 -0
- package/dist/core/collectionItem.d.ts +16 -0
- package/dist/core/collectionItem.d.ts.map +1 -0
- package/dist/core/collectionItem.js +12 -0
- package/dist/core/collectionItem.js.map +1 -0
- package/dist/core/composite/AvatarButton/index.d.ts +5 -4
- package/dist/core/composite/AvatarButton/index.d.ts.map +1 -1
- package/dist/core/composite/AvatarButton/index.js +2 -2
- package/dist/core/composite/AvatarButton/index.js.map +1 -1
- package/dist/core/composite/AvatarGroup/index.d.ts +6 -4
- package/dist/core/composite/AvatarGroup/index.d.ts.map +1 -1
- package/dist/core/composite/AvatarGroup/index.js +4 -3
- package/dist/core/composite/AvatarGroup/index.js.map +1 -1
- package/dist/core/composite/CollectionItem/index.d.ts +8 -0
- package/dist/core/composite/CollectionItem/index.d.ts.map +1 -0
- package/dist/core/composite/CollectionItem/index.js +5 -0
- package/dist/core/composite/CollectionItem/index.js.map +1 -0
- package/dist/core/composite/Fieldset/index.js +2 -2
- package/dist/core/composite/Fieldset/index.js.map +1 -1
- package/dist/core/composite/IdentityLockup/index.d.ts +2 -2
- package/dist/core/composite/IdentityLockup/index.d.ts.map +1 -1
- package/dist/core/composite/IdentityLockup/index.js +1 -1
- package/dist/core/composite/ItemActions/index.d.ts +8 -0
- package/dist/core/composite/ItemActions/index.d.ts.map +1 -0
- package/dist/core/composite/ItemActions/index.js +5 -0
- package/dist/core/composite/ItemActions/index.js.map +1 -0
- package/dist/core/composite/ListRow/index.d.ts.map +1 -1
- package/dist/core/composite/ListRow/index.js +2 -1
- package/dist/core/composite/ListRow/index.js.map +1 -1
- package/dist/core/composite/SegmentedControl/index.d.ts.map +1 -1
- package/dist/core/composite/SegmentedControl/index.js +2 -2
- package/dist/core/composite/SegmentedControl/index.js.map +1 -1
- package/dist/core/composite/TagGroup/index.d.ts +3 -3
- package/dist/core/composite/TagGroup/index.d.ts.map +1 -1
- package/dist/core/composite/TagGroup/index.js +1 -1
- package/dist/core/composite/TagGroup/index.js.map +1 -1
- package/dist/core/composite/ToolbarActions/index.d.ts +8 -0
- package/dist/core/composite/ToolbarActions/index.d.ts.map +1 -0
- package/dist/core/composite/ToolbarActions/index.js +5 -0
- package/dist/core/composite/ToolbarActions/index.js.map +1 -0
- package/dist/core/composition/ChatWorkspace/index.d.ts.map +1 -1
- package/dist/core/composition/ChatWorkspace/index.js +2 -1
- package/dist/core/composition/ChatWorkspace/index.js.map +1 -1
- package/dist/core/composition/NavigationFeatureNav/index.d.ts.map +1 -1
- package/dist/core/composition/NavigationFeatureNav/index.js +3 -1
- package/dist/core/composition/NavigationFeatureNav/index.js.map +1 -1
- package/dist/core/composition/Sidebar/index.d.ts +4 -0
- package/dist/core/composition/Sidebar/index.d.ts.map +1 -1
- package/dist/core/composition/Sidebar/index.js +10 -4
- package/dist/core/composition/Sidebar/index.js.map +1 -1
- package/dist/core/composition/TopBar/index.d.ts.map +1 -1
- package/dist/core/composition/TopBar/index.js +3 -1
- package/dist/core/composition/TopBar/index.js.map +1 -1
- package/dist/core/composition/WorkspaceShell/index.d.ts.map +1 -1
- package/dist/core/composition/WorkspaceShell/index.js +4 -2
- package/dist/core/composition/WorkspaceShell/index.js.map +1 -1
- package/dist/core/dna.d.ts +63 -2
- package/dist/core/dna.d.ts.map +1 -1
- package/dist/core/dna.js +38 -2
- package/dist/core/dna.js.map +1 -1
- package/dist/core/primitive/Avatar/index.d.ts +32 -24
- package/dist/core/primitive/Avatar/index.d.ts.map +1 -1
- package/dist/core/primitive/Avatar/index.js +57 -30
- package/dist/core/primitive/Avatar/index.js.map +1 -1
- package/dist/core/primitive/Button/index.d.ts +5 -2
- package/dist/core/primitive/Button/index.d.ts.map +1 -1
- package/dist/core/primitive/Button/index.js +6 -3
- package/dist/core/primitive/Button/index.js.map +1 -1
- package/dist/core/primitive/Divider/index.d.ts.map +1 -1
- package/dist/core/primitive/Divider/index.js +3 -4
- package/dist/core/primitive/Divider/index.js.map +1 -1
- package/dist/core/primitive/Field/index.d.ts +10 -1
- package/dist/core/primitive/Field/index.d.ts.map +1 -1
- package/dist/core/primitive/Field/index.js +16 -1
- package/dist/core/primitive/Field/index.js.map +1 -1
- package/dist/core/primitive/FileDropzone/index.d.ts.map +1 -1
- package/dist/core/primitive/FileDropzone/index.js +2 -2
- package/dist/core/primitive/FileDropzone/index.js.map +1 -1
- package/dist/core/primitive/GrammarRoot/index.d.ts.map +1 -1
- package/dist/core/primitive/GrammarRoot/index.js +3 -1
- package/dist/core/primitive/GrammarRoot/index.js.map +1 -1
- package/dist/core/primitive/IconButton/index.d.ts +17 -10
- package/dist/core/primitive/IconButton/index.d.ts.map +1 -1
- package/dist/core/primitive/IconButton/index.js +4 -1
- package/dist/core/primitive/IconButton/index.js.map +1 -1
- package/dist/core/primitive/Input/index.d.ts.map +1 -1
- package/dist/core/primitive/Input/index.js +3 -18
- package/dist/core/primitive/Input/index.js.map +1 -1
- package/dist/core/primitive/ListItem/index.d.ts.map +1 -1
- package/dist/core/primitive/ListItem/index.js +2 -1
- package/dist/core/primitive/ListItem/index.js.map +1 -1
- package/dist/core/primitive/Progress/index.d.ts.map +1 -1
- package/dist/core/primitive/Progress/index.js +1 -1
- package/dist/core/primitive/Progress/index.js.map +1 -1
- package/dist/core/primitive/RelativeTime/index.d.ts +19 -6
- package/dist/core/primitive/RelativeTime/index.d.ts.map +1 -1
- package/dist/core/primitive/RelativeTime/index.js +44 -23
- package/dist/core/primitive/RelativeTime/index.js.map +1 -1
- package/dist/core/primitive/Skeleton/index.js +1 -1
- package/dist/core/primitive/Skeleton/index.js.map +1 -1
- package/dist/core/primitive/Slider/index.d.ts.map +1 -1
- package/dist/core/primitive/Slider/index.js +2 -2
- package/dist/core/primitive/Slider/index.js.map +1 -1
- package/dist/core/primitive/Switch/index.d.ts +3 -6
- package/dist/core/primitive/Switch/index.d.ts.map +1 -1
- package/dist/core/primitive/Switch/index.js +1 -1
- package/dist/core/primitive/Switch/index.js.map +1 -1
- package/dist/core/primitive/Text/index.d.ts +1 -0
- package/dist/core/primitive/Text/index.d.ts.map +1 -1
- package/dist/core/primitive/Text/index.js +1 -2
- package/dist/core/primitive/Text/index.js.map +1 -1
- package/dist/core/primitive/TextAction/index.d.ts +3 -3
- package/dist/core/primitive/TextAction/index.d.ts.map +1 -1
- package/dist/core/primitive/TextAction/index.js +2 -2
- package/dist/core/primitive/TextAction/index.js.map +1 -1
- package/dist/core/styles.css +0 -2
- package/dist/heritage/dna.d.ts +62 -0
- package/dist/heritage/dna.d.ts.map +1 -0
- package/dist/heritage/dna.js +37 -0
- package/dist/heritage/dna.js.map +1 -0
- package/dist/offset-pop/conformance.d.ts +1 -1
- package/dist/offset-pop/conformance.js +1 -1
- package/dist/offset-pop/conformance.js.map +1 -1
- package/dist/offset-pop/dna.d.ts +56 -0
- package/dist/offset-pop/dna.d.ts.map +1 -1
- package/dist/offset-pop/dna.js +31 -0
- package/dist/offset-pop/dna.js.map +1 -1
- package/package.json +7 -4
|
@@ -2,10 +2,11 @@
|
|
|
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 {
|
|
6
|
-
import { tabContentClassName, tabLabelClassName, tabsClassName, tabsFrameClassName,
|
|
5
|
+
import { useSurfaceNesting } from "../../surfaceContext.js";
|
|
6
|
+
import { tabContentClassName, tabLabelClassName, tabsClassName, tabsFrameClassName, } from "./classNames.js";
|
|
7
7
|
/** Render peer tabs through Core's selected, accessible and responsive treatment. */
|
|
8
8
|
export const Tabs = (props) => {
|
|
9
|
+
const nested = useSurfaceNesting();
|
|
9
10
|
const [isClientReady, setIsClientReady] = useState(false);
|
|
10
11
|
const frameRef = useRef(null);
|
|
11
12
|
useEffect(() => setIsClientReady(true), []);
|
|
@@ -48,10 +49,13 @@ export const Tabs = (props) => {
|
|
|
48
49
|
};
|
|
49
50
|
}, [isClientReady, props.items, props.panelId, props.selectedKey]);
|
|
50
51
|
const inset = props.inset ?? "none";
|
|
51
|
-
const variant = props.variant ?? "primary";
|
|
52
|
+
const variant = props.variant ?? (nested ? "secondary" : "primary");
|
|
53
|
+
// STATE-6 names the page underline "primary" and the nested pill "secondary".
|
|
54
|
+
// HeroUI names those looks secondary and primary respectively.
|
|
55
|
+
const vendorVariant = variant === "secondary" ? "primary" : "secondary";
|
|
52
56
|
const frameContract = inset === "page" ? "PADDING-5" : undefined;
|
|
53
57
|
if (!isClientReady)
|
|
54
58
|
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" } });
|
|
55
|
-
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(
|
|
59
|
+
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))) }) }) }) });
|
|
56
60
|
};
|
|
57
61
|
//# 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,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/branch/Tabs/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Spinner as HeroSpinner } from "@heroui/react";
|
|
2
|
+
import { Alert as HeroAlert, Spinner as HeroSpinner } from "@heroui/react";
|
|
3
3
|
import { useEffect, useRef, useState, useSyncExternalStore } from "react";
|
|
4
4
|
import { Button } from "../../primitive/Button/index.js";
|
|
5
5
|
import { CloseButton } from "../../primitive/CloseButton/index.js";
|
|
@@ -140,6 +140,6 @@ export const Toaster = ({ label, dismissLabel, queue = toastQueue, placement = "
|
|
|
140
140
|
return (_jsxs("section", { "data-tier": "branch", "data-component": "Toaster", "data-placement": placement, "data-paused": isPaused ? "true" : "false", "data-contract": "LAYOUT-4", "aria-label": label, className: "starci-core-toaster", onPointerEnter: () => setIsHovered(true), onPointerLeave: () => setIsHovered(false), onFocus: () => setHasFocus(true), onBlur: (event) => {
|
|
141
141
|
if (!event.currentTarget.contains(event.relatedTarget))
|
|
142
142
|
setHasFocus(false);
|
|
143
|
-
}, children: [_jsx("span", { role: "status", "aria-live": "polite", "aria-atomic": "true", className: "starci-core-visually-hidden", "data-grammar-toaster-live": "polite", "data-contract": "FEEDBACK-3", children: polite }), _jsx(
|
|
143
|
+
}, children: [_jsx("span", { role: "status", "aria-live": "polite", "aria-atomic": "true", className: "starci-core-visually-hidden", "data-grammar-toaster-live": "polite", "data-contract": "FEEDBACK-3", children: polite }), _jsx(HeroAlert, { role: "alert", "aria-live": "assertive", "aria-atomic": "true", className: "starci-core-visually-hidden", "data-grammar-toaster-live": "assertive", "data-contract": "FEEDBACK-3", children: assertive }), _jsx("ol", { className: "starci-core-toaster-list", children: visible.map((toast) => (_jsx("li", { className: "starci-core-toaster-item", children: _jsx(Toast, { toast: toast, dismissLabel: dismissLabel, isPaused: isPaused, onDismiss: () => queue.dismiss(toast.id) }) }, toast.id))) })] }));
|
|
144
144
|
};
|
|
145
145
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/branch/Toast/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/branch/Toast/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classNames.d.ts","sourceRoot":"","sources":["../../../../src/core/branch/Tooltip/classNames.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"classNames.d.ts","sourceRoot":"","sources":["../../../../src/core/branch/Tooltip/classNames.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,uBAAuB,QAA0C,CAAA"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import { cn } from "@heroui/react";
|
|
2
|
-
export const
|
|
3
|
-
export const tooltipContentClassName = cn("starci-core-tooltip-content");
|
|
2
|
+
export const tooltipContentClassName = cn("starci-core-tooltip-content") ?? "";
|
|
4
3
|
//# sourceMappingURL=classNames.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classNames.js","sourceRoot":"","sources":["../../../../src/core/branch/Tooltip/classNames.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAA;AAElC,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"classNames.js","sourceRoot":"","sources":["../../../../src/core/branch/Tooltip/classNames.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAA;AAElC,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC,6BAA6B,CAAC,IAAI,EAAE,CAAA"}
|
|
@@ -1,31 +1,27 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { ReactElement, ReactNode } from "react";
|
|
2
2
|
/** Where the tooltip sits relative to its trigger. */
|
|
3
3
|
export type TooltipPlacement = "top" | "bottom";
|
|
4
4
|
/** Props for {@link Tooltip}. */
|
|
5
5
|
export type TooltipProps = {
|
|
6
6
|
/** The already-resolved words shown on hover or focus. */
|
|
7
7
|
readonly content: ReactNode;
|
|
8
|
-
|
|
8
|
+
/**
|
|
9
|
+
* One React Aria-compatible focusable control, such as a Grammar Button or IconButton.
|
|
10
|
+
* Native elements and custom controls must participate in React Aria's trigger context;
|
|
11
|
+
* merely having a tabIndex does not register hover/focus events with the tooltip.
|
|
12
|
+
*/
|
|
13
|
+
readonly children: ReactElement;
|
|
9
14
|
readonly placement?: TooltipPlacement;
|
|
10
15
|
};
|
|
11
|
-
/**
|
|
12
|
-
|
|
13
|
-
*
|
|
14
|
-
* The trigger keeps its own semantics; this branch only owns placement, contrast and the zero-delay
|
|
15
|
-
* reveal rhythm shared across StarCi surfaces.
|
|
16
|
-
*/
|
|
17
|
-
export declare const Tooltip: ({ content, children, placement, }: TooltipProps) => import("react").JSX.Element;
|
|
16
|
+
/** Hover/focus annotation with HeroUI's positioning, dismissal and accessible trigger relationship. */
|
|
17
|
+
export declare const Tooltip: ({ content, children, placement }: TooltipProps) => import("react").JSX.Element;
|
|
18
18
|
type AnchoredTooltipProps = {
|
|
19
19
|
readonly id: string;
|
|
20
20
|
readonly target: Element | null;
|
|
21
21
|
readonly content: ReactNode;
|
|
22
22
|
readonly isOpen: boolean;
|
|
23
23
|
};
|
|
24
|
-
/**
|
|
25
|
-
* Internal annotation for a collection item whose renderer already owns hover, focus and Escape.
|
|
26
|
-
* The native manual popover escapes scroll clipping while staying in its Grammar DOM scope;
|
|
27
|
-
* the caller attaches this id to the actual item, so no trigger wrapper changes the collection.
|
|
28
|
-
*/
|
|
24
|
+
/** A collection owns its trigger events; HeroUI positions the controlled annotation beside that item. */
|
|
29
25
|
export declare const AnchoredTooltip: ({ id, target, content, isOpen }: AnchoredTooltipProps) => import("react").JSX.Element;
|
|
30
26
|
export {};
|
|
31
27
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/branch/Tooltip/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/branch/Tooltip/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAIpD,sDAAsD;AACtD,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,QAAQ,CAAA;AAE/C,iCAAiC;AACjC,MAAM,MAAM,YAAY,GAAG;IACvB,0DAA0D;IAC1D,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAA;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAA;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAA;CACxC,CAAA;AAED,uGAAuG;AACvG,eAAO,MAAM,OAAO,GAAI,kCAA0C,YAAY,gCAqB7E,CAAA;AAED,KAAK,oBAAoB,GAAG;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAA;IAC/B,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,yGAAyG;AACzG,eAAO,MAAM,eAAe,GAAI,iCAAiC,oBAAoB,gCAoBpF,CAAA"}
|
|
@@ -1,54 +1,16 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
*/
|
|
11
|
-
export const Tooltip = ({ content, children, placement = "top", }) => {
|
|
12
|
-
const tooltipId = useId();
|
|
13
|
-
return (_jsxs("span", { className: tooltipRootClassName, "data-grammar-tooltip": "true", "data-component": "Tooltip", "data-tier": "branch", "data-grammar-tooltip-placement": placement, children: [_jsx("span", { "aria-describedby": tooltipId, "data-grammar-tooltip-trigger": "true", children: children }), _jsx("span", { id: tooltipId, role: "tooltip", className: tooltipContentClassName, "data-contract": "PADDING-1 PADDING-2 FLOW-2 FONT-1", "data-grammar-tooltip-content": "true", children: content })] }));
|
|
3
|
+
import { Tooltip as HeroTooltip } from "@heroui/react";
|
|
4
|
+
import { useOverlayContainer } from "../../overlayScope.js";
|
|
5
|
+
import { tooltipContentClassName } from "./classNames.js";
|
|
6
|
+
/** Hover/focus annotation with HeroUI's positioning, dismissal and accessible trigger relationship. */
|
|
7
|
+
export const Tooltip = ({ content, children, placement = "top" }) => {
|
|
8
|
+
const { anchor, container } = useOverlayContainer("Tooltip");
|
|
9
|
+
return (_jsxs(HeroTooltip, { delay: 0, children: [children, anchor, container === null ? null : (_jsx(HeroTooltip.Content, { UNSTABLE_portalContainer: container, placement: placement, className: tooltipContentClassName, "data-grammar-tooltip": "true", "data-component": "Tooltip", "data-tier": "branch", "data-grammar-tooltip-content": "true", children: content }))] }));
|
|
14
10
|
};
|
|
15
|
-
/**
|
|
16
|
-
* Internal annotation for a collection item whose renderer already owns hover, focus and Escape.
|
|
17
|
-
* The native manual popover escapes scroll clipping while staying in its Grammar DOM scope;
|
|
18
|
-
* the caller attaches this id to the actual item, so no trigger wrapper changes the collection.
|
|
19
|
-
*/
|
|
11
|
+
/** A collection owns its trigger events; HeroUI positions the controlled annotation beside that item. */
|
|
20
12
|
export const AnchoredTooltip = ({ id, target, content, isOpen }) => {
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
const annotation = annotationRef.current;
|
|
24
|
-
const view = target?.ownerDocument.defaultView;
|
|
25
|
-
if (!isOpen || target === null || annotation === null || view == null || !target.isConnected)
|
|
26
|
-
return;
|
|
27
|
-
const place = () => {
|
|
28
|
-
const targetRect = target.getBoundingClientRect();
|
|
29
|
-
const annotationRect = annotation.getBoundingClientRect();
|
|
30
|
-
const viewport = target.ownerDocument.documentElement;
|
|
31
|
-
const inset = 8;
|
|
32
|
-
const left = Math.min(Math.max(inset, targetRect.right + inset), Math.max(inset, viewport.clientWidth - annotationRect.width - inset));
|
|
33
|
-
const top = Math.min(Math.max(inset, targetRect.top + (targetRect.height - annotationRect.height) / 2), Math.max(inset, viewport.clientHeight - annotationRect.height - inset));
|
|
34
|
-
annotation.style.left = `${left}px`;
|
|
35
|
-
annotation.style.top = `${top}px`;
|
|
36
|
-
};
|
|
37
|
-
annotation.showPopover();
|
|
38
|
-
place();
|
|
39
|
-
view.addEventListener("scroll", place, true);
|
|
40
|
-
view.addEventListener("resize", place);
|
|
41
|
-
const observer = typeof ResizeObserver === "undefined" ? null : new ResizeObserver(place);
|
|
42
|
-
observer?.observe(target);
|
|
43
|
-
observer?.observe(annotation);
|
|
44
|
-
return () => {
|
|
45
|
-
view.removeEventListener("scroll", place, true);
|
|
46
|
-
view.removeEventListener("resize", place);
|
|
47
|
-
observer?.disconnect();
|
|
48
|
-
if (annotation.matches(":popover-open"))
|
|
49
|
-
annotation.hidePopover();
|
|
50
|
-
};
|
|
51
|
-
}, [isOpen, target, content]);
|
|
52
|
-
return (_jsx("span", { ref: annotationRef, id: id, role: "tooltip", popover: "manual", className: tooltipContentClassName, "data-contract": "PADDING-1 PADDING-2 FLOW-2 FONT-1", "data-grammar-tooltip-content": "true", "data-grammar-tooltip-annotation": "true", children: content }));
|
|
13
|
+
const { anchor, container } = useOverlayContainer("Tooltip");
|
|
14
|
+
return (_jsxs(HeroTooltip, { isOpen: isOpen && target !== null, delay: 0, children: [anchor, container === null ? null : (_jsx(HeroTooltip.Content, { triggerRef: { current: target }, UNSTABLE_portalContainer: container, placement: "right", offset: 8, className: tooltipContentClassName, "data-grammar-tooltip-content": "true", "data-grammar-tooltip-annotation": "true", children: _jsx("span", { id: id, children: content }) }))] }));
|
|
53
15
|
};
|
|
54
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/branch/Tooltip/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/branch/Tooltip/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAA;AAkBzD,uGAAuG;AACvG,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,GAAG,KAAK,EAAgB,EAAE,EAAE;IAC9E,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAA;IAC5D,OAAO,CACH,MAAC,WAAW,IAAC,KAAK,EAAE,CAAC,aAChB,QAAQ,EACR,MAAM,EACN,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACzB,KAAC,WAAW,CAAC,OAAO,IAChB,wBAAwB,EAAE,SAAS,EACnC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,uBAAuB,0BACb,MAAM,oBACZ,SAAS,eACd,QAAQ,kCACW,MAAM,YAElC,OAAO,GACU,CACzB,IACS,CACjB,CAAA;AACL,CAAC,CAAA;AASD,yGAAyG;AACzG,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAwB,EAAE,EAAE;IACrF,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAA;IAC5D,OAAO,CACH,MAAC,WAAW,IAAC,MAAM,EAAE,MAAM,IAAI,MAAM,KAAK,IAAI,EAAE,KAAK,EAAE,CAAC,aACnD,MAAM,EACN,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACzB,KAAC,WAAW,CAAC,OAAO,IAChB,UAAU,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAC/B,wBAAwB,EAAE,SAAS,EACnC,SAAS,EAAC,OAAO,EACjB,MAAM,EAAE,CAAC,EACT,SAAS,EAAE,uBAAuB,kCACL,MAAM,qCACH,MAAM,YAEtC,eAAM,EAAE,EAAE,EAAE,YAAG,OAAO,GAAQ,GACZ,CACzB,IACS,CACjB,CAAA;AACL,CAAC,CAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
import type { ButtonVariant } from "./primitive/Button/index.js";
|
|
3
|
+
export type ButtonIntent = "commit" | "alternative" | "dismiss" | "neutral" | "destructive";
|
|
4
|
+
export type DestructiveStep = "entry" | "confirm";
|
|
5
|
+
export type ButtonPlacement = "decision" | "item" | "chrome";
|
|
6
|
+
/** A step describes a destructive consequence and cannot be attached to another intent. */
|
|
7
|
+
export type ButtonIntentProps = {
|
|
8
|
+
readonly intent?: Exclude<ButtonIntent, "destructive">;
|
|
9
|
+
readonly step?: never;
|
|
10
|
+
} | {
|
|
11
|
+
readonly intent: "destructive";
|
|
12
|
+
readonly step?: DestructiveStep;
|
|
13
|
+
};
|
|
14
|
+
/** Grammar roots select their own declared DNA mapping; nested roots start a fresh decision scope. */
|
|
15
|
+
export declare const ButtonIntentFamilyProvider: ({ family, children }: {
|
|
16
|
+
readonly family?: string | undefined;
|
|
17
|
+
readonly children: ReactNode;
|
|
18
|
+
}) => import("react").JSX.Element;
|
|
19
|
+
/** Placement belongs to the Grammar composition, never to a Button's appearance props. */
|
|
20
|
+
export declare const ButtonPlacementProvider: ({ placement, navbar, children }: {
|
|
21
|
+
readonly placement: ButtonPlacement;
|
|
22
|
+
readonly navbar?: boolean;
|
|
23
|
+
readonly children: ReactNode;
|
|
24
|
+
}) => import("react").JSX.Element;
|
|
25
|
+
/** Resolve a command's facts through the active family's visual mapping. */
|
|
26
|
+
export declare const useButtonIntentVariant: (intent: ButtonIntent | undefined, step: DestructiveStep | undefined, control: "button" | "iconButton") => ButtonVariant | undefined;
|
|
27
|
+
//# sourceMappingURL=buttonIntent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buttonIntent.d.ts","sourceRoot":"","sources":["../../src/core/buttonIntent.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAIjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAEhE,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAA;AAC3F,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,SAAS,CAAA;AACjD,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAA;AAE5D,2FAA2F;AAC3F,MAAM,MAAM,iBAAiB,GACvB;IAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAA;CAAE,GACjF;IAAE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,CAAA;CAAE,CAAA;AAgBzE,sGAAsG;AACtG,eAAO,MAAM,0BAA0B,GAAI,sBAAsB;IAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,gCAItI,CAAA;AAED,0FAA0F;AAC1F,eAAO,MAAM,uBAAuB,GAAI,iCAAyC;IAAE,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,gCAEhL,CAAA;AAED,4EAA4E;AAC5E,eAAO,MAAM,sBAAsB,GAAI,QAAQ,YAAY,GAAG,SAAS,EAAE,MAAM,eAAe,GAAG,SAAS,EAAE,SAAS,QAAQ,GAAG,YAAY,KAAG,aAAa,GAAG,SAU9J,CAAA"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { createContext, useContext } from "react";
|
|
4
|
+
import { STARCI_CORE_DNA } from "./dna.js";
|
|
5
|
+
import { OFFSET_POP_DNA } from "../offset-pop/dna.js";
|
|
6
|
+
import { HERITAGE_DNA } from "../heritage/dna.js";
|
|
7
|
+
const FamilyContext = createContext(STARCI_CORE_DNA.intent);
|
|
8
|
+
const PlacementContext = createContext({ placement: "decision", navbar: false });
|
|
9
|
+
/** Grammar roots select their own declared DNA mapping; nested roots start a fresh decision scope. */
|
|
10
|
+
export const ButtonIntentFamilyProvider = ({ family, children }) => (_jsx(FamilyContext.Provider, { value: family === "heritage" ? HERITAGE_DNA.intent : family === "offset-pop" ? OFFSET_POP_DNA.intent : STARCI_CORE_DNA.intent, children: _jsx(ButtonPlacementProvider, { placement: "decision", children: children }) }));
|
|
11
|
+
/** Placement belongs to the Grammar composition, never to a Button's appearance props. */
|
|
12
|
+
export const ButtonPlacementProvider = ({ placement, navbar = false, children }) => (_jsx(PlacementContext.Provider, { value: { placement, navbar }, children: children }));
|
|
13
|
+
/** Resolve a command's facts through the active family's visual mapping. */
|
|
14
|
+
export const useButtonIntentVariant = (intent, step, control) => {
|
|
15
|
+
const mapping = useContext(FamilyContext);
|
|
16
|
+
const { placement, navbar } = useContext(PlacementContext);
|
|
17
|
+
if (intent === undefined)
|
|
18
|
+
return undefined;
|
|
19
|
+
if (intent === "commit")
|
|
20
|
+
return mapping.commit[placement];
|
|
21
|
+
if (intent === "neutral")
|
|
22
|
+
return control === "iconButton"
|
|
23
|
+
? mapping.neutral.iconButton[navbar ? "navbar" : placement]
|
|
24
|
+
: mapping.neutral.button[placement];
|
|
25
|
+
if (intent === "destructive")
|
|
26
|
+
return mapping.destructive[step ?? "entry"];
|
|
27
|
+
return mapping[intent];
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=buttonIntent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buttonIntent.js","sourceRoot":"","sources":["../../src/core/buttonIntent.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,aAAa,EAAE,UAAU,EAAkB,MAAM,OAAO,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAuBjD,MAAM,aAAa,GAAG,aAAa,CAAgB,eAAe,CAAC,MAAM,CAAC,CAAA;AAC1E,MAAM,gBAAgB,GAAG,aAAa,CAAoE,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;AAEnJ,sGAAsG;AACtG,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,EAA0E,EAAE,EAAE,CAAC,CACxI,KAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,YACjJ,KAAC,uBAAuB,IAAC,SAAS,EAAC,UAAU,YAAE,QAAQ,GAA2B,GAC7D,CAC5B,CAAA;AAED,0FAA0F;AAC1F,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK,EAAE,QAAQ,EAAoG,EAAE,EAAE,CAAC,CAClL,KAAC,gBAAgB,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,YAAG,QAAQ,GAA6B,CAClG,CAAA;AAED,4EAA4E;AAC5E,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,MAAgC,EAAE,IAAiC,EAAE,OAAgC,EAA6B,EAAE;IACvK,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,CAAA;IACzC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAA;IAC1D,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IAC1C,IAAI,MAAM,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACzD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,OAAO,KAAK,YAAY;YACrD,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3D,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACvC,IAAI,MAAM,KAAK,aAAa;QAAE,OAAO,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,OAAO,CAAC,CAAA;IACzE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAA;AAC1B,CAAC,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
/** Item previews support one, two or three visible lines; their full text remains accessible. */
|
|
3
|
+
export type ItemDescriptionLines = 1 | 2 | 3;
|
|
4
|
+
type CollectionItemPresentation = {
|
|
5
|
+
readonly descriptionLines: ItemDescriptionLines;
|
|
6
|
+
readonly unreadWeight: number;
|
|
7
|
+
};
|
|
8
|
+
/** Each Grammar root selects its family's item typography, including inside nested family scopes. */
|
|
9
|
+
export declare const CollectionItemFamilyProvider: ({ family, children }: {
|
|
10
|
+
readonly family?: string | undefined;
|
|
11
|
+
readonly children: ReactNode;
|
|
12
|
+
}) => import("react").JSX.Element;
|
|
13
|
+
/** Shared collection renderers read their preview limits and unread weight from the active DNA. */
|
|
14
|
+
export declare const useCollectionItemPresentation: () => CollectionItemPresentation;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=collectionItem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collectionItem.d.ts","sourceRoot":"","sources":["../../src/core/collectionItem.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAKjE,iGAAiG;AACjG,MAAM,MAAM,oBAAoB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAE5C,KAAK,0BAA0B,GAAG;IAC9B,QAAQ,CAAC,gBAAgB,EAAE,oBAAoB,CAAA;IAC/C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;CAChC,CAAA;AAID,qGAAqG;AACrG,eAAO,MAAM,4BAA4B,GAAI,sBAAsB;IAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,gCAIxI,CAAA;AAED,mGAAmG;AACnG,eAAO,MAAM,6BAA6B,QAAO,0BAA+D,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { createContext, useContext } from "react";
|
|
4
|
+
import { STARCI_CORE_DNA } from "./dna.js";
|
|
5
|
+
import { HERITAGE_DNA } from "../heritage/dna.js";
|
|
6
|
+
import { OFFSET_POP_DNA } from "../offset-pop/dna.js";
|
|
7
|
+
const CollectionItemContext = createContext(STARCI_CORE_DNA.collectionItem);
|
|
8
|
+
/** Each Grammar root selects its family's item typography, including inside nested family scopes. */
|
|
9
|
+
export const CollectionItemFamilyProvider = ({ family, children }) => (_jsx(CollectionItemContext.Provider, { value: family === "heritage" ? HERITAGE_DNA.collectionItem : family === "offset-pop" ? OFFSET_POP_DNA.collectionItem : STARCI_CORE_DNA.collectionItem, children: children }));
|
|
10
|
+
/** Shared collection renderers read their preview limits and unread weight from the active DNA. */
|
|
11
|
+
export const useCollectionItemPresentation = () => useContext(CollectionItemContext);
|
|
12
|
+
//# sourceMappingURL=collectionItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collectionItem.js","sourceRoot":"","sources":["../../src/core/collectionItem.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,aAAa,EAAE,UAAU,EAAkB,MAAM,OAAO,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAUrD,MAAM,qBAAqB,GAAG,aAAa,CAA6B,eAAe,CAAC,cAAc,CAAC,CAAA;AAEvG,qGAAqG;AACrG,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,EAA0E,EAAE,EAAE,CAAC,CAC1I,KAAC,qBAAqB,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,cAAc,YAChL,QAAQ,GACoB,CACpC,CAAA;AAED,mGAAmG;AACnG,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAA+B,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAA"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import type { ReactNode } from "react";
|
|
2
|
-
import { type AvatarSize } from "../../primitive/Avatar/index.js";
|
|
2
|
+
import { type AvatarKind, type AvatarSize } from "../../primitive/Avatar/index.js";
|
|
3
3
|
export type AvatarButtonProps = {
|
|
4
4
|
/** The person or entity; it names the button. */
|
|
5
5
|
readonly name: string;
|
|
6
6
|
readonly src?: string;
|
|
7
|
-
/** Stable
|
|
7
|
+
/** Stable identity id determines the local DiceBear initials background; otherwise `name` does. */
|
|
8
8
|
readonly seed?: string;
|
|
9
|
-
|
|
9
|
+
readonly kind?: AvatarKind;
|
|
10
|
+
/** Custom uploaded-image loading/error fallback; the default is the same DiceBear initials image. */
|
|
10
11
|
readonly fallback?: ReactNode;
|
|
11
12
|
/** `md` is 40px. */
|
|
12
13
|
readonly size?: AvatarSize;
|
|
@@ -18,5 +19,5 @@ export type AvatarButtonProps = {
|
|
|
18
19
|
* press and a round focus ring. Pass it as the `trigger` of a DropdownMenu or Popover (the account menu).
|
|
19
20
|
* Contract: A11Y-2 (the button is named once; the avatar inside is decorative).
|
|
20
21
|
*/
|
|
21
|
-
export declare const AvatarButton: ({ name, src, seed, fallback, size, onPress, isDisabled }: AvatarButtonProps) => import("react").JSX.Element;
|
|
22
|
+
export declare const AvatarButton: ({ name, src, seed, kind, fallback, size, onPress, isDisabled }: AvatarButtonProps) => import("react").JSX.Element;
|
|
22
23
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composite/AvatarButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composite/AvatarButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAgC,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAGhH,MAAM,MAAM,iBAAiB,GAAG;IAC5B,iDAAiD;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,mGAAmG;IACnG,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;IAC1B,qGAAqG;IACrG,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;IAC7B,oBAAoB;IACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,gEAAkF,iBAAiB,gCAU/H,CAAA"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
import { Avatar } from "../../primitive/Avatar/index.js";
|
|
3
|
+
import { Avatar, avatarAccessibleName } from "../../primitive/Avatar/index.js";
|
|
4
4
|
import { PlainPressable } from "../../primitive/PlainPressable/index.js";
|
|
5
5
|
/**
|
|
6
6
|
* An avatar that is only a circle and is also a control: no pill or oval button around it, no hover effect, a zoom-out on
|
|
7
7
|
* press and a round focus ring. Pass it as the `trigger` of a DropdownMenu or Popover (the account menu).
|
|
8
8
|
* Contract: A11Y-2 (the button is named once; the avatar inside is decorative).
|
|
9
9
|
*/
|
|
10
|
-
export const AvatarButton = ({ name, src, seed, fallback, size = "md", onPress, isDisabled }) => (_jsx(PlainPressable, { "aria-label": name, shape: "circle", ...(size === "control" ? { size } : {}), ...(onPress === undefined ? {} : { onPress }), ...(isDisabled === undefined ? {} : { isDisabled }), children: _jsx(Avatar, { name: name, isDecorative: true, size: size, ...(src === undefined ? {} : { src }), ...(seed === undefined ? {} : { seed }), ...(fallback === undefined ? {} : { fallback }) }) }));
|
|
10
|
+
export const AvatarButton = ({ name, src, seed, kind = "person", fallback, size = "md", onPress, isDisabled }) => (_jsx(PlainPressable, { "aria-label": avatarAccessibleName(name, kind), shape: "circle", ...(size === "control" ? { size } : {}), ...(onPress === undefined ? {} : { onPress }), ...(isDisabled === undefined ? {} : { isDisabled }), children: _jsx(Avatar, { name: name, kind: kind, isDecorative: true, size: size, ...(src === undefined ? {} : { src }), ...(seed === undefined ? {} : { seed }), ...(fallback === undefined ? {} : { fallback }) }) }));
|
|
11
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composite/AvatarButton/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAGZ,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composite/AvatarButton/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAGZ,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAoC,MAAM,iCAAiC,CAAA;AAChH,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAA;AAiBxE;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,GAAG,QAAQ,EAAE,QAAQ,EAAE,IAAI,GAAG,IAAI,EAAE,OAAO,EAAE,UAAU,EAAqB,EAAE,EAAE,CAAC,CACjI,KAAC,cAAc,kBACC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,EAC5C,KAAK,EAAC,QAAQ,KACV,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KACpC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,KAC1C,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,YAEpD,KAAC,MAAM,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,QAAC,IAAI,EAAE,IAAI,KAAM,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,KAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAI,GAClL,CACpB,CAAA"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import type { ReactNode } from "react";
|
|
2
|
-
import { type AvatarSize } from "../../primitive/Avatar/index.js";
|
|
2
|
+
import { type AvatarKind, type AvatarSize } from "../../primitive/Avatar/index.js";
|
|
3
3
|
export type AvatarGroupItem = {
|
|
4
4
|
readonly id: string;
|
|
5
5
|
readonly name: string;
|
|
6
6
|
readonly src?: string;
|
|
7
|
-
/** Stable
|
|
7
|
+
/** Stable identity id determines the local DiceBear initials background; otherwise `name` does. */
|
|
8
8
|
readonly seed?: string;
|
|
9
|
-
|
|
9
|
+
readonly kind?: AvatarKind;
|
|
10
|
+
/** Custom uploaded-image fallback; otherwise the same DiceBear initials image remains. */
|
|
10
11
|
readonly fallback?: ReactNode;
|
|
11
12
|
};
|
|
12
13
|
export type AvatarGroupProps = {
|
|
@@ -18,13 +19,14 @@ export type AvatarGroupProps = {
|
|
|
18
19
|
/** Visible avatars in `row` before the rest collapse into an overflow count. The grid always has at most four cells. */
|
|
19
20
|
readonly max?: number;
|
|
20
21
|
readonly size?: AvatarSize;
|
|
21
|
-
/** App-owned accessible text for
|
|
22
|
+
/** App-owned accessible text for hidden members in either layout, e.g. "3 more people". Grid digits show the total. */
|
|
22
23
|
readonly overflowLabel: (hiddenCount: number) => string;
|
|
23
24
|
readonly className?: string;
|
|
24
25
|
};
|
|
25
26
|
/**
|
|
26
27
|
* A stacked member row or one round composite group identity with an accessible overflow count.
|
|
27
28
|
* Grid layout splits two members, places one above two for three members, and uses a 2-by-2 grid for four.
|
|
29
|
+
* With five or more members, the fourth grid cell shows the total member count beside three avatars.
|
|
28
30
|
* Contract: each avatar and count A11Y-2 (named once, fallback initials and overflow digits silent).
|
|
29
31
|
*/
|
|
30
32
|
export declare const AvatarGroup: ({ label, items, layout, max, size, overflowLabel, className }: AvatarGroupProps) => import("react").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composite/AvatarGroup/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composite/AvatarGroup/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAiG,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAGjL,MAAM,MAAM,eAAe,GAAG;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,mGAAmG;IACnG,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;IAC1B,0FAA0F;IAC1F,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC3B,+CAA+C;IAC/C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,eAAe,CAAC,CAAA;IAC9C,gGAAgG;IAChG,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IAChC,wHAAwH;IACxH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;IAC1B,uHAAuH;IACvH,QAAQ,CAAC,aAAa,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAA;IACvD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GAAI,+DAAkF,gBAAgB,gCA2E7H,CAAA"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { Avatar as HeroAvatar, AvatarGroup as HeroAvatarGroup } from "@heroui/react";
|
|
4
|
-
import { avatarA11yProps, avatarParts, vendorAvatarSize } from "../../primitive/Avatar/index.js";
|
|
4
|
+
import { Avatar, AvatarAgentBadge, AvatarInitialsImage, avatarA11yProps, avatarParts, vendorAvatarSize } from "../../primitive/Avatar/index.js";
|
|
5
5
|
import { navigationClassName } from "../../navigationClassNames.js";
|
|
6
6
|
/**
|
|
7
7
|
* A stacked member row or one round composite group identity with an accessible overflow count.
|
|
8
8
|
* Grid layout splits two members, places one above two for three members, and uses a 2-by-2 grid for four.
|
|
9
|
+
* With five or more members, the fourth grid cell shows the total member count beside three avatars.
|
|
9
10
|
* Contract: each avatar and count A11Y-2 (named once, fallback initials and overflow digits silent).
|
|
10
11
|
*/
|
|
11
12
|
export const AvatarGroup = ({ label, items, layout = "row", max = 4, size = "md", overflowLabel, className }) => {
|
|
@@ -13,7 +14,7 @@ export const AvatarGroup = ({ label, items, layout = "row", max = 4, size = "md"
|
|
|
13
14
|
const visible = items.slice(0, capacity);
|
|
14
15
|
const hidden = items.length - visible.length;
|
|
15
16
|
if (layout === "grid")
|
|
16
|
-
return (_jsx(HeroAvatar, { "aria-label": label, className: navigationClassName("starci-core-avatar starci-core-avatar-group", className), "data-component": "AvatarGroup", "data-contract": "COLLECTION-3 A11Y-2", "data-tier": "composite", "data-grammar-avatar-size": size, "data-grammar-avatar-layout": "grid", "data-grammar-avatar-cells": visible.length + (hidden > 0 ? 1 : 0), "data-grammar-avatar-overflow": hidden > 0 ? "true" : "false", role: "group", size: vendorAvatarSize(size), children: items.length === 0 ? avatarParts(label, undefined, undefined) : (_jsxs("span", { className: "starci-core-avatar-group-grid", children: [visible.map((item) => (_jsx(HeroAvatar, { ...avatarA11yProps(item.name, false), className: "starci-core-avatar-group-member", "data-component": "Avatar", "data-contract": "A11Y-2", size: vendorAvatarSize(size), children: avatarParts(item.name, item.src, item.fallback, item.seed) }, item.id))), hidden > 0 ? (_jsx("span", { "aria-label": overflowLabel(hidden), className: "starci-core-avatar-group-count", "data-contract": "A11Y-2", "data-grammar-avatar-count": "true", role: "img", children: _jsx(
|
|
17
|
-
return (_jsxs(HeroAvatarGroup, { "aria-label": label, className: navigationClassName("starci-core-avatar-group", className), "data-component": "AvatarGroup", "data-tier": "composite", "data-grammar-avatar-layout": "row", "data-grammar-avatar-overflow": hidden > 0 ? "true" : "false", overlap: "ring", role: "group", size: vendorAvatarSize(size), children: [visible.map((item) => (_jsx(
|
|
17
|
+
return (_jsx(AvatarAgentBadge, { kind: visible.some((item) => item.kind === "agent") ? "agent" : "person", size: size, renderedScale: visible.length > 1 || hidden > 0 ? 0.5 : 1, children: _jsx(HeroAvatar, { "aria-label": label, className: navigationClassName("starci-core-avatar starci-core-avatar-group", className), "data-component": "AvatarGroup", "data-contract": "COLLECTION-3 A11Y-2", "data-tier": "composite", "data-grammar-avatar-size": size, "data-grammar-avatar-layout": "grid", "data-grammar-avatar-cells": visible.length + (hidden > 0 ? 1 : 0), "data-grammar-avatar-overflow": hidden > 0 ? "true" : "false", role: "group", size: vendorAvatarSize(size), children: items.length === 0 ? avatarParts(label, undefined, undefined) : (_jsxs("span", { className: "starci-core-avatar-group-grid", children: [visible.map((item) => (_jsx(HeroAvatar, { ...avatarA11yProps(item.name, false, item.kind), className: "starci-core-avatar-group-member", "data-component": "Avatar", "data-contract": "A11Y-2", "data-grammar-avatar-kind": item.kind ?? "person", "data-grammar-agent-badge": visible.length > 1 || hidden > 0 ? "below-size-floor" : undefined, size: vendorAvatarSize(size), children: avatarParts(item.name, item.src, item.fallback, item.seed) }, item.id))), hidden > 0 ? (_jsx("span", { "aria-label": overflowLabel(hidden), className: "starci-core-avatar-group-count", "data-contract": "A11Y-2", "data-grammar-avatar-count": "true", role: "img", children: _jsx(AvatarInitialsImage, { name: label, text: String(items.length) }) })) : null] })) }) }));
|
|
18
|
+
return (_jsxs(HeroAvatarGroup, { "aria-label": label, className: navigationClassName("starci-core-avatar-group", className), "data-component": "AvatarGroup", "data-tier": "composite", "data-grammar-avatar-layout": "row", "data-grammar-avatar-overflow": hidden > 0 ? "true" : "false", overlap: "ring", role: "group", size: vendorAvatarSize(size), children: [visible.map((item) => (_jsx(Avatar, { name: item.name, size: size, ...(item.src === undefined ? {} : { src: item.src }), ...(item.seed === undefined ? {} : { seed: item.seed }), ...(item.kind === undefined ? {} : { kind: item.kind }), ...(item.fallback === undefined ? {} : { fallback: item.fallback }) }, item.id))), hidden > 0 ? (_jsx(HeroAvatarGroup.Count, { "aria-label": overflowLabel(hidden), className: "starci-core-avatar", "data-contract": "A11Y-2", "data-grammar-avatar-size": size, "data-grammar-avatar-count": "true", role: "img", children: _jsx(AvatarInitialsImage, { name: label, text: `+${hidden}` }) })) : null] }));
|
|
18
19
|
};
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composite/AvatarGroup/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,eAAe,CAAA;AAEpF,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composite/AvatarGroup/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
export type CollectionItemProps = {
|
|
3
|
+
/** One repeated card or custom collection row, with its existing markup preserved. */
|
|
4
|
+
readonly children: ReactNode;
|
|
5
|
+
};
|
|
6
|
+
/** Supplies item placement for custom card lists without adding a DOM wrapper. */
|
|
7
|
+
export declare const CollectionItem: ({ children }: CollectionItemProps) => import("react").JSX.Element;
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composite/CollectionItem/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGtC,MAAM,MAAM,mBAAmB,GAAG;IAC9B,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAC/B,CAAA;AAED,kFAAkF;AAClF,eAAO,MAAM,cAAc,GAAI,cAAc,mBAAmB,gCAE/D,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { ButtonPlacementProvider } from "../../buttonIntent.js";
|
|
3
|
+
/** Supplies item placement for custom card lists without adding a DOM wrapper. */
|
|
4
|
+
export const CollectionItem = ({ children }) => (_jsx(ButtonPlacementProvider, { placement: "item", children: children }));
|
|
5
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composite/CollectionItem/index.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAO/D,kFAAkF;AAClF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAuB,EAAE,EAAE,CAAC,CACjE,KAAC,uBAAuB,IAAC,SAAS,EAAC,MAAM,YAAE,QAAQ,GAA2B,CACjF,CAAA"}
|