orbcafe-ui 1.4.5 → 1.4.6

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/dist/index.d.mts CHANGED
@@ -16,6 +16,7 @@ interface TreeMenuItem {
16
16
  appurl?: string;
17
17
  children?: TreeMenuItem[];
18
18
  isExpanded?: boolean;
19
+ pinnable?: boolean;
19
20
  data?: any;
20
21
  }
21
22
  interface TreeMenuProps {
@@ -26,8 +27,11 @@ interface TreeMenuProps {
26
27
  expandedIds?: Set<string>;
27
28
  onToggleExpand?: (id: string) => void;
28
29
  colorMode?: 'light' | 'dark';
30
+ enablePinning?: boolean;
31
+ pinnedIds?: Set<string>;
32
+ onTogglePin?: (item: TreeMenuItem) => void;
29
33
  }
30
- declare function TreeMenu({ items, onItemClick, className, level, expandedIds, onToggleExpand, colorMode, }: TreeMenuProps): react_jsx_runtime.JSX.Element;
34
+ declare function TreeMenu({ items, onItemClick, className, level, expandedIds, onToggleExpand, colorMode, enablePinning, pinnedIds, onTogglePin, }: TreeMenuProps): react_jsx_runtime.JSX.Element;
31
35
 
32
36
  /**
33
37
  * @file 10_Frontend/components/ui/molecules/navigation-island.tsx
@@ -62,6 +66,12 @@ interface NavigationIslandProps {
62
66
  displayMode?: NavigationIslandDisplayMode;
63
67
  onDisplayModeChange?: (mode: NavigationIslandDisplayMode) => void;
64
68
  showDisplayModeToggle?: boolean;
69
+ enablePinning?: boolean;
70
+ pinStorageKey?: string;
71
+ pinnedItemIds?: string[];
72
+ defaultPinnedItemIds?: string[];
73
+ onPinnedItemIdsChange?: (ids: string[]) => void;
74
+ pinnedSectionTitle?: string;
65
75
  }
66
76
  declare const NavigationIsland: React__default.FC<NavigationIslandProps>;
67
77
 
@@ -79,6 +89,12 @@ interface UseNavigationIslandOptions {
79
89
  initialCollapsed?: boolean;
80
90
  initialDisplayMode?: NavigationIslandDisplayMode;
81
91
  content?: TreeMenuItem[];
92
+ enablePinning?: boolean;
93
+ pinStorageKey?: string;
94
+ pinnedItemIds?: string[];
95
+ defaultPinnedItemIds?: string[];
96
+ onPinnedItemIdsChange?: (ids: string[]) => void;
97
+ pinnedSectionTitle?: string;
82
98
  }
83
99
  interface UseNavigationIslandResult {
84
100
  collapsed: boolean;
@@ -89,7 +105,7 @@ interface UseNavigationIslandResult {
89
105
  toggleDisplayMode: () => void;
90
106
  menuData: TreeMenuItem[];
91
107
  setMenuData: Dispatch<SetStateAction<TreeMenuItem[]>>;
92
- navigationIslandProps: Pick<NavigationIslandProps, 'collapsed' | 'onToggle' | 'menuData' | 'displayMode' | 'onDisplayModeChange'>;
108
+ navigationIslandProps: Pick<NavigationIslandProps, 'collapsed' | 'onToggle' | 'menuData' | 'displayMode' | 'onDisplayModeChange' | 'enablePinning' | 'pinStorageKey' | 'pinnedItemIds' | 'defaultPinnedItemIds' | 'onPinnedItemIdsChange' | 'pinnedSectionTitle'>;
93
109
  }
94
110
  /**
95
111
  * Hook for wiring NavigationIsland in a controlled and reusable way.
@@ -1345,6 +1361,9 @@ declare const en: {
1345
1361
  readonly 'navigation.expandView': "Expand {title}";
1346
1362
  readonly 'navigation.mode.switchToFixed': "Switch to fixed navigation";
1347
1363
  readonly 'navigation.mode.switchToFloating': "Switch to floating navigation";
1364
+ readonly 'navigation.pinned': "Pinned";
1365
+ readonly 'navigation.pin.add': "Pin to top";
1366
+ readonly 'navigation.pin.remove': "Unpin";
1348
1367
  readonly 'table.toolbar.searchPlaceholder': "Search...";
1349
1368
  readonly 'table.title.default': "Data Table";
1350
1369
  readonly 'table.toolbar.groupBy': "Group By";
@@ -1633,9 +1652,15 @@ interface CAppPageLayoutProps {
1633
1652
  defaultNavigationMode?: NavigationIslandDisplayMode;
1634
1653
  onNavigationModeChange?: (mode: NavigationIslandDisplayMode) => void;
1635
1654
  showNavigationModeToggle?: boolean;
1655
+ enableNavigationPinning?: boolean;
1656
+ navigationPinStorageKey?: string;
1657
+ pinnedNavigationItemIds?: string[];
1658
+ defaultPinnedNavigationItemIds?: string[];
1659
+ onPinnedNavigationItemIdsChange?: (ids: string[]) => void;
1660
+ pinnedNavigationSectionTitle?: string;
1636
1661
  }
1637
1662
 
1638
- declare const CAppPageLayout: ({ appTitle, menuData, children, showNavigation, locale, localeLabel, localeOptions, onLocaleChange, user, onUserSetting, onUserLogout, userMenuItems, logo, searchPlaceholder, searchPlacement, floatingSearchSx, onSearch, onSearchAdd, rightHeaderSlot, leftHeaderSlot, contentSx, navigationMode, defaultNavigationMode, onNavigationModeChange, showNavigationModeToggle, }: CAppPageLayoutProps) => react_jsx_runtime.JSX.Element;
1663
+ declare const CAppPageLayout: ({ appTitle, menuData, children, showNavigation, locale, localeLabel, localeOptions, onLocaleChange, user, onUserSetting, onUserLogout, userMenuItems, logo, searchPlaceholder, searchPlacement, floatingSearchSx, onSearch, onSearchAdd, rightHeaderSlot, leftHeaderSlot, contentSx, navigationMode, defaultNavigationMode, onNavigationModeChange, showNavigationModeToggle, enableNavigationPinning, navigationPinStorageKey, pinnedNavigationItemIds, defaultPinnedNavigationItemIds, onPinnedNavigationItemIdsChange, pinnedNavigationSectionTitle, }: CAppPageLayoutProps) => react_jsx_runtime.JSX.Element;
1639
1664
 
1640
1665
  interface CAppHeaderSearchProps {
1641
1666
  searchPlaceholder?: string;
@@ -1651,9 +1676,15 @@ interface UsePageLayoutOptions {
1651
1676
  menuData?: TreeMenuItem[];
1652
1677
  initialNavigationCollapsed?: boolean;
1653
1678
  initialNavigationMode?: NavigationIslandDisplayMode;
1654
- }
1655
- declare const usePageLayout: ({ menuData, initialNavigationCollapsed, initialNavigationMode, }?: UsePageLayoutOptions) => {
1656
- navigationIslandProps: Pick<NavigationIslandProps, "collapsed" | "onToggle" | "menuData" | "displayMode" | "onDisplayModeChange">;
1679
+ enableNavigationPinning?: boolean;
1680
+ navigationPinStorageKey?: string;
1681
+ pinnedNavigationItemIds?: string[];
1682
+ defaultPinnedNavigationItemIds?: string[];
1683
+ onPinnedNavigationItemIdsChange?: (ids: string[]) => void;
1684
+ pinnedNavigationSectionTitle?: string;
1685
+ }
1686
+ declare const usePageLayout: ({ menuData, initialNavigationCollapsed, initialNavigationMode, enableNavigationPinning, navigationPinStorageKey, pinnedNavigationItemIds, defaultPinnedNavigationItemIds, onPinnedNavigationItemIdsChange, pinnedNavigationSectionTitle, }?: UsePageLayoutOptions) => {
1687
+ navigationIslandProps: Pick<NavigationIslandProps, "enablePinning" | "collapsed" | "onToggle" | "menuData" | "displayMode" | "onDisplayModeChange" | "pinStorageKey" | "pinnedItemIds" | "defaultPinnedItemIds" | "onPinnedItemIdsChange" | "pinnedSectionTitle">;
1657
1688
  navigationMaxHeight: number;
1658
1689
  };
1659
1690
 
package/dist/index.d.ts CHANGED
@@ -16,6 +16,7 @@ interface TreeMenuItem {
16
16
  appurl?: string;
17
17
  children?: TreeMenuItem[];
18
18
  isExpanded?: boolean;
19
+ pinnable?: boolean;
19
20
  data?: any;
20
21
  }
21
22
  interface TreeMenuProps {
@@ -26,8 +27,11 @@ interface TreeMenuProps {
26
27
  expandedIds?: Set<string>;
27
28
  onToggleExpand?: (id: string) => void;
28
29
  colorMode?: 'light' | 'dark';
30
+ enablePinning?: boolean;
31
+ pinnedIds?: Set<string>;
32
+ onTogglePin?: (item: TreeMenuItem) => void;
29
33
  }
30
- declare function TreeMenu({ items, onItemClick, className, level, expandedIds, onToggleExpand, colorMode, }: TreeMenuProps): react_jsx_runtime.JSX.Element;
34
+ declare function TreeMenu({ items, onItemClick, className, level, expandedIds, onToggleExpand, colorMode, enablePinning, pinnedIds, onTogglePin, }: TreeMenuProps): react_jsx_runtime.JSX.Element;
31
35
 
32
36
  /**
33
37
  * @file 10_Frontend/components/ui/molecules/navigation-island.tsx
@@ -62,6 +66,12 @@ interface NavigationIslandProps {
62
66
  displayMode?: NavigationIslandDisplayMode;
63
67
  onDisplayModeChange?: (mode: NavigationIslandDisplayMode) => void;
64
68
  showDisplayModeToggle?: boolean;
69
+ enablePinning?: boolean;
70
+ pinStorageKey?: string;
71
+ pinnedItemIds?: string[];
72
+ defaultPinnedItemIds?: string[];
73
+ onPinnedItemIdsChange?: (ids: string[]) => void;
74
+ pinnedSectionTitle?: string;
65
75
  }
66
76
  declare const NavigationIsland: React__default.FC<NavigationIslandProps>;
67
77
 
@@ -79,6 +89,12 @@ interface UseNavigationIslandOptions {
79
89
  initialCollapsed?: boolean;
80
90
  initialDisplayMode?: NavigationIslandDisplayMode;
81
91
  content?: TreeMenuItem[];
92
+ enablePinning?: boolean;
93
+ pinStorageKey?: string;
94
+ pinnedItemIds?: string[];
95
+ defaultPinnedItemIds?: string[];
96
+ onPinnedItemIdsChange?: (ids: string[]) => void;
97
+ pinnedSectionTitle?: string;
82
98
  }
83
99
  interface UseNavigationIslandResult {
84
100
  collapsed: boolean;
@@ -89,7 +105,7 @@ interface UseNavigationIslandResult {
89
105
  toggleDisplayMode: () => void;
90
106
  menuData: TreeMenuItem[];
91
107
  setMenuData: Dispatch<SetStateAction<TreeMenuItem[]>>;
92
- navigationIslandProps: Pick<NavigationIslandProps, 'collapsed' | 'onToggle' | 'menuData' | 'displayMode' | 'onDisplayModeChange'>;
108
+ navigationIslandProps: Pick<NavigationIslandProps, 'collapsed' | 'onToggle' | 'menuData' | 'displayMode' | 'onDisplayModeChange' | 'enablePinning' | 'pinStorageKey' | 'pinnedItemIds' | 'defaultPinnedItemIds' | 'onPinnedItemIdsChange' | 'pinnedSectionTitle'>;
93
109
  }
94
110
  /**
95
111
  * Hook for wiring NavigationIsland in a controlled and reusable way.
@@ -1345,6 +1361,9 @@ declare const en: {
1345
1361
  readonly 'navigation.expandView': "Expand {title}";
1346
1362
  readonly 'navigation.mode.switchToFixed': "Switch to fixed navigation";
1347
1363
  readonly 'navigation.mode.switchToFloating': "Switch to floating navigation";
1364
+ readonly 'navigation.pinned': "Pinned";
1365
+ readonly 'navigation.pin.add': "Pin to top";
1366
+ readonly 'navigation.pin.remove': "Unpin";
1348
1367
  readonly 'table.toolbar.searchPlaceholder': "Search...";
1349
1368
  readonly 'table.title.default': "Data Table";
1350
1369
  readonly 'table.toolbar.groupBy': "Group By";
@@ -1633,9 +1652,15 @@ interface CAppPageLayoutProps {
1633
1652
  defaultNavigationMode?: NavigationIslandDisplayMode;
1634
1653
  onNavigationModeChange?: (mode: NavigationIslandDisplayMode) => void;
1635
1654
  showNavigationModeToggle?: boolean;
1655
+ enableNavigationPinning?: boolean;
1656
+ navigationPinStorageKey?: string;
1657
+ pinnedNavigationItemIds?: string[];
1658
+ defaultPinnedNavigationItemIds?: string[];
1659
+ onPinnedNavigationItemIdsChange?: (ids: string[]) => void;
1660
+ pinnedNavigationSectionTitle?: string;
1636
1661
  }
1637
1662
 
1638
- declare const CAppPageLayout: ({ appTitle, menuData, children, showNavigation, locale, localeLabel, localeOptions, onLocaleChange, user, onUserSetting, onUserLogout, userMenuItems, logo, searchPlaceholder, searchPlacement, floatingSearchSx, onSearch, onSearchAdd, rightHeaderSlot, leftHeaderSlot, contentSx, navigationMode, defaultNavigationMode, onNavigationModeChange, showNavigationModeToggle, }: CAppPageLayoutProps) => react_jsx_runtime.JSX.Element;
1663
+ declare const CAppPageLayout: ({ appTitle, menuData, children, showNavigation, locale, localeLabel, localeOptions, onLocaleChange, user, onUserSetting, onUserLogout, userMenuItems, logo, searchPlaceholder, searchPlacement, floatingSearchSx, onSearch, onSearchAdd, rightHeaderSlot, leftHeaderSlot, contentSx, navigationMode, defaultNavigationMode, onNavigationModeChange, showNavigationModeToggle, enableNavigationPinning, navigationPinStorageKey, pinnedNavigationItemIds, defaultPinnedNavigationItemIds, onPinnedNavigationItemIdsChange, pinnedNavigationSectionTitle, }: CAppPageLayoutProps) => react_jsx_runtime.JSX.Element;
1639
1664
 
1640
1665
  interface CAppHeaderSearchProps {
1641
1666
  searchPlaceholder?: string;
@@ -1651,9 +1676,15 @@ interface UsePageLayoutOptions {
1651
1676
  menuData?: TreeMenuItem[];
1652
1677
  initialNavigationCollapsed?: boolean;
1653
1678
  initialNavigationMode?: NavigationIslandDisplayMode;
1654
- }
1655
- declare const usePageLayout: ({ menuData, initialNavigationCollapsed, initialNavigationMode, }?: UsePageLayoutOptions) => {
1656
- navigationIslandProps: Pick<NavigationIslandProps, "collapsed" | "onToggle" | "menuData" | "displayMode" | "onDisplayModeChange">;
1679
+ enableNavigationPinning?: boolean;
1680
+ navigationPinStorageKey?: string;
1681
+ pinnedNavigationItemIds?: string[];
1682
+ defaultPinnedNavigationItemIds?: string[];
1683
+ onPinnedNavigationItemIdsChange?: (ids: string[]) => void;
1684
+ pinnedNavigationSectionTitle?: string;
1685
+ }
1686
+ declare const usePageLayout: ({ menuData, initialNavigationCollapsed, initialNavigationMode, enableNavigationPinning, navigationPinStorageKey, pinnedNavigationItemIds, defaultPinnedNavigationItemIds, onPinnedNavigationItemIdsChange, pinnedNavigationSectionTitle, }?: UsePageLayoutOptions) => {
1687
+ navigationIslandProps: Pick<NavigationIslandProps, "enablePinning" | "collapsed" | "onToggle" | "menuData" | "displayMode" | "onDisplayModeChange" | "pinStorageKey" | "pinnedItemIds" | "defaultPinnedItemIds" | "onPinnedItemIdsChange" | "pinnedSectionTitle">;
1657
1688
  navigationMaxHeight: number;
1658
1689
  };
1659
1690