@starci/grammar 0.12.0 → 0.12.3
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 +65 -18
- package/dist/.build-stamp.json +4 -4
- package/dist/common/components-forms.css +5 -0
- package/dist/common/components-navigation.css +8 -6
- package/dist/common/components-overlays.css +0 -10
- package/dist/common/registry.d.ts +6 -6
- package/dist/common/renderers-forms.d.ts +1 -1
- package/dist/common/renderers-navigation.d.ts +2 -2
- package/dist/common/renderers.d.ts +1 -1
- package/dist/common/renderers.d.ts.map +1 -1
- package/dist/common/renderers.js.map +1 -1
- package/dist/common/rule-catalog.generated.d.ts +1 -0
- package/dist/common/rule-catalog.generated.d.ts.map +1 -1
- package/dist/common/rule-catalog.generated.js +10 -1
- package/dist/common/rule-catalog.generated.js.map +1 -1
- package/dist/common/styles.css +91 -112
- package/dist/core/branch/DropdownMenu/index.d.ts +2 -7
- package/dist/core/branch/DropdownMenu/index.d.ts.map +1 -1
- package/dist/core/branch/DropdownMenu/index.js +2 -4
- package/dist/core/branch/DropdownMenu/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.js +2 -2
- 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 +10 -29
- package/dist/core/branch/SurfaceCard/index.js.map +1 -1
- package/dist/core/branch/Tabs/index.d.ts +3 -2
- package/dist/core/branch/Tabs/index.d.ts.map +1 -1
- package/dist/core/branch/Tabs/index.js +3 -1
- 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 +18 -9
- package/dist/core/branch/Tooltip/index.d.ts.map +1 -1
- package/dist/core/branch/Tooltip/index.js +12 -11
- package/dist/core/branch/Tooltip/index.js.map +1 -1
- package/dist/core/composite/AvatarButton/index.d.ts.map +1 -1
- package/dist/core/composite/AvatarButton/index.js +1 -1
- package/dist/core/composite/AvatarButton/index.js.map +1 -1
- package/dist/core/composite/IdentityLockup/index.d.ts +4 -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/IdentityLockup/index.js.map +1 -1
- package/dist/core/composition/NavigationFeatureNav/index.d.ts.map +1 -1
- package/dist/core/composition/NavigationFeatureNav/index.js +2 -1
- package/dist/core/composition/NavigationFeatureNav/index.js.map +1 -1
- package/dist/core/composition/Sidebar/index.d.ts +8 -1
- package/dist/core/composition/Sidebar/index.d.ts.map +1 -1
- package/dist/core/composition/Sidebar/index.js +49 -27
- 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 +2 -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 +6 -4
- package/dist/core/composition/WorkspaceShell/index.js.map +1 -1
- package/dist/core/dna.d.ts +4 -0
- package/dist/core/dna.d.ts.map +1 -1
- package/dist/core/dna.js +4 -0
- package/dist/core/dna.js.map +1 -1
- package/dist/core/primitive/Button/index.d.ts +3 -2
- package/dist/core/primitive/Button/index.d.ts.map +1 -1
- package/dist/core/primitive/Button/index.js +4 -4
- 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/IconButton/index.d.ts +14 -10
- package/dist/core/primitive/IconButton/index.d.ts.map +1 -1
- package/dist/core/primitive/IconButton/index.js +1 -1
- package/dist/core/primitive/IconButton/index.js.map +1 -1
- package/dist/core/primitive/Input/index.d.ts +3 -1
- package/dist/core/primitive/Input/index.d.ts.map +1 -1
- package/dist/core/primitive/Input/index.js +3 -3
- package/dist/core/primitive/Input/index.js.map +1 -1
- package/dist/core/primitive/PlainPressable/index.d.ts +3 -1
- package/dist/core/primitive/PlainPressable/index.d.ts.map +1 -1
- package/dist/core/primitive/PlainPressable/index.js +1 -1
- package/dist/core/primitive/PlainPressable/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/SearchField/index.d.ts +3 -1
- package/dist/core/primitive/SearchField/index.d.ts.map +1 -1
- package/dist/core/primitive/SearchField/index.js +2 -2
- package/dist/core/primitive/SearchField/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 +5 -3
- package/dist/core/primitive/TextAction/index.js.map +1 -1
- package/dist/core/primitive/actionStyles.d.ts +1 -1
- package/dist/core/primitive/actionStyles.d.ts.map +1 -1
- 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/package.json +5 -3
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { cn } from "@heroui/react";
|
|
3
3
|
import { PageContainer } from "../../primitive/PageContainer/index.js";
|
|
4
|
+
import { SurfaceNesting } from "../../surfaceContext.js";
|
|
4
5
|
import { navigationFeatureNavActionsClassName, navigationFeatureNavClassName, navigationFeatureNavCompactNavigationClassName, navigationFeatureNavFeatureClassName, navigationFeatureNavIdentityClassName, navigationFeatureNavNavigationClassName, navigationFeatureNavPrimaryClassName, } from "./classNames.js";
|
|
5
6
|
/**
|
|
6
7
|
* Global navigation with at most one feature layer.
|
|
@@ -12,5 +13,5 @@ import { navigationFeatureNavActionsClassName, navigationFeatureNavClassName, na
|
|
|
12
13
|
* Landmark rule: this `<header>` is the page's one banner. In `WorkspaceShell`'s `header` slot the
|
|
13
14
|
* shell yields its own `<header>` for a plain `div`, so the banner is never nested or duplicated.
|
|
14
15
|
*/
|
|
15
|
-
export const NavigationFeatureNav = ({ identity, navigation, navigationLabel, compactNavigationTrigger, compactNavigationTriggerLabel, actions, actionsLabel, featureNavigation, featureNavigationLabel, measure = "full", position = "sticky", className, ...headerProps }) => (_jsxs("header", { ...headerProps, className: cn(navigationFeatureNavClassName, className), "data-contract": "MEASURE-2 BOUNDARY-1", "data-grammar-navigation-feature-nav": "true", "data-component": "NavigationFeatureNav", "data-tier": "composition", "data-grammar-navigation-feature-nav-destinations": navigation === undefined ? "absent" : "present", "data-grammar-navigation-feature-nav-layers": featureNavigation === undefined ? "one" : "two", "data-grammar-navigation-feature-nav-position": position, children: [_jsxs(PageContainer, { className: navigationFeatureNavPrimaryClassName, "data-contract": "GAP-3 PADDING-3", "data-grammar-navigation-feature-nav-primary": "true", measure: measure, children: [_jsx("div", { className: navigationFeatureNavIdentityClassName, "data-grammar-navigation-feature-nav-identity": "true", children: identity }), navigation === undefined ? null : (_jsx("nav", { "aria-label": navigationLabel, className: navigationFeatureNavNavigationClassName, "data-grammar-navigation-feature-nav-navigation": "true", children: navigation })), _jsx("div", { "aria-label": compactNavigationTriggerLabel, className: navigationFeatureNavCompactNavigationClassName, "data-grammar-navigation-feature-nav-compact-navigation": "true", role: "group", children: compactNavigationTrigger }), actions === undefined ? null : (_jsx("div", { "aria-label": actionsLabel, className: navigationFeatureNavActionsClassName, "data-contract": "GAP-2", "data-grammar-navigation-feature-nav-actions": "true", role: actionsLabel === undefined ? undefined : "group", children: actions }))] }), featureNavigation === undefined ? null : (_jsx("div", { "aria-label": featureNavigationLabel, className: navigationFeatureNavFeatureClassName, "data-grammar-navigation-feature-nav-feature": "true", role: featureNavigationLabel === undefined ? undefined : "region", children: featureNavigation }))] }));
|
|
16
|
+
export const NavigationFeatureNav = ({ identity, navigation, navigationLabel, compactNavigationTrigger, compactNavigationTriggerLabel, actions, actionsLabel, featureNavigation, featureNavigationLabel, measure = "full", position = "sticky", className, ...headerProps }) => (_jsx(SurfaceNesting, { children: _jsxs("header", { ...headerProps, className: cn(navigationFeatureNavClassName, className), "data-contract": "MEASURE-2 BOUNDARY-1", "data-grammar-navigation-feature-nav": "true", "data-component": "NavigationFeatureNav", "data-tier": "composition", "data-grammar-navigation-feature-nav-destinations": navigation === undefined ? "absent" : "present", "data-grammar-navigation-feature-nav-layers": featureNavigation === undefined ? "one" : "two", "data-grammar-navigation-feature-nav-position": position, children: [_jsxs(PageContainer, { className: navigationFeatureNavPrimaryClassName, "data-contract": "GAP-3 PADDING-3", "data-grammar-navigation-feature-nav-primary": "true", measure: measure, children: [_jsx("div", { className: navigationFeatureNavIdentityClassName, "data-grammar-navigation-feature-nav-identity": "true", children: identity }), navigation === undefined ? null : (_jsx("nav", { "aria-label": navigationLabel, className: navigationFeatureNavNavigationClassName, "data-grammar-navigation-feature-nav-navigation": "true", children: navigation })), _jsx("div", { "aria-label": compactNavigationTriggerLabel, className: navigationFeatureNavCompactNavigationClassName, "data-grammar-navigation-feature-nav-compact-navigation": "true", role: "group", children: compactNavigationTrigger }), actions === undefined ? null : (_jsx("div", { "aria-label": actionsLabel, className: navigationFeatureNavActionsClassName, "data-contract": "GAP-2", "data-grammar-navigation-feature-nav-actions": "true", role: actionsLabel === undefined ? undefined : "group", children: actions }))] }), featureNavigation === undefined ? null : (_jsx("div", { "aria-label": featureNavigationLabel, className: navigationFeatureNavFeatureClassName, "data-grammar-navigation-feature-nav-feature": "true", role: featureNavigationLabel === undefined ? undefined : "region", children: featureNavigation }))] }) }));
|
|
16
17
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composition/NavigationFeatureNav/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAA;AAElC,OAAO,EAAE,aAAa,EAA2B,MAAM,wCAAwC,CAAA;AAC/F,OAAO,EACH,oCAAoC,EACpC,6BAA6B,EAC7B,8CAA8C,EAC9C,oCAAoC,EACpC,qCAAqC,EACrC,uCAAuC,EACvC,oCAAoC,GACvC,MAAM,iBAAiB,CAAA;AA0BxB;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EACjC,QAAQ,EACR,UAAU,EACV,eAAe,EACf,wBAAwB,EACxB,6BAA6B,EAC7B,OAAO,EACP,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,EACtB,OAAO,GAAG,MAAM,EAChB,QAAQ,GAAG,QAAQ,EACnB,SAAS,EACT,GAAG,WAAW,EACU,EAAE,EAAE,CAAC,CAC7B,qBACQ,WAAW,EACf,SAAS,EAAE,EAAE,CAAC,6BAA6B,EAAE,SAAS,CAAC,mBACzC,sBAAsB,yCACA,MAAM,oBAC3B,sBAAsB,eAC3B,aAAa,sDAC2B,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,gDACrD,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,kDAC7C,QAAQ,aAEtD,MAAC,aAAa,IAAC,SAAS,EAAE,oCAAoC,mBAAgB,iBAAiB,iDAA6C,MAAM,EAAC,OAAO,EAAE,OAAO,aAC/J,cAAK,SAAS,EAAE,qCAAqC,kDAA+C,MAAM,YAAE,QAAQ,GAAO,EAC1H,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC/B,4BAAiB,eAAe,EAAE,SAAS,EAAE,uCAAuC,oDAAiD,MAAM,YAAE,UAAU,GAAO,CACjK,EACD,4BACgB,6BAA6B,EACzC,SAAS,EAAE,8CAA8C,4DACF,MAAM,EAC7D,IAAI,EAAC,OAAO,YAEX,wBAAwB,GACvB,EACL,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC5B,4BACgB,YAAY,EACxB,SAAS,EAAE,oCAAoC,mBACjC,OAAO,iDACuB,MAAM,EAClD,IAAI,EAAE,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,YAErD,OAAO,GACN,CACT,IACW,EACf,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACtC,4BACgB,sBAAsB,EAClC,SAAS,EAAE,oCAAoC,iDACH,MAAM,EAClD,IAAI,EAAE,sBAAsB,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,YAEhE,iBAAiB,GAChB,CACT,IACI,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composition/NavigationFeatureNav/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAA;AAElC,OAAO,EAAE,aAAa,EAA2B,MAAM,wCAAwC,CAAA;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EACH,oCAAoC,EACpC,6BAA6B,EAC7B,8CAA8C,EAC9C,oCAAoC,EACpC,qCAAqC,EACrC,uCAAuC,EACvC,oCAAoC,GACvC,MAAM,iBAAiB,CAAA;AA0BxB;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EACjC,QAAQ,EACR,UAAU,EACV,eAAe,EACf,wBAAwB,EACxB,6BAA6B,EAC7B,OAAO,EACP,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,EACtB,OAAO,GAAG,MAAM,EAChB,QAAQ,GAAG,QAAQ,EACnB,SAAS,EACT,GAAG,WAAW,EACU,EAAE,EAAE,CAAC,CAC7B,KAAC,cAAc,cACf,qBACQ,WAAW,EACf,SAAS,EAAE,EAAE,CAAC,6BAA6B,EAAE,SAAS,CAAC,mBACzC,sBAAsB,yCACA,MAAM,oBAC3B,sBAAsB,eAC3B,aAAa,sDAC2B,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,gDACrD,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,kDAC7C,QAAQ,aAEtD,MAAC,aAAa,IAAC,SAAS,EAAE,oCAAoC,mBAAgB,iBAAiB,iDAA6C,MAAM,EAAC,OAAO,EAAE,OAAO,aAC/J,cAAK,SAAS,EAAE,qCAAqC,kDAA+C,MAAM,YAAE,QAAQ,GAAO,EAC1H,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC/B,4BAAiB,eAAe,EAAE,SAAS,EAAE,uCAAuC,oDAAiD,MAAM,YAAE,UAAU,GAAO,CACjK,EACD,4BACgB,6BAA6B,EACzC,SAAS,EAAE,8CAA8C,4DACF,MAAM,EAC7D,IAAI,EAAC,OAAO,YAEX,wBAAwB,GACvB,EACL,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC5B,4BACgB,YAAY,EACxB,SAAS,EAAE,oCAAoC,mBACjC,OAAO,iDACuB,MAAM,EAClD,IAAI,EAAE,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,YAErD,OAAO,GACN,CACT,IACW,EACf,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACtC,4BACgB,sBAAsB,EAClC,SAAS,EAAE,oCAAoC,iDACH,MAAM,EAClD,IAAI,EAAE,sBAAsB,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,YAEhE,iBAAiB,GAChB,CACT,IACI,GACQ,CACpB,CAAA"}
|
|
@@ -1,15 +1,22 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
2
|
import { type IconSource } from "../../primitive/Icon/index.js";
|
|
3
3
|
export type SidebarItem = {
|
|
4
4
|
readonly id: string;
|
|
5
5
|
readonly label: string;
|
|
6
6
|
readonly source?: IconSource;
|
|
7
7
|
readonly trailing?: ReactNode;
|
|
8
|
+
/** Unread or pending count, visible in both the expanded sidebar and the icon rail. */
|
|
9
|
+
readonly badge?: number | string;
|
|
10
|
+
/** Count announcement, e.g. "3 unread conversations". */
|
|
11
|
+
readonly badgeLabel?: string;
|
|
12
|
+
readonly badgeMax?: number;
|
|
8
13
|
readonly isDisabled?: boolean;
|
|
9
14
|
};
|
|
10
15
|
export type SidebarGroup = {
|
|
11
16
|
readonly id: string;
|
|
12
17
|
readonly label?: string;
|
|
18
|
+
/** Settings-type groups stay at the end, preserving their authored order. */
|
|
19
|
+
readonly placement?: "start" | "end";
|
|
13
20
|
readonly items: ReadonlyArray<SidebarItem>;
|
|
14
21
|
};
|
|
15
22
|
export type SidebarProps = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composition/Sidebar/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composition/Sidebar/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAuC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAI3E,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAerE,MAAM,MAAM,WAAW,GAAG;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAA;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;IAC7B,uFAAuF;IACvF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAChC,yDAAyD;IACzD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,6EAA6E;IAC7E,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,KAAK,CAAA;IACpC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,CAAA;CAC7C,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,CAAA;IAC5C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,YAAY,CAAC,EAAE,UAAU,CAAA;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;CAC5D,CAAA;AAOD;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,GAAI,mJAarB,YAAY,gCA0Hd,CAAA"}
|
|
@@ -1,27 +1,15 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
3
|
import { Header, ListBox, Separator } from "@heroui/react";
|
|
4
|
+
import { useContext, useId, useRef, useState } from "react";
|
|
5
|
+
import { OverlayTriggerStateContext } from "react-aria-components/Dialog";
|
|
6
|
+
import { AnchoredTooltip } from "../../branch/Tooltip/index.js";
|
|
4
7
|
import { SurfaceNesting } from "../../surfaceContext.js";
|
|
5
8
|
import { Icon } from "../../primitive/Icon/index.js";
|
|
6
|
-
import { IconButton } from "../../primitive/IconButton/index.js";
|
|
9
|
+
import { IconButton, iconButtonBadgeText } from "../../primitive/IconButton/index.js";
|
|
7
10
|
import { sidebarClassName, sidebarFooterClassName, sidebarHeaderClassName, sidebarItemClassName, sidebarItemLabelClassName, sidebarItemTrailingClassName, sidebarListClassName, sidebarSectionClassName, sidebarSectionLabelClassName, sidebarToggleClassName, } from "./classNames.js";
|
|
8
|
-
/**
|
|
9
|
-
* Sections and items share ONE key namespace inside the collection.
|
|
10
|
-
*
|
|
11
|
-
* A caller naturally writes `{ id: "home", items: [{ id: "home" }] }` - the group that holds the
|
|
12
|
-
* home destination, named after it. That duplicate key made the collection unresolvable: every
|
|
13
|
-
* section after the first was dropped from the render, and a re-render (collapsing the rail) sent
|
|
14
|
-
* reconciliation into a loop that never settled, which under Vitest reads as a worker that never
|
|
15
|
-
* reports. Prefixing the section key keeps the caller's vocabulary free: a group id and an item id
|
|
16
|
-
* may be the same word, because only the item id is ever a real collection key.
|
|
17
|
-
*/
|
|
11
|
+
/** Namespacing section keys lets a group and its destination share an app-owned id. */
|
|
18
12
|
const sectionKey = (id) => `sidebar-section:${id}`;
|
|
19
|
-
const firstKey = (keys) => {
|
|
20
|
-
if (keys === "all")
|
|
21
|
-
return undefined;
|
|
22
|
-
const value = keys.values().next().value;
|
|
23
|
-
return value === undefined ? undefined : String(value);
|
|
24
|
-
};
|
|
25
13
|
/**
|
|
26
14
|
* Shared grouped sidebar renderer; apps own route, permission, copy and persistence policy.
|
|
27
15
|
*
|
|
@@ -30,18 +18,52 @@ const firstKey = (keys) => {
|
|
|
30
18
|
* here depends on a consumer's Tailwind build scanning the package.
|
|
31
19
|
*/
|
|
32
20
|
export const Sidebar = ({ label, groups, selectedKey, presentation = "rail", isCollapsed = false, collapseLabel, expandLabel, toggleSource, header, footer, onAction, onCollapsedChange, }) => {
|
|
21
|
+
const overlayState = useContext(OverlayTriggerStateContext);
|
|
33
22
|
const collapsed = presentation === "rail" && isCollapsed;
|
|
23
|
+
const listId = useId();
|
|
24
|
+
const tooltipId = useId();
|
|
25
|
+
const hoveredItem = useRef(null);
|
|
26
|
+
const focusedItem = useRef(null);
|
|
27
|
+
const [tooltip, setTooltip] = useState(null);
|
|
28
|
+
const orderedGroups = [...groups.filter((group) => group.placement !== "end"), ...groups.filter((group) => group.placement === "end")];
|
|
29
|
+
const updateTooltip = () => {
|
|
30
|
+
const item = hoveredItem.current ?? focusedItem.current;
|
|
31
|
+
setTooltip(item);
|
|
32
|
+
};
|
|
33
|
+
const showTooltip = (target, item, kind) => {
|
|
34
|
+
if (!collapsed)
|
|
35
|
+
return;
|
|
36
|
+
const ref = kind === "hover" ? hoveredItem : focusedItem;
|
|
37
|
+
ref.current = { target, id: item.id, label: item.label };
|
|
38
|
+
updateTooltip();
|
|
39
|
+
};
|
|
40
|
+
const hideTooltip = (kind) => {
|
|
41
|
+
if (kind !== "focus")
|
|
42
|
+
hoveredItem.current = null;
|
|
43
|
+
if (kind !== "hover")
|
|
44
|
+
focusedItem.current = null;
|
|
45
|
+
updateTooltip();
|
|
46
|
+
};
|
|
34
47
|
const toggleLabel = collapsed ? expandLabel : collapseLabel;
|
|
35
48
|
const canToggle = presentation === "rail" && toggleSource !== undefined && toggleLabel !== undefined && onCollapsedChange !== undefined;
|
|
36
|
-
const content = (_jsxs("div", { "data-tier": "composition", "data-component": "Sidebar", "data-grammar-nesting": "surface", "data-presentation": presentation, "data-collapsed": collapsed ? "true" : "false", className: sidebarClassName, "data-contract": ["OVERFLOW-2", presentation === "drawer" ? "MEASURE-2" : "MEASURE-6"].join(" "), children: [canToggle ? (_jsx("div", { className: sidebarToggleClassName, "data-contract": "PADDING-2", children: _jsx(IconButton, { source: toggleSource, label: toggleLabel, isActive: collapsed, onPress: () => onCollapsedChange(!collapsed) }) })) : null, collapsed || header == null ? null : _jsx("div", { className: sidebarHeaderClassName, "data-contract": "PADDING-3", children: header }), _jsx(ListBox, { "aria-label": label, selectionMode: "
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
49
|
+
const content = (_jsxs(_Fragment, { children: [_jsxs("div", { "data-tier": "composition", "data-component": "Sidebar", "data-grammar-nesting": "surface", "data-presentation": presentation, "data-collapsed": collapsed ? "true" : "false", className: sidebarClassName, "data-contract": ["FE-APP-SHELL-6", "OVERFLOW-2", presentation === "drawer" ? "MEASURE-2" : "MEASURE-6"].join(" "), children: [canToggle ? (_jsx("div", { className: sidebarToggleClassName, "data-contract": "PADDING-2", children: _jsx(IconButton, { source: toggleSource, label: toggleLabel, size: "control", isActive: collapsed, "aria-expanded": !collapsed, "aria-controls": listId, onPress: () => { hideTooltip(); onCollapsedChange(!collapsed); } }) })) : null, collapsed || header == null ? null : _jsx("div", { className: sidebarHeaderClassName, "data-contract": "PADDING-3", children: header }), _jsx(ListBox, { id: listId, "aria-label": label, selectionMode: "none", onAction: (key) => {
|
|
50
|
+
hideTooltip();
|
|
51
|
+
onAction?.(String(key));
|
|
52
|
+
if (presentation === "drawer")
|
|
53
|
+
overlayState?.close();
|
|
54
|
+
}, className: sidebarListClassName, "data-contract": collapsed ? "GAP-1 PADDING-2" : "GAP-1 PADDING-3", children: orderedGroups.flatMap((group, groupIndex) => [
|
|
55
|
+
// HeroUI divides adjacent sections with its own `Separator`, so a group never forgets one.
|
|
56
|
+
...(groupIndex === 0 ? [] : [_jsx(Separator, {}, `separator-${group.id}`)]),
|
|
57
|
+
_jsxs(ListBox.Section, { id: sectionKey(group.id), className: sidebarSectionClassName, "data-grammar-sidebar-group-placement": group.placement ?? "start", "data-grammar-sidebar-end-start": group.placement === "end" && orderedGroups[groupIndex - 1]?.placement !== "end" ? "true" : undefined, "data-contract": "GAP-1", children: [group.label === undefined ? null : (_jsx(Header, { className: sidebarSectionLabelClassName, ...(collapsed ? {} : { "data-contract": "PADDING-2 PADDING-1 PADDING-3 FONT-1 TONE-2" }), children: group.label })), group.items.map((item) => {
|
|
58
|
+
const badgeText = iconButtonBadgeText(item.badge, item.badgeMax);
|
|
59
|
+
const accessibleLabel = badgeText === null ? item.label : `${item.label}, ${item.badgeLabel ?? badgeText}`;
|
|
60
|
+
return (_jsxs(ListBox.Item, { id: item.id, textValue: item.label, className: sidebarItemClassName, "data-grammar-current": selectedKey === item.id ? "true" : "false", "aria-current": selectedKey === item.id ? "page" : undefined, "data-contract": collapsed ? "TONE-1 SURFACE-4" : "GAP-3 TONE-1 SURFACE-4", ...(collapsed || badgeText !== null ? { "aria-label": accessibleLabel } : {}), render: (props) => {
|
|
61
|
+
const describedBy = [props["aria-describedby"], collapsed && tooltip?.id === item.id ? tooltipId : undefined].filter(Boolean).join(" ") || undefined;
|
|
62
|
+
return "href" in props ? _jsx("a", { ...props, "aria-describedby": describedBy }) : _jsx("div", { ...props, "aria-describedby": describedBy });
|
|
63
|
+
}, onHoverStart: (event) => showTooltip(event.target, item, "hover"), onHoverEnd: () => hideTooltip("hover"), onFocus: (event) => showTooltip(event.target, item, "focus"), onBlur: () => hideTooltip("focus"), onKeyDown: (event) => { if (event.key === "Escape")
|
|
64
|
+
hideTooltip(); }, ...(item.isDisabled === undefined ? {} : { isDisabled: item.isDisabled }), children: [item.source === undefined ? null : _jsx(Icon, { source: item.source, usage: "leading" }), collapsed ? null : _jsx("span", { className: sidebarItemLabelClassName, "data-contract": "FLOW-4 FONT-2", children: item.label }), badgeText === null ? null : _jsx("span", { "aria-hidden": true, className: "starci-core-icon-button-badge starci-core-sidebar-item-badge", "data-grammar-sidebar-badge": "true", children: badgeText }), collapsed || item.trailing == null ? null : _jsx("span", { className: sidebarItemTrailingClassName, children: item.trailing })] }, item.id));
|
|
65
|
+
})] }, group.id),
|
|
66
|
+
]) }), collapsed || footer == null ? null : _jsx("div", { className: sidebarFooterClassName, "data-contract": "PADDING-3 PADDING-0", children: footer })] }), _jsx(AnchoredTooltip, { id: tooltipId, target: tooltip?.target ?? null, content: tooltip?.label, isOpen: collapsed && tooltip !== null })] }));
|
|
45
67
|
return _jsx(SurfaceNesting, { children: content });
|
|
46
68
|
};
|
|
47
69
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composition/Sidebar/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composition/Sidebar/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composition/TopBar/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composition/TopBar/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAIhE,MAAM,MAAM,UAAU,GAAG;IACrB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAA;IAChD,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,uFAAuF;IACvF,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAA;CAC7C,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG;IACvF,qEAAqE;IACrE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAA;IACzB,oFAAoF;IACpF,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,CAAA;IAC/B,0FAA0F;IAC1F,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;IAC5B,+BAA+B;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;CAC1C,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,MAAM,GAAI,2EAAsF,WAAW,gCA+BvH,CAAA"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { Button as HeroButton } from "@heroui/react";
|
|
4
4
|
import { navigationClassName } from "../../navigationClassNames.js";
|
|
5
|
+
import { SurfaceNesting } from "../../surfaceContext.js";
|
|
5
6
|
/**
|
|
6
7
|
* The application bar (`<header>`, the banner landmark at page level): brand, inline navigation,
|
|
7
8
|
* actions and a menu trigger that replaces the inline navigation below 48rem. The trigger reports
|
|
@@ -11,5 +12,5 @@ import { navigationClassName } from "../../navigationClassNames.js";
|
|
|
11
12
|
* `header` slot, the shell yields (its wrapper becomes a plain `div`) so the banner is never nested.
|
|
12
13
|
* Contract: menu trigger A11Y-2 STATE-7 (named glyph button, app-owned aria-expanded).
|
|
13
14
|
*/
|
|
14
|
-
export const TopBar = ({ brand, navigation, actions, menu, position = "sticky", className, ...headerProps }) => (_jsxs("header", { ...headerProps, className: navigationClassName("starci-core-top-bar", className), "data-component": "TopBar", "data-tier": "composition", "data-grammar-top-bar-position": position, "data-grammar-top-bar-menu": menu === undefined ? "none" : menu.visibility ?? "compact", children: [menu === undefined ? null : (_jsx(HeroButton, { "aria-expanded": menu.isOpen, "aria-label": menu.isOpen ? menu.closeLabel : menu.openLabel, className: "starci-core-top-bar-menu-trigger", "data-contract": "A11Y-2 STATE-7", "data-grammar-top-bar-trigger": "true", isIconOnly: true, onPress: () => menu.onOpenChange(!menu.isOpen), type: "button", variant: "tertiary", ...(menu.controls === undefined ? {} : { "aria-controls": menu.controls }), children: menu.icon })), _jsx("div", { className: "starci-core-top-bar-brand", "data-grammar-top-bar-brand": "true", children: brand }), navigation === undefined ? null : _jsx("div", { className: "starci-core-top-bar-navigation", "data-grammar-top-bar-navigation": "true", children: navigation }), actions === undefined ? null : _jsx("div", { className: "starci-core-top-bar-actions", "data-grammar-top-bar-actions": "true", children: actions })] }));
|
|
15
|
+
export const TopBar = ({ brand, navigation, actions, menu, position = "sticky", className, ...headerProps }) => (_jsx(SurfaceNesting, { children: _jsxs("header", { ...headerProps, className: navigationClassName("starci-core-top-bar", className), "data-component": "TopBar", "data-tier": "composition", "data-grammar-top-bar-position": position, "data-grammar-top-bar-menu": menu === undefined ? "none" : menu.visibility ?? "compact", children: [menu === undefined ? null : (_jsx(HeroButton, { "aria-expanded": menu.isOpen, "aria-label": menu.isOpen ? menu.closeLabel : menu.openLabel, className: "starci-core-top-bar-menu-trigger", "data-contract": "A11Y-2 STATE-7", "data-grammar-top-bar-trigger": "true", isIconOnly: true, onPress: () => menu.onOpenChange(!menu.isOpen), type: "button", variant: "tertiary", ...(menu.controls === undefined ? {} : { "aria-controls": menu.controls }), children: menu.icon })), _jsx("div", { className: "starci-core-top-bar-brand", "data-grammar-top-bar-brand": "true", children: brand }), navigation === undefined ? null : _jsx("div", { className: "starci-core-top-bar-navigation", "data-grammar-top-bar-navigation": "true", children: navigation }), actions === undefined ? null : _jsx("div", { className: "starci-core-top-bar-actions", "data-grammar-top-bar-actions": "true", children: actions })] }) }));
|
|
15
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composition/TopBar/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,eAAe,CAAA;AAEpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composition/TopBar/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,eAAe,CAAA;AAEpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AA0BxD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ,EAAE,SAAS,EAAE,GAAG,WAAW,EAAe,EAAE,EAAE,CAAC,CACzH,KAAC,cAAc,cACf,qBACQ,WAAW,EACf,SAAS,EAAE,mBAAmB,CAAC,qBAAqB,EAAE,SAAS,CAAC,oBACjD,QAAQ,eACb,aAAa,mCACQ,QAAQ,+BACZ,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,SAAS,aAEpF,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACzB,KAAC,UAAU,qBACQ,IAAI,CAAC,MAAM,gBACd,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAC1D,SAAS,EAAC,kCAAkC,mBAC9B,gBAAgB,kCACD,MAAM,EACnC,UAAU,QACV,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAC9C,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,UAAU,KACd,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,YAE1E,IAAI,CAAC,IAAI,GACD,CAChB,EACD,cAAK,SAAS,EAAC,2BAA2B,gCAA4B,MAAM,YAAE,KAAK,GAAO,EACzF,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAK,SAAS,EAAC,gCAAgC,qCAAiC,MAAM,YAAE,UAAU,GAAO,EAC3I,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAK,SAAS,EAAC,6BAA6B,kCAA8B,MAAM,YAAE,OAAO,GAAO,IAC3H,GACQ,CACpB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composition/WorkspaceShell/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composition/WorkspaceShell/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { cn } from "@heroui/react";
|
|
3
3
|
import { isValidElement } from "react";
|
|
4
|
+
import { SurfaceNesting } from "../../surfaceContext.js";
|
|
4
5
|
import { Drawer } from "../../branch/Drawer/index.js";
|
|
5
6
|
import { Rail } from "../../branch/Rail/index.js";
|
|
6
7
|
import { IconButton } from "../../primitive/IconButton/index.js";
|
|
@@ -8,7 +9,7 @@ import { NavigationFeatureNav } from "../NavigationFeatureNav/index.js";
|
|
|
8
9
|
import { TopBar } from "../TopBar/index.js";
|
|
9
10
|
import { workspaceShellClassName, workspaceShellCompactHeaderClassName, workspaceShellCompactNavigationClassName, workspaceShellFloatingLayerClassName, workspaceShellHeaderClassName, workspaceShellLayoutClassName, workspaceShellLeadingRuleClassName, workspaceShellNavigationClassName, workspaceShellOpenerClassName, workspaceShellPrimaryClassName, workspaceShellRailClassName, } from "./classNames.js";
|
|
10
11
|
/** The actual Drawer trigger owns activation, expanded state and focus restoration without a caller callback. */
|
|
11
|
-
const WorkspaceNavigationDrawer = ({ openLabel, source, content, rowTitle, ...drawerProps }) => (_jsxs("div", { className: workspaceShellOpenerClassName, "data-grammar-workspace-opener": "true", children: [_jsx(Drawer, { ...drawerProps, placement: "left", trigger: _jsx(IconButton, { label: openLabel, source: source, variant: "tertiary" }), children: content }), rowTitle === undefined ? null : _jsx("span", { className: "starci-core-workspace-shell-opener-title", "data-grammar-workspace-opener-title": "true", children: rowTitle })] }));
|
|
12
|
+
const WorkspaceNavigationDrawer = ({ openLabel, source, content, rowTitle, ...drawerProps }) => (_jsxs("div", { className: workspaceShellOpenerClassName, "data-grammar-workspace-opener": "true", children: [_jsx(Drawer, { ...drawerProps, placement: "left", trigger: _jsx(IconButton, { label: openLabel, source: source, variant: "tertiary", size: "control" }), children: content }), rowTitle === undefined ? null : _jsx("span", { className: "starci-core-workspace-shell-opener-title", "data-grammar-workspace-opener-title": "true", children: rowTitle })] }));
|
|
12
13
|
/** Grammar bars that own the banner themselves; hosting one flips the default to `slot`. */
|
|
13
14
|
const BANNER_OWNERS = new Set([TopBar, NavigationFeatureNav]);
|
|
14
15
|
/** Resolve the landmark rule: an explicit prop wins, otherwise a Grammar app bar in the slot owns it. */
|
|
@@ -17,6 +18,7 @@ export const resolveWorkspaceHeaderLandmark = (header, headerLandmark) => header
|
|
|
17
18
|
export const WorkspaceShell = (props) => {
|
|
18
19
|
const hasHeader = props.header != null && typeof props.header !== "boolean";
|
|
19
20
|
const drawerSpec = props.navigation === undefined ? undefined : props.navigationDrawer;
|
|
21
|
+
const hasSlotOpener = props.viewport === "fixed" && drawerSpec === undefined;
|
|
20
22
|
const hasCompactHeader = (props.compactHeader != null && typeof props.compactHeader !== "boolean") || drawerSpec !== undefined;
|
|
21
23
|
const hasNavigation = props.navigation !== undefined;
|
|
22
24
|
const hasRail = props.rail !== undefined;
|
|
@@ -27,8 +29,8 @@ export const WorkspaceShell = (props) => {
|
|
|
27
29
|
const primary = mainLandmark === "caller" ? _jsx("div", { className: workspaceShellPrimaryClassName, "data-contract": "GAP-5", "data-grammar-workspace-primary": "true", "data-grammar-main-landmark": "caller", id: props.primaryId, tabIndex: -1, children: props.primary }) : _jsx("main", { "aria-label": props.primaryLabel, "aria-labelledby": props.primaryLabelledBy, className: workspaceShellPrimaryClassName, "data-contract": "GAP-5", "data-grammar-workspace-primary": "true", "data-grammar-main-landmark": "shell", id: props.primaryId, tabIndex: -1, children: props.primary });
|
|
28
30
|
const rail = hasRail ? _jsx("div", { className: workspaceShellRailClassName, "data-grammar-workspace-rail-region": "true", children: _jsx(Rail, { inset: props.railInset ?? "none", isLabelHidden: props.isRailLabelHidden ?? true, label: props.railLabel, mode: props.railMode ?? "flow", width: props.railWidth ?? "standard", children: props.rail }) }) : null;
|
|
29
31
|
const leadingRule = railPosition === "leading" ? _jsx("div", { "aria-hidden": "true", className: workspaceShellLeadingRuleClassName, "data-contract": "BOUNDARY-4", "data-grammar-workspace-leading-rule": "true" }) : null;
|
|
30
|
-
return _jsxs("div", { className: cn(workspaceShellClassName, props.className), "data-grammar-workspace-viewport": props.viewport ?? "flow", "data-grammar-workspace-floating": hasFloatingLayer ? "present" : "absent", "data-grammar-workspace-shell": "true", "data-component": "WorkspaceShell", "data-tier": "composition", children: [hasHeader ? (resolveWorkspaceHeaderLandmark(props.header, props.headerLandmark) === "slot"
|
|
31
|
-
? _jsx("div", { className: workspaceShellHeaderClassName, "data-contract": "MARGIN-5", "data-grammar-workspace-header": "true", "data-grammar-workspace-header-landmark": "slot", children: props.header })
|
|
32
|
-
: _jsx("header", { className: workspaceShellHeaderClassName, "data-contract": "MARGIN-5", "data-grammar-workspace-header": "true", "data-grammar-workspace-header-landmark": "shell", children: props.header })) : null, hasCompactHeader ? _jsxs("div", { className: workspaceShellCompactHeaderClassName, "data-grammar-workspace-compact-header": "true", children: [props.compactHeader, drawerSpec === undefined ? null : _jsx(WorkspaceNavigationDrawer, { ...drawerSpec })] }) : null, _jsxs("div", { className: workspaceShellLayoutClassName, "data-contract": "GAP-5 MEASURE-1", "data-grammar-workspace-align": props.align ?? "start", "data-grammar-workspace-navigation": hasNavigation ? "present" : "absent", "data-grammar-workspace-navigation-track": hasNavigation ? props.navigationTrack ?? "fixed" : undefined, "data-grammar-workspace-navigation-visibility": hasNavigation ? props.navigationVisibility ?? "always" : undefined, "data-grammar-workspace-rail": hasRail ? "present" : "absent", "data-grammar-workspace-rail-position": railPosition, "data-grammar-workspace-rail-width": hasRail ? props.railWidth ?? "standard" : undefined, children: [hasNavigation ? _jsx("nav", { "aria-label": props.navigationLabel, className: workspaceShellNavigationClassName, "data-grammar-workspace-navigation-region": "true", children: props.navigation }) : null, railPosition === "leading" ? rail : null, leadingRule, primary, railPosition === "trailing" ? rail : null] }), hasCompactNavigation ? _jsx("nav", { "aria-label": props.compactNavigationLabel, className: workspaceShellCompactNavigationClassName, "data-contract": "BOUNDARY-1", "data-grammar-workspace-compact-navigation": "true", "data-grammar-bottom-chrome": "true", children: props.compactNavigation }) : null, hasFloatingLayer ? _jsx("div", { className: workspaceShellFloatingLayerClassName, "data-contract": "OVERFLOW-4", "data-grammar-workspace-floating-layer": "true", children: props.floatingLayer }) : null] });
|
|
32
|
+
return _jsxs("div", { className: cn(workspaceShellClassName, props.className), "data-contract": "FE-APP-SHELL-1", "data-grammar-workspace-viewport": props.viewport ?? "flow", "data-grammar-workspace-floating": hasFloatingLayer ? "present" : "absent", "data-grammar-workspace-shell": "true", "data-component": "WorkspaceShell", "data-tier": "composition", children: [hasHeader ? (resolveWorkspaceHeaderLandmark(props.header, props.headerLandmark) === "slot"
|
|
33
|
+
? _jsx("div", { className: workspaceShellHeaderClassName, "data-contract": "MARGIN-5", "data-grammar-workspace-header": "true", "data-grammar-workspace-header-landmark": "slot", children: _jsx(SurfaceNesting, { children: props.header }) })
|
|
34
|
+
: _jsx("header", { className: workspaceShellHeaderClassName, "data-contract": "MARGIN-5", "data-grammar-workspace-header": "true", "data-grammar-workspace-header-landmark": "shell", children: _jsx(SurfaceNesting, { children: props.header }) })) : null, hasCompactHeader ? _jsxs("div", { className: cn(workspaceShellCompactHeaderClassName, hasSlotOpener ? workspaceShellOpenerClassName : undefined), "data-grammar-workspace-compact-header": "true", "data-grammar-workspace-opener": hasSlotOpener ? "true" : undefined, children: [props.compactHeader, drawerSpec === undefined ? null : _jsx(WorkspaceNavigationDrawer, { ...drawerSpec })] }) : null, _jsxs("div", { className: workspaceShellLayoutClassName, "data-contract": "GAP-5 MEASURE-1", "data-grammar-workspace-align": props.align ?? "start", "data-grammar-workspace-navigation": hasNavigation ? "present" : "absent", "data-grammar-workspace-navigation-track": hasNavigation ? props.navigationTrack ?? (props.viewport === "fixed" ? "intrinsic" : "fixed") : undefined, "data-grammar-workspace-navigation-visibility": hasNavigation ? props.navigationVisibility ?? (drawerSpec !== undefined || (hasSlotOpener && hasCompactHeader) ? "wide" : "always") : undefined, "data-grammar-workspace-rail": hasRail ? "present" : "absent", "data-grammar-workspace-rail-position": railPosition, "data-grammar-workspace-rail-width": hasRail ? props.railWidth ?? "standard" : undefined, children: [hasNavigation ? _jsx("nav", { "aria-label": props.navigationLabel, className: workspaceShellNavigationClassName, "data-grammar-workspace-navigation-region": "true", children: props.navigation }) : null, railPosition === "leading" ? rail : null, leadingRule, primary, railPosition === "trailing" ? rail : null] }), hasCompactNavigation ? _jsx("nav", { "aria-label": props.compactNavigationLabel, className: workspaceShellCompactNavigationClassName, "data-contract": "BOUNDARY-1", "data-grammar-workspace-compact-navigation": "true", "data-grammar-bottom-chrome": "true", children: props.compactNavigation }) : null, hasFloatingLayer ? _jsx("div", { className: workspaceShellFloatingLayerClassName, "data-contract": "OVERFLOW-4", "data-grammar-workspace-floating-layer": "true", children: props.floatingLayer }) : null] });
|
|
33
35
|
};
|
|
34
36
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composition/WorkspaceShell/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAA;AAClC,OAAO,EAAE,cAAc,EAAkB,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composition/WorkspaceShell/index.tsx"],"names":[],"mappings":"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"}
|
package/dist/core/dna.d.ts
CHANGED
|
@@ -82,6 +82,10 @@ export declare const STARCI_CORE_DNA: Readonly<{
|
|
|
82
82
|
}>;
|
|
83
83
|
readonly elevation: Readonly<{
|
|
84
84
|
surface: "0 8px 28px oklch(21.03% 0.0059 354.13 / 0.07)";
|
|
85
|
+
surfaceLayers: Readonly<{
|
|
86
|
+
top: "shadow without border";
|
|
87
|
+
nested: "border without shadow";
|
|
88
|
+
}>;
|
|
85
89
|
}>;
|
|
86
90
|
readonly motion: Readonly<{
|
|
87
91
|
duration: "180ms";
|
package/dist/core/dna.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dna.d.ts","sourceRoot":"","sources":["../../src/core/dna.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"dna.d.ts","sourceRoot":"","sources":["../../src/core/dna.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8EjB,CAAA;AAEX,kFAAkF;AAClF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;EAe3B,CAAA;AAEX,MAAM,MAAM,qBAAqB,GAAG,MAAM,OAAO,yBAAyB,CAAA;AAC1E,MAAM,MAAM,sBAAsB,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,qBAAqB,CAAC,CAAA;AAE9F,mFAAmF;AACnF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmCzB,CAAA;AAEX;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,4BAA4B;;;;;;EAM9B,CAAA;AAEX,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,4BAA4B,CAAC,CAAC,MAAM,OAAO,4BAA4B,CAAC,CAAA;AAEtH,MAAM,MAAM,aAAa,GAAG,OAAO,eAAe,CAAA;AAClD,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,OAAO,uBAAuB,CAAC,CAAA;AAExG,sFAAsF;AACtF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmCmB,CAAA;AAE1D,mFAAmF;AACnF,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;EAmBuB,CAAA;AAEnE,MAAM,MAAM,uBAAuB,GAAG,OAAO,0BAA0B,CAAA"}
|
package/dist/core/dna.js
CHANGED
|
@@ -82,6 +82,10 @@ export const STARCI_CORE_DNA = Object.freeze({
|
|
|
82
82
|
}),
|
|
83
83
|
elevation: Object.freeze({
|
|
84
84
|
surface: "0 8px 28px oklch(21.03% 0.0059 354.13 / 0.07)",
|
|
85
|
+
surfaceLayers: Object.freeze({
|
|
86
|
+
top: "shadow without border",
|
|
87
|
+
nested: "border without shadow",
|
|
88
|
+
}),
|
|
85
89
|
}),
|
|
86
90
|
motion: Object.freeze({
|
|
87
91
|
duration: "180ms",
|
package/dist/core/dna.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dna.js","sourceRoot":"","sources":["../../src/core/dna.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC;IACzC,EAAE,EAAE,aAAa;IACjB,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;QAClB,KAAK,EAAE,SAAS;QAChB,YAAY,EAAE,EAAE;QAChB,eAAe,EAAE,KAAK;KACzB,CAAC;IACF,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;QACjB,MAAM,EAAE,SAAS;QACjB,gBAAgB,EAAE,iBAAiB;QACnC,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;YACjB,MAAM,EAAE,6BAA6B;YACrC,OAAO,EAAE,2BAA2B;YACpC,gBAAgB,EAAE,6BAA6B;YAC/C,eAAe,EAAE,6BAA6B;YAC9C,UAAU,EAAE,6BAA6B;YACzC,KAAK,EAAE,yBAAyB;YAChC,MAAM,EAAE,0BAA0B;YAClC,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE,6BAA6B;YACtC,iBAAiB,EAAE,6BAA6B;YAChD,OAAO,EAAE,2BAA2B;YACpC,iBAAiB,EAAE,4BAA4B;YAC/C,MAAM,EAAE,sBAAsB;YAC9B,gBAAgB,EAAE,mBAAmB;YACrC,IAAI,EAAE,qBAAqB;YAC3B,cAAc,EAAE,0BAA0B;YAC1C,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,uBAAuB;SACtC,CAAC;QACF,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;YAChB,MAAM,EAAE,0BAA0B;YAClC,OAAO,EAAE,4BAA4B;YACrC,gBAAgB,EAAE,4BAA4B;YAC9C,eAAe,EAAE,6BAA6B;YAC9C,UAAU,EAAE,6BAA6B;YACzC,KAAK,EAAE,2BAA2B;YAClC,MAAM,EAAE,0BAA0B;YAClC,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE,6BAA6B;YACtC,iBAAiB,EAAE,6BAA6B;YAChD,OAAO,EAAE,4BAA4B;YACrC,iBAAiB,EAAE,4BAA4B;YAC/C,MAAM,EAAE,uBAAuB;YAC/B,gBAAgB,EAAE,4BAA4B;YAC9C,IAAI,EAAE,qBAAqB;YAC3B,cAAc,EAAE,0BAA0B;YAC1C,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,qBAAqB;SACpC,CAAC;KACL,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC;QACpB,WAAW,EAAE,OAAO;QACpB,cAAc,EAAE,MAAM;QACtB,aAAa,EAAE,MAAM;QACrB,aAAa,EAAE,SAAS;QACxB,UAAU,EAAE,OAAO;KACtB,CAAC;IACF,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;QAClB,SAAS,EAAE,QAAQ;QACnB,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,MAAM;QAClB,SAAS,EAAE,QAAQ;QACnB,SAAS,EAAE,wBAAwB;KACtC,CAAC;IACF,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,OAAO,EAAE,+CAA+C;
|
|
1
|
+
{"version":3,"file":"dna.js","sourceRoot":"","sources":["../../src/core/dna.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import type { ReactNode } from "react";
|
|
|
5
5
|
* (HeroUI's danger Alert carries a `danger` Button "Retry"); they paint the vendor `--danger` tokens.
|
|
6
6
|
*/
|
|
7
7
|
export type ButtonVariant = "primary" | "secondary" | "tertiary" | "outline" | "ghost" | "danger" | "danger-soft";
|
|
8
|
-
export type ButtonSize = "sm" | "md" | "lg";
|
|
8
|
+
export type ButtonSize = "sm" | "md" | "lg" | "control";
|
|
9
9
|
export type ButtonType = "button" | "submit" | "reset";
|
|
10
10
|
export type ButtonWidth = "content" | "fill";
|
|
11
11
|
type ButtonBase = {
|
|
@@ -34,7 +34,8 @@ type ButtonBase = {
|
|
|
34
34
|
};
|
|
35
35
|
/**
|
|
36
36
|
* A real browser destination wearing the button appearance. It renders an anchor, so the platform
|
|
37
|
-
* supplies middle-click, copy-link, and the `link` role. Pending or disabled
|
|
37
|
+
* supplies middle-click, copy-link, and the `link` role. Pending or disabled uses the vendor's
|
|
38
|
+
* unavailable link state and withholds the href.
|
|
38
39
|
*/
|
|
39
40
|
type DestinationButton = {
|
|
40
41
|
readonly "aria-pressed"?: never;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Button/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,aAAa,CAAA;AACjH,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Button/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,aAAa,CAAA;AACjH,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAA;AACvD,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;AACtD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,MAAM,CAAA;AAE5C,KAAK,UAAU,GAAG;IACd,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAA;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;IAC1B,oGAAoG;IACpG,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,CAAA;IACjC,0DAA0D;IAC1D,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,CAAA;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,qFAAqF;IACrF,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,wFAAwF;IACxF,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAA;CAC/B,CAAA;AAED;;;;GAIG;AACH,KAAK,iBAAiB,GAAG;IACrB,QAAQ,CAAC,cAAc,CAAC,EAAE,KAAK,CAAA;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;IACpC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IACpC,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAA;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAA;CACxB,CAAA;AAED,4FAA4F;AAC5F,KAAK,aAAa,GAAG;IACjB,8FAA8F;IAC9F,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAA;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,CAAA;IACpB,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAA;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAA;CAC5B,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,CAAC,iBAAiB,GAAG,aAAa,CAAC,CAAA;AAiB1E,0FAA0F;AAC1F,eAAO,MAAM,MAAM,GAAI,OAAO,WAAW,gCAwExC,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Button as HeroButton, Spinner as HeroSpinner, buttonVariants, skeletonVariants } from "@heroui/react";
|
|
2
|
+
import { Button as HeroButton, Link as HeroLink, Spinner as HeroSpinner, buttonVariants, skeletonVariants } from "@heroui/react";
|
|
3
3
|
const VARIANTS = {
|
|
4
4
|
primary: "primary",
|
|
5
5
|
secondary: "secondary",
|
|
@@ -9,7 +9,7 @@ const VARIANTS = {
|
|
|
9
9
|
danger: "danger",
|
|
10
10
|
"danger-soft": "danger-soft",
|
|
11
11
|
};
|
|
12
|
-
const SIZES = { sm: "sm", md: "md", lg: "lg" };
|
|
12
|
+
const SIZES = { sm: "sm", md: "md", lg: "lg", control: "md" };
|
|
13
13
|
const SKELETON_CLASS_NAME = skeletonVariants({ animationType: "shimmer" }).base({
|
|
14
14
|
className: "select-none text-transparent",
|
|
15
15
|
});
|
|
@@ -20,9 +20,9 @@ export const Button = (props) => {
|
|
|
20
20
|
const content = (_jsxs(_Fragment, { children: [isSkeleton ? null : isPending ? _jsx(HeroSpinner, { size: "sm", color: "current", "aria-hidden": "true" }) : startContent, _jsx("span", { "aria-busy": isPending || undefined, children: children }), isPending || isSkeleton ? null : endContent] }));
|
|
21
21
|
if (props.href !== undefined) {
|
|
22
22
|
const { href, target, rel, download, onFollow } = props;
|
|
23
|
-
return (_jsx(
|
|
23
|
+
return (_jsx(HeroLink, { "data-tier": "atom", "data-component": "Button", "data-grammar-control-size": size === "control" ? "control" : undefined, "data-element": unavailable ? "span" : "a", "data-loading": isSkeleton ? "true" : "false", "data-action-pending": isPending ? "true" : "false", isDisabled: unavailable, "aria-busy": isPending || undefined, "aria-hidden": isSkeleton || undefined, "data-width": width, "data-contract": width === "fill" ? "MEASURE-2" : undefined, className: buttonVariants({ variant: VARIANTS[variant], size: SIZES[size], fullWidth: width === "fill", className: isSkeleton ? `starci-core-button ${SKELETON_CLASS_NAME}` : "starci-core-button" }), ...(unavailable ? {} : { href }), ...(target === undefined ? {} : { target }), ...(rel === undefined ? target === "_blank" ? { rel: "noopener noreferrer" } : {} : { rel }), ...(download === undefined ? {} : { download }), ...(onFollow === undefined || unavailable ? {} : { onClick: onFollow }), children: content }));
|
|
24
24
|
}
|
|
25
25
|
const { onPress, type = "button" } = props;
|
|
26
|
-
return (_jsx(HeroButton, { "data-tier": "atom", "data-component": "Button", "data-element": "button", "data-loading": isSkeleton ? "true" : "false", "data-action-pending": isPending ? "true" : "false", type: type, variant: VARIANTS[variant], size: SIZES[size], isDisabled: unavailable, isPending: isPending, "data-width": width, "data-contract": width === "fill" ? "MEASURE-2" : undefined, fullWidth: width === "fill", ...(props["aria-pressed"] === undefined ? {} : { "aria-pressed": props["aria-pressed"] }), className: isSkeleton ? `starci-core-button ${SKELETON_CLASS_NAME}` : "starci-core-button", ...(unavailable || onPress === undefined ? {} : { onPress }), children: content }));
|
|
26
|
+
return (_jsx(HeroButton, { "data-tier": "atom", "data-component": "Button", "data-grammar-control-size": size === "control" ? "control" : undefined, "data-element": "button", "data-loading": isSkeleton ? "true" : "false", "data-action-pending": isPending ? "true" : "false", type: type, variant: VARIANTS[variant], size: SIZES[size], isDisabled: unavailable, isPending: isPending, "data-width": width, "data-contract": width === "fill" ? "MEASURE-2" : undefined, fullWidth: width === "fill", ...(props["aria-pressed"] === undefined ? {} : { "aria-pressed": props["aria-pressed"] }), className: isSkeleton ? `starci-core-button ${SKELETON_CLASS_NAME}` : "starci-core-button", ...(unavailable || onPress === undefined ? {} : { onPress }), children: content }));
|
|
27
27
|
};
|
|
28
28
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Button/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,OAAO,IAAI,WAAW,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Button/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Divider/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Divider/index.tsx"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,cAAc,CAAA;AAE3D,KAAK,eAAe,GAAG;IACnB,+DAA+D;IAC/D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAA;CACjC,CAAA;AAED,KAAK,iBAAiB,GAAG;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAA;IAC1B,2BAA2B;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAA;CACxC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG,iBAAiB,CAAA;AAE9D;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,OAAO,YAAY,gCA4B1C,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Separator } from "@heroui/react";
|
|
2
3
|
import { Text } from "../Text/index.js";
|
|
3
4
|
/**
|
|
4
5
|
* A labelled alternative boundary ("or") with intrinsic separator semantics, or - without a label - the
|
|
@@ -8,10 +9,8 @@ import { Text } from "../Text/index.js";
|
|
|
8
9
|
export const Divider = (props) => {
|
|
9
10
|
if (props.label === undefined) {
|
|
10
11
|
const semantics = props.semantics ?? "separator";
|
|
11
|
-
return (_jsx(
|
|
12
|
-
? { role: "separator", "aria-orientation": "horizontal" }
|
|
13
|
-
: { role: "presentation", "aria-hidden": true }) }));
|
|
12
|
+
return (_jsx(Separator, { "data-tier": "atom", "data-component": "Divider", "data-grammar-divider": "bare", "data-grammar-divider-semantics": semantics, "data-contract": "BOUNDARY-1", className: "starci-core-divider-bare", ...(semantics === "presentation" ? { "aria-hidden": true } : {}) }));
|
|
14
13
|
}
|
|
15
|
-
return (_jsxs("div", { "data-tier": "atom", "data-component": "Divider", "data-grammar-divider": "labelled",
|
|
14
|
+
return (_jsxs("div", { "data-tier": "atom", "data-component": "Divider", "data-grammar-divider": "labelled", "data-contract": "GAP-3", className: "starci-core-divider", children: [_jsx(Separator, { "aria-label": props.label, "data-contract": "BOUNDARY-5", className: "starci-core-divider-rule" }), _jsx("span", { "aria-hidden": "true", children: _jsx(Text, { as: "span", size: "sm", tone: "muted", children: props.label }) }), _jsx(Separator, { "aria-hidden": "true", "data-contract": "BOUNDARY-5", className: "starci-core-divider-rule" })] }));
|
|
16
15
|
};
|
|
17
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Divider/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAuBvC;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAmB,EAAE,EAAE;IAC3C,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,WAAW,CAAA;QAChD,OAAO,CACH,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Divider/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAuBvC;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAmB,EAAE,EAAE;IAC3C,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,WAAW,CAAA;QAChD,OAAO,CACH,KAAC,SAAS,iBACI,MAAM,oBACD,SAAS,0BACH,MAAM,oCACK,SAAS,mBAC3B,YAAY,EAC1B,SAAS,EAAC,0BAA0B,KAChC,CAAC,SAAS,KAAK,cAAc,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GACnE,CACL,CAAA;IACL,CAAC;IACD,OAAO,CACH,4BACc,MAAM,oBACD,SAAS,0BACH,UAAU,mBACjB,OAAO,EACrB,SAAS,EAAC,qBAAqB,aAE/B,KAAC,SAAS,kBAAa,KAAK,CAAC,KAAK,mBAAgB,YAAY,EAAC,SAAS,EAAC,0BAA0B,GAAG,EACtG,8BAAkB,MAAM,YAAC,KAAC,IAAI,IAAC,EAAE,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,YAAE,KAAK,CAAC,KAAK,GAAQ,GAAO,EAC3F,KAAC,SAAS,mBAAa,MAAM,mBAAe,YAAY,EAAC,SAAS,EAAC,0BAA0B,GAAG,IAC9F,CACT,CAAA;AACL,CAAC,CAAA"}
|