@wallarm-org/design-system 0.47.0-rc-feature-shell.1 → 0.48.0-rc-feature-shell.1

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.
@@ -8,7 +8,7 @@ const AppShellRemote = ({ ref, className, children, ...props })=>{
8
8
  ref: ref,
9
9
  "data-slot": "app-shell-remote",
10
10
  "data-testid": testId,
11
- className: cn('[grid-area:remote] overflow-auto overscroll-none rounded-tl-12 border border-border-primary-light bg-bg-page-bg', className),
11
+ className: cn('[grid-area:remote] relative overflow-auto overscroll-none rounded-tl-12 border border-border-primary-light bg-bg-page-bg', className),
12
12
  children: children
13
13
  });
14
14
  };
@@ -1,7 +1,9 @@
1
- import type { FC } from 'react';
2
- import type { NavConfig } from '../../ProductNav';
1
+ import { type NavConfig } from '../../ProductNav';
2
+ import { type Product } from './_storyLib';
3
3
  export interface ConfigRemoteProps {
4
4
  config: NavConfig;
5
5
  basePath?: string;
6
6
  }
7
- export declare const ConfigRemote: FC<ConfigRemoteProps>;
7
+ export declare const RemoteForProduct: ({ product }: {
8
+ product: Product;
9
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -1,6 +1,10 @@
1
1
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
2
- import { ProductNav, ProductNavBreadcrumbs, ProductNavPanel, useProductNavContext } from "../../ProductNav/index.js";
2
+ import { useEffect, useState } from "react";
3
+ import { NavPanel, NavPanelHeader } from "../../NavPanel/index.js";
4
+ import { NavPanelSkeleton, ProductNav, ProductNavBreadcrumbs, ProductNavPanel, useProductNavContext } from "../../ProductNav/index.js";
3
5
  import { RemoteShell, RemoteShellBreadcrumb, RemoteShellContent, RemoteShellPanel } from "../../RemoteShell/index.js";
6
+ import { HomeContent } from "./_storyHomeContent.js";
7
+ import { PRODUCT_CONFIGS } from "./_storyLib.js";
4
8
  const PageContent = ()=>{
5
9
  const { config, breadcrumbSegments } = useProductNavContext();
6
10
  const lastSegment = breadcrumbSegments[breadcrumbSegments.length - 1];
@@ -24,7 +28,35 @@ const PageContent = ()=>{
24
28
  ]
25
29
  });
26
30
  };
27
- const ConfigRemote = ({ config, basePath })=>/*#__PURE__*/ jsx(ProductNav, {
31
+ const ConfigRemote = ({ config, basePath })=>{
32
+ const [loading, setLoading] = useState(true);
33
+ useEffect(()=>{
34
+ setLoading(true);
35
+ const timer = setTimeout(()=>{
36
+ setLoading(false);
37
+ }, 2000);
38
+ return ()=>clearTimeout(timer);
39
+ }, [
40
+ config.productLabel
41
+ ]);
42
+ if (loading) return /*#__PURE__*/ jsxs(RemoteShell, {
43
+ children: [
44
+ /*#__PURE__*/ jsx(RemoteShellPanel, {
45
+ children: /*#__PURE__*/ jsxs(NavPanel, {
46
+ children: [
47
+ /*#__PURE__*/ jsx(NavPanelHeader, {
48
+ children: config.productLabel
49
+ }),
50
+ /*#__PURE__*/ jsx(NavPanelSkeleton, {
51
+ count: 6
52
+ })
53
+ ]
54
+ })
55
+ }),
56
+ /*#__PURE__*/ jsx(RemoteShellContent, {})
57
+ ]
58
+ });
59
+ return /*#__PURE__*/ jsx(ProductNav, {
28
60
  config: config,
29
61
  basePath: basePath,
30
62
  children: /*#__PURE__*/ jsxs(RemoteShell, {
@@ -43,4 +75,13 @@ const ConfigRemote = ({ config, basePath })=>/*#__PURE__*/ jsx(ProductNav, {
43
75
  ]
44
76
  })
45
77
  });
46
- export { ConfigRemote };
78
+ };
79
+ const RemoteForProduct = ({ product })=>{
80
+ if ('home' === product) return /*#__PURE__*/ jsx(HomeContent, {});
81
+ const { config } = PRODUCT_CONFIGS[product];
82
+ return /*#__PURE__*/ jsx(ConfigRemote, {
83
+ config: config,
84
+ basePath: `/${product}`
85
+ });
86
+ };
87
+ export { RemoteForProduct };
@@ -0,0 +1,9 @@
1
+ import { edgeNavConfig } from './_storyNavConfigs';
2
+ declare const KNOWN_PRODUCTS: readonly ["home", "edge", "ai-hypervisor", "infra-discovery", "security-testing", "settings"];
3
+ export type Product = (typeof KNOWN_PRODUCTS)[number];
4
+ export declare const PRODUCT_CONFIGS: Record<Exclude<Product, 'home'>, {
5
+ config: typeof edgeNavConfig;
6
+ }>;
7
+ export declare function deriveProduct(pathname: string): Product;
8
+ export declare function navigateToProduct(product: Product): void;
9
+ export {};
@@ -0,0 +1,39 @@
1
+ import { findFirstLinkPath, pushPathname } from "../../ProductNav/index.js";
2
+ import { aiHypervisorNavConfig, edgeNavConfig, infraDiscoveryNavConfig, securityTestingNavConfig, settingsNavConfig } from "./_storyNavConfigs.js";
3
+ const KNOWN_PRODUCTS = [
4
+ 'home',
5
+ 'edge',
6
+ 'ai-hypervisor',
7
+ 'infra-discovery',
8
+ 'security-testing',
9
+ 'settings'
10
+ ];
11
+ const PRODUCT_CONFIGS = {
12
+ edge: {
13
+ config: edgeNavConfig
14
+ },
15
+ 'ai-hypervisor': {
16
+ config: aiHypervisorNavConfig
17
+ },
18
+ 'infra-discovery': {
19
+ config: infraDiscoveryNavConfig
20
+ },
21
+ 'security-testing': {
22
+ config: securityTestingNavConfig
23
+ },
24
+ settings: {
25
+ config: settingsNavConfig
26
+ }
27
+ };
28
+ function deriveProduct(pathname) {
29
+ const segment = pathname.split('/').filter(Boolean)[0];
30
+ if (segment && KNOWN_PRODUCTS.includes(segment)) return segment;
31
+ return 'home';
32
+ }
33
+ function navigateToProduct(product) {
34
+ if ('home' === product) return void pushPathname('/home');
35
+ const { config } = PRODUCT_CONFIGS[product];
36
+ const firstPath = findFirstLinkPath(config.items) ?? '';
37
+ pushPathname(`/${product}/${firstPath}`);
38
+ }
39
+ export { PRODUCT_CONFIGS, deriveProduct, navigateToProduct };
@@ -0,0 +1 @@
1
+ export declare const RecentDropdown: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,89 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { History } from "../../../icons/index.js";
3
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuItemContent, DropdownMenuItemText, DropdownMenuLabel, DropdownMenuTrigger } from "../../DropdownMenu/index.js";
4
+ import { NavRailItem } from "../../NavRail/index.js";
5
+ import { Text } from "../../Text/index.js";
6
+ const RECENT_ITEMS = [
7
+ {
8
+ pageName: 'WAF Rules',
9
+ productName: 'Edge'
10
+ },
11
+ {
12
+ pageName: 'API Sessions',
13
+ dataPlane: 'US Cloud',
14
+ productName: 'Edge'
15
+ },
16
+ {
17
+ pageName: 'Prompt Inspector',
18
+ productName: 'AI Hypervisor'
19
+ },
20
+ {
21
+ pageName: 'Scanner Results',
22
+ dataPlane: 'EU Cloud',
23
+ productName: 'Security Testing'
24
+ },
25
+ {
26
+ pageName: 'Asset Inventory',
27
+ productName: 'Infra Discovery'
28
+ },
29
+ {
30
+ pageName: 'Pupu',
31
+ productName: 'Edge'
32
+ },
33
+ {
34
+ pageName: 'Pupupu',
35
+ dataPlane: 'US Cloud',
36
+ productName: 'Edge'
37
+ },
38
+ {
39
+ pageName: 'PuPuPuuu',
40
+ productName: 'AI Hypervisor'
41
+ },
42
+ {
43
+ pageName: 'MeowMeow',
44
+ dataPlane: 'EU Cloud',
45
+ productName: 'Security Testing'
46
+ },
47
+ {
48
+ pageName: '...',
49
+ productName: '....'
50
+ }
51
+ ];
52
+ const RecentDropdown = ()=>/*#__PURE__*/ jsxs(DropdownMenu, {
53
+ positioning: {
54
+ placement: 'right-start',
55
+ gutter: 8
56
+ },
57
+ children: [
58
+ /*#__PURE__*/ jsx(DropdownMenuTrigger, {
59
+ children: /*#__PURE__*/ jsx(NavRailItem, {
60
+ icon: History,
61
+ label: "Recent"
62
+ })
63
+ }),
64
+ /*#__PURE__*/ jsxs(DropdownMenuContent, {
65
+ className: "w-304 h-290 overscroll-none",
66
+ children: [
67
+ /*#__PURE__*/ jsx(DropdownMenuLabel, {
68
+ className: "sticky top-0 z-10 bg-bg-surface-2",
69
+ children: "Recent"
70
+ }),
71
+ RECENT_ITEMS.map((item)=>/*#__PURE__*/ jsx(DropdownMenuItem, {
72
+ children: /*#__PURE__*/ jsxs(DropdownMenuItemContent, {
73
+ children: [
74
+ /*#__PURE__*/ jsx(DropdownMenuItemText, {
75
+ children: item.pageName
76
+ }),
77
+ /*#__PURE__*/ jsx(Text, {
78
+ size: "xs",
79
+ color: "secondary",
80
+ children: item.dataPlane ? `${item.dataPlane} \u00b7 ${item.productName}` : item.productName
81
+ })
82
+ ]
83
+ })
84
+ }, `${item.pageName}-${item.productName}`))
85
+ ]
86
+ })
87
+ ]
88
+ });
89
+ export { RecentDropdown };
@@ -1,5 +1,7 @@
1
1
  export { AccountDropdown, type SidebarMode } from './_storyAccountDropdown';
2
- export { ConfigRemote } from './_storyConfigRenderer';
2
+ export { RemoteForProduct } from './_storyConfigRenderer';
3
3
  export { HomeContent } from './_storyHomeContent';
4
+ export { deriveProduct, navigateToProduct } from './_storyLib';
4
5
  export { aiHypervisorNavConfig, edgeNavConfig, infraDiscoveryNavConfig, securityTestingNavConfig, settingsNavConfig, } from './_storyNavConfigs';
5
6
  export { QuickHelpDropdown } from './_storyQuickHelpDropdown';
7
+ export { RecentDropdown } from './_storyRecentDropdown';
@@ -1,6 +1,8 @@
1
1
  import { AccountDropdown } from "./_storyAccountDropdown.js";
2
- import { ConfigRemote } from "./_storyConfigRenderer.js";
2
+ import { RemoteForProduct } from "./_storyConfigRenderer.js";
3
3
  import { HomeContent } from "./_storyHomeContent.js";
4
+ import { deriveProduct, navigateToProduct } from "./_storyLib.js";
4
5
  import { aiHypervisorNavConfig, edgeNavConfig, infraDiscoveryNavConfig, securityTestingNavConfig, settingsNavConfig } from "./_storyNavConfigs.js";
5
6
  import { QuickHelpDropdown } from "./_storyQuickHelpDropdown.js";
6
- export { AccountDropdown, ConfigRemote, HomeContent, QuickHelpDropdown, aiHypervisorNavConfig, edgeNavConfig, infraDiscoveryNavConfig, securityTestingNavConfig, settingsNavConfig };
7
+ import { RecentDropdown } from "./_storyRecentDropdown.js";
8
+ export { AccountDropdown, HomeContent, QuickHelpDropdown, RecentDropdown, RemoteForProduct, aiHypervisorNavConfig, deriveProduct, edgeNavConfig, infraDiscoveryNavConfig, navigateToProduct, securityTestingNavConfig, settingsNavConfig };
@@ -2,7 +2,7 @@ import type { ComponentProps, FC } from 'react';
2
2
  import { type VariantProps } from 'class-variance-authority';
3
3
  import type { TestableProps } from '../../utils/testId';
4
4
  declare const kbdVariants: (props?: ({
5
- size?: "small" | "medium" | null | undefined;
5
+ size?: "small" | "medium" | "xsmall" | null | undefined;
6
6
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
7
  type KbdVariantsProps = VariantProps<typeof kbdVariants>;
8
8
  type KbdProps = ComponentProps<'kbd'> & KbdVariantsProps & TestableProps;
@@ -4,6 +4,7 @@ import { cn } from "../../utils/cn.js";
4
4
  const kbdVariants = cva(cn('inline-flex items-center justify-center gap-1 w-fit', 'border border-component-border-hotkey rounded-4 bg-bg-surface-2', 'font-sans font-medium', 'text-text-primary text-xs', 'pointer-events-none select-none'), {
5
5
  variants: {
6
6
  size: {
7
+ xsmall: 'h-16 min-w-20 p-2',
7
8
  small: 'h-20 min-w-20 p-4',
8
9
  medium: 'h-24 min-w-24 p-6'
9
10
  }
@@ -0,0 +1,6 @@
1
+ import type { FC, HTMLAttributes, Ref } from 'react';
2
+ export interface NavPanelSkeletonProps extends HTMLAttributes<HTMLDivElement> {
3
+ ref?: Ref<HTMLDivElement>;
4
+ count?: number;
5
+ }
6
+ export declare const NavPanelSkeleton: FC<NavPanelSkeletonProps>;
@@ -0,0 +1,23 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { cn } from "../../utils/cn.js";
3
+ import { useTestId } from "../../utils/testId.js";
4
+ import { Skeleton } from "../Skeleton/index.js";
5
+ const NavPanelSkeleton = ({ ref, className, count = 6, ...props })=>{
6
+ const testId = useTestId('skeleton');
7
+ return /*#__PURE__*/ jsx("div", {
8
+ ...props,
9
+ ref: ref,
10
+ "data-slot": "nav-panel-skeleton",
11
+ "data-testid": testId,
12
+ className: cn('flex flex-col gap-6', className),
13
+ children: Array.from({
14
+ length: count
15
+ }, (_, i)=>/*#__PURE__*/ jsx(Skeleton, {
16
+ width: "100%",
17
+ height: "28px",
18
+ rounded: 6
19
+ }, i))
20
+ });
21
+ };
22
+ NavPanelSkeleton.displayName = 'NavPanelSkeleton';
23
+ export { NavPanelSkeleton };
@@ -8,3 +8,4 @@ export { NavPanelGroupLabel, type NavPanelGroupLabelProps } from './NavPanelGrou
8
8
  export { NavPanelHeader, type NavPanelHeaderProps } from './NavPanelHeader';
9
9
  export { NavPanelItem, type NavPanelItemProps } from './NavPanelItem';
10
10
  export { NavPanelSectionHeader, type NavPanelSectionHeaderProps } from './NavPanelSectionHeader';
11
+ export { NavPanelSkeleton, type NavPanelSkeletonProps } from './NavPanelSkeleton';
@@ -8,4 +8,5 @@ import { NavPanelGroupLabel } from "./NavPanelGroupLabel.js";
8
8
  import { NavPanelHeader } from "./NavPanelHeader.js";
9
9
  import { NavPanelItem } from "./NavPanelItem.js";
10
10
  import { NavPanelSectionHeader } from "./NavPanelSectionHeader.js";
11
- export { NavPanel, NavPanelBack, NavPanelDivider, NavPanelGroup, NavPanelGroupContent, NavPanelGroupItem, NavPanelGroupLabel, NavPanelHeader, NavPanelItem, NavPanelSectionHeader };
11
+ import { NavPanelSkeleton } from "./NavPanelSkeleton.js";
12
+ export { NavPanel, NavPanelBack, NavPanelDivider, NavPanelGroup, NavPanelGroupContent, NavPanelGroupItem, NavPanelGroupLabel, NavPanelHeader, NavPanelItem, NavPanelSectionHeader, NavPanelSkeleton };
@@ -0,0 +1,6 @@
1
+ import type { FC, HTMLAttributes, Ref } from 'react';
2
+ export interface NavRailSkeletonProps extends HTMLAttributes<HTMLDivElement> {
3
+ ref?: Ref<HTMLDivElement>;
4
+ count?: number;
5
+ }
6
+ export declare const NavRailSkeleton: FC<NavRailSkeletonProps>;
@@ -0,0 +1,23 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { cn } from "../../utils/cn.js";
3
+ import { useTestId } from "../../utils/testId.js";
4
+ import { Skeleton } from "../Skeleton/index.js";
5
+ const NavRailSkeleton = ({ ref, className, count = 4, ...props })=>{
6
+ const testId = useTestId('skeleton');
7
+ return /*#__PURE__*/ jsx("div", {
8
+ ...props,
9
+ ref: ref,
10
+ "data-slot": "nav-rail-skeleton",
11
+ "data-testid": testId,
12
+ className: cn('flex flex-col gap-6', className),
13
+ children: Array.from({
14
+ length: count
15
+ }, (_, i)=>/*#__PURE__*/ jsx(Skeleton, {
16
+ width: "100%",
17
+ height: "28px",
18
+ rounded: 6
19
+ }, i))
20
+ });
21
+ };
22
+ NavRailSkeleton.displayName = 'NavRailSkeleton';
23
+ export { NavRailSkeleton };
@@ -4,3 +4,4 @@ export { useNavRailContext } from './NavRailContext';
4
4
  export { NavRailFooter, type NavRailFooterProps } from './NavRailFooter';
5
5
  export { NavRailItem, type NavRailItemProps } from './NavRailItem';
6
6
  export { NavRailSeparator, type NavRailSeparatorProps } from './NavRailSeparator';
7
+ export { NavRailSkeleton, type NavRailSkeletonProps } from './NavRailSkeleton';
@@ -4,4 +4,5 @@ import { useNavRailContext } from "./NavRailContext.js";
4
4
  import { NavRailFooter } from "./NavRailFooter.js";
5
5
  import { NavRailItem } from "./NavRailItem.js";
6
6
  import { NavRailSeparator } from "./NavRailSeparator.js";
7
- export { NavRail, NavRailBody, NavRailFooter, NavRailItem, NavRailSeparator, useNavRailContext };
7
+ import { NavRailSkeleton } from "./NavRailSkeleton.js";
8
+ export { NavRail, NavRailBody, NavRailFooter, NavRailItem, NavRailSeparator, NavRailSkeleton, useNavRailContext };
@@ -1,3 +1,4 @@
1
+ export { NavPanelSkeleton, type NavPanelSkeletonProps } from '../NavPanel';
1
2
  export { type MatchNavResult, matchNav } from './matchNav';
2
3
  export { findDrillNode, findFirstLinkPath } from './navUtils';
3
4
  export { ProductNav, type ProductNavProps } from './ProductNav';
@@ -1,3 +1,4 @@
1
+ import { NavPanelSkeleton } from "../NavPanel/index.js";
1
2
  import { matchNav } from "./matchNav.js";
2
3
  import { findDrillNode, findFirstLinkPath } from "./navUtils.js";
3
4
  import { ProductNav } from "./ProductNav.js";
@@ -6,4 +7,4 @@ import { useProductNavContext } from "./ProductNavContext.js";
6
7
  import { ProductNavPanel } from "./ProductNavPanel.js";
7
8
  import { pushPathname, useLocationPathname } from "./useLocationPathname.js";
8
9
  import { useProductNav } from "./useProductNav.js";
9
- export { ProductNav, ProductNavBreadcrumbs, ProductNavPanel, findDrillNode, findFirstLinkPath, matchNav, pushPathname, useLocationPathname, useProductNav, useProductNavContext };
10
+ export { NavPanelSkeleton, ProductNav, ProductNavBreadcrumbs, ProductNavPanel, findDrillNode, findFirstLinkPath, matchNav, pushPathname, useLocationPathname, useProductNav, useProductNavContext };
package/dist/index.d.ts CHANGED
@@ -40,13 +40,13 @@ export { Kbd, KbdGroup } from './components/Kbd';
40
40
  export { Link, type LinkProps } from './components/Link';
41
41
  export { Loader, type LoaderProps } from './components/Loader';
42
42
  export { Logo, type LogoProps, type LogoSize, type LogoStyle, type LogoType, } from './components/Logo';
43
- export { NavRail, NavRailBody, type NavRailBodyProps, NavRailFooter, type NavRailFooterProps, NavRailItem, type NavRailItemProps, type NavRailProps, NavRailSeparator, type NavRailSeparatorProps, } from './components/NavRail';
43
+ export { NavRail, NavRailBody, type NavRailBodyProps, NavRailFooter, type NavRailFooterProps, NavRailItem, type NavRailItemProps, type NavRailProps, NavRailSeparator, type NavRailSeparatorProps, NavRailSkeleton, type NavRailSkeletonProps, } from './components/NavRail';
44
44
  export { NumberInput, type NumberInputProps } from './components/NumberInput';
45
45
  export { NumericBadge, type NumericBadgeProps, } from './components/NumericBadge';
46
46
  export { OverflowTooltip, OverflowTooltipContent, type OverflowTooltipContentProps, type OverflowTooltipProps, } from './components/OverflowTooltip';
47
47
  export { type CopyFormatData, formatAsFilter, ParameterPath, type ParameterPathProps, } from './components/ParameterPath';
48
48
  export { Popover, PopoverContent, PopoverTrigger } from './components/Popover';
49
- export { type BreadcrumbSegment, findDrillNode, findFirstLinkPath, type MatchNavResult, matchNav, type NavConfig, type NavConfigDrill, type NavConfigGroup, type NavConfigLink, type NavConfigNode, type NavStackEntry, ProductNav, ProductNavBreadcrumbs, type ProductNavContextValue, ProductNavPanel, type ProductNavProps, type UseProductNavResult, useProductNav, useProductNavContext, } from './components/ProductNav';
49
+ export { type BreadcrumbSegment, findDrillNode, findFirstLinkPath, type MatchNavResult, matchNav, type NavConfig, type NavConfigDrill, type NavConfigGroup, type NavConfigLink, type NavConfigNode, NavPanelSkeleton, type NavPanelSkeletonProps, type NavStackEntry, ProductNav, ProductNavBreadcrumbs, type ProductNavContextValue, ProductNavPanel, type ProductNavProps, type UseProductNavResult, useProductNav, useProductNavContext, } from './components/ProductNav';
50
50
  export { Progress, type ProgressColor, type ProgressProps, } from './components/Progress';
51
51
  export { Radio, RadioDescription, type RadioDescriptionProps, RadioGroup, type RadioGroupProps, RadioIndicator, RadioLabel, type RadioLabelProps, type RadioProps, } from './components/Radio';
52
52
  export { RemoteShell, RemoteShellBreadcrumb, type RemoteShellBreadcrumbProps, RemoteShellContent, type RemoteShellContentProps, RemoteShellPanel, type RemoteShellPanelProps, type RemoteShellProps, } from './components/RemoteShell';
package/dist/index.js CHANGED
@@ -29,13 +29,13 @@ import { Kbd, KbdGroup } from "./components/Kbd/index.js";
29
29
  import { Link } from "./components/Link/index.js";
30
30
  import { Loader } from "./components/Loader/index.js";
31
31
  import { Logo } from "./components/Logo/index.js";
32
- import { NavRail, NavRailBody, NavRailFooter, NavRailItem, NavRailSeparator } from "./components/NavRail/index.js";
32
+ import { NavRail, NavRailBody, NavRailFooter, NavRailItem, NavRailSeparator, NavRailSkeleton } from "./components/NavRail/index.js";
33
33
  import { NumberInput } from "./components/NumberInput/index.js";
34
34
  import { NumericBadge } from "./components/NumericBadge/index.js";
35
35
  import { OverflowTooltip, OverflowTooltipContent } from "./components/OverflowTooltip/index.js";
36
36
  import { ParameterPath, formatAsFilter } from "./components/ParameterPath/index.js";
37
37
  import { Popover, PopoverContent, PopoverTrigger } from "./components/Popover/index.js";
38
- import { ProductNav, ProductNavBreadcrumbs, ProductNavPanel, findDrillNode, findFirstLinkPath, matchNav, useProductNav, useProductNavContext } from "./components/ProductNav/index.js";
38
+ import { NavPanelSkeleton, ProductNav, ProductNavBreadcrumbs, ProductNavPanel, findDrillNode, findFirstLinkPath, matchNav, useProductNav, useProductNavContext } from "./components/ProductNav/index.js";
39
39
  import { Progress } from "./components/Progress/index.js";
40
40
  import { Radio, RadioDescription, RadioGroup, RadioIndicator, RadioLabel } from "./components/Radio/index.js";
41
41
  import { RemoteShell, RemoteShellBreadcrumb, RemoteShellContent, RemoteShellPanel } from "./components/RemoteShell/index.js";
@@ -64,4 +64,4 @@ import { Tooltip, TooltipContent, TooltipTrigger } from "./components/Tooltip/in
64
64
  import { TopHeader, TopHeaderActions, TopHeaderLogo } from "./components/TopHeader/index.js";
65
65
  import { Tour, beaconStepEffect, useTour, waitForStepEvent } from "./components/Tour/index.js";
66
66
  import { TestIdProvider, useTestId } from "./utils/testId.js";
67
- export { Accordion, AccordionActions, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertClose, AlertContent, AlertControls, AlertDescription, AlertIcon, AlertTitle, AppShell, AppShellHeader, AppShellRail, AppShellRemote, Attribute, AttributeActions, AttributeActionsContent, AttributeActionsItem, AttributeActionsTarget, AttributeLabel, AttributeLabelDescription, AttributeLabelInfo, AttributeValue, Badge, Breadcrumbs, BreadcrumbsEllipsis, BreadcrumbsItem, BreadcrumbsScopeSwitcher, BreadcrumbsSeparator, Button, Calendar, CalendarApplyButton, CalendarBody, CalendarContent, CalendarDate, CalendarDateTime, CalendarDayName, CalendarFooter, CalendarFooterControls, CalendarGrid, CalendarGrids, CalendarHeader, CalendarInputHeader, CalendarKeyboardHints, CalendarPresetItem, CalendarPresets, CalendarProvider, CalendarResetButton, CalendarTrigger, Card, CardContent, CardFooter, CardHeader, CardTitle, Checkbox, CheckboxDescription, CheckboxGroup, CheckboxIndicator, CheckboxLabel, Code, Country, CountryFlag, CountryName, DAY_NAMES, DEFAULT_RANGE_PRESETS, DEFAULT_SINGLE_PRESETS, DateFormatProvider, DateInput, DateRangeEndValue, DateRangeInput, DateRangeProvider, DateRangeSeparator, DateRangeStartValue, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerFooter, DrawerFooterControls, DrawerHeader, DrawerPositioner, DrawerResizeHandle, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuContextTrigger, DropdownMenuFooter, DropdownMenuGroup, DropdownMenuInput, DropdownMenuItem, DropdownMenuItemContent, DropdownMenuItemDescription, DropdownMenuItemIcon, DropdownMenuItemText, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuTrigger, DropdownMenuTriggerItem, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, FilterInput, FilterInputChip, FilterInputFieldMenu, FilterInputOperatorMenu, Flex, FormatDateTime, HStack, HTTP_METHODS, HTTP_METHOD_COLOR, Heading, HttpMethod, Input, InputGroup, InputGroupAddon, InputGroupText, Ip, IpAddress, IpCountry, IpList, IpPort, IpProvider, Kbd, KbdGroup, Link, Loader, Logo, MONTH_NAMES, NavRail, NavRailBody, NavRailFooter, NavRailItem, NavRailSeparator, NumberInput, NumericBadge, OverflowTooltip, OverflowTooltipContent, ParameterPath, Popover, PopoverContent, PopoverTrigger, ProductNav, ProductNavBreadcrumbs, ProductNavPanel, Progress, RESPONSE_CODE_COLOR, Radio, RadioDescription, RadioGroup, RadioIndicator, RadioLabel, RemoteShell, RemoteShellBreadcrumb, RemoteShellContent, RemoteShellPanel, ResponseCode, ScrollArea, ScrollAreaContent, ScrollAreaCorner, ScrollAreaScrollbar, ScrollAreaViewport, SegmentedControl, SegmentedControlButton, SegmentedControlItem, SegmentedControlSeparator, SegmentedTabs, SegmentedTabsButton, SegmentedTabsContent, SegmentedTabsList, SegmentedTabsSeparator, SegmentedTabsTrigger, SegmentedTabsTriggerButton, Select, SelectButton, SelectClearTrigger, SelectContent, SelectFooter, SelectGroup, SelectGroupLabel, SelectHeader, SelectInput, SelectOption, SelectOptionDescription, SelectOptionIndicator, SelectOptionText, SelectPositioner, SelectSearchInput, SelectSeparator, Selection, SelectionAll, SelectionBulkBar, SelectionItem, Separator, Skeleton, SplashScreen, SplitButton, Stack, Switch, SwitchControl, SwitchDescription, SwitchLabel, Table, TableActionBar, TableEmptyState, TableSettingsMenu, Tabs, TabsButton, TabsContent, TabsLineActions, TabsList, TabsSeparator, TabsTrigger, Tag, TagClose, TestIdProvider, Text, Textarea, ThemeProvider, Time, TimeInput, Toast, ToastActions, Toaster, ToggleButton, Tooltip, TooltipContent, TooltipTrigger, TopHeader, TopHeaderActions, TopHeaderLogo, Tour, VStack, ZonedDateTime, beaconStepEffect, cardVariants, createTableColumnHelper, datacenters, drawerContentVariants, drawerPositionerVariants, findDrillNode, findFirstLinkPath, formatAsFilter, getLocalTimeZone, getResponseCodeCategory, matchNav, parseDate, parseDateTime, parseTime, parseZonedDateTime, proxyTypes, sourceLabels, toaster, today, useCalendarContext, useDateFormat, useDateRangeContext, useDrawerContext, useProductNav, useProductNavContext, useTestId, useTheme, useTour, waitForStepEvent };
67
+ export { Accordion, AccordionActions, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertClose, AlertContent, AlertControls, AlertDescription, AlertIcon, AlertTitle, AppShell, AppShellHeader, AppShellRail, AppShellRemote, Attribute, AttributeActions, AttributeActionsContent, AttributeActionsItem, AttributeActionsTarget, AttributeLabel, AttributeLabelDescription, AttributeLabelInfo, AttributeValue, Badge, Breadcrumbs, BreadcrumbsEllipsis, BreadcrumbsItem, BreadcrumbsScopeSwitcher, BreadcrumbsSeparator, Button, Calendar, CalendarApplyButton, CalendarBody, CalendarContent, CalendarDate, CalendarDateTime, CalendarDayName, CalendarFooter, CalendarFooterControls, CalendarGrid, CalendarGrids, CalendarHeader, CalendarInputHeader, CalendarKeyboardHints, CalendarPresetItem, CalendarPresets, CalendarProvider, CalendarResetButton, CalendarTrigger, Card, CardContent, CardFooter, CardHeader, CardTitle, Checkbox, CheckboxDescription, CheckboxGroup, CheckboxIndicator, CheckboxLabel, Code, Country, CountryFlag, CountryName, DAY_NAMES, DEFAULT_RANGE_PRESETS, DEFAULT_SINGLE_PRESETS, DateFormatProvider, DateInput, DateRangeEndValue, DateRangeInput, DateRangeProvider, DateRangeSeparator, DateRangeStartValue, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerFooter, DrawerFooterControls, DrawerHeader, DrawerPositioner, DrawerResizeHandle, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuContextTrigger, DropdownMenuFooter, DropdownMenuGroup, DropdownMenuInput, DropdownMenuItem, DropdownMenuItemContent, DropdownMenuItemDescription, DropdownMenuItemIcon, DropdownMenuItemText, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuTrigger, DropdownMenuTriggerItem, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, FilterInput, FilterInputChip, FilterInputFieldMenu, FilterInputOperatorMenu, Flex, FormatDateTime, HStack, HTTP_METHODS, HTTP_METHOD_COLOR, Heading, HttpMethod, Input, InputGroup, InputGroupAddon, InputGroupText, Ip, IpAddress, IpCountry, IpList, IpPort, IpProvider, Kbd, KbdGroup, Link, Loader, Logo, MONTH_NAMES, NavPanelSkeleton, NavRail, NavRailBody, NavRailFooter, NavRailItem, NavRailSeparator, NavRailSkeleton, NumberInput, NumericBadge, OverflowTooltip, OverflowTooltipContent, ParameterPath, Popover, PopoverContent, PopoverTrigger, ProductNav, ProductNavBreadcrumbs, ProductNavPanel, Progress, RESPONSE_CODE_COLOR, Radio, RadioDescription, RadioGroup, RadioIndicator, RadioLabel, RemoteShell, RemoteShellBreadcrumb, RemoteShellContent, RemoteShellPanel, ResponseCode, ScrollArea, ScrollAreaContent, ScrollAreaCorner, ScrollAreaScrollbar, ScrollAreaViewport, SegmentedControl, SegmentedControlButton, SegmentedControlItem, SegmentedControlSeparator, SegmentedTabs, SegmentedTabsButton, SegmentedTabsContent, SegmentedTabsList, SegmentedTabsSeparator, SegmentedTabsTrigger, SegmentedTabsTriggerButton, Select, SelectButton, SelectClearTrigger, SelectContent, SelectFooter, SelectGroup, SelectGroupLabel, SelectHeader, SelectInput, SelectOption, SelectOptionDescription, SelectOptionIndicator, SelectOptionText, SelectPositioner, SelectSearchInput, SelectSeparator, Selection, SelectionAll, SelectionBulkBar, SelectionItem, Separator, Skeleton, SplashScreen, SplitButton, Stack, Switch, SwitchControl, SwitchDescription, SwitchLabel, Table, TableActionBar, TableEmptyState, TableSettingsMenu, Tabs, TabsButton, TabsContent, TabsLineActions, TabsList, TabsSeparator, TabsTrigger, Tag, TagClose, TestIdProvider, Text, Textarea, ThemeProvider, Time, TimeInput, Toast, ToastActions, Toaster, ToggleButton, Tooltip, TooltipContent, TooltipTrigger, TopHeader, TopHeaderActions, TopHeaderLogo, Tour, VStack, ZonedDateTime, beaconStepEffect, cardVariants, createTableColumnHelper, datacenters, drawerContentVariants, drawerPositionerVariants, findDrillNode, findFirstLinkPath, formatAsFilter, getLocalTimeZone, getResponseCodeCategory, matchNav, parseDate, parseDateTime, parseTime, parseZonedDateTime, proxyTypes, sourceLabels, toaster, today, useCalendarContext, useDateFormat, useDateRangeContext, useDrawerContext, useProductNav, useProductNavContext, useTestId, useTheme, useTour, waitForStepEvent };