@microcosmmoney/portal-react 3.4.1 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/components/auction/auction-page.js +0 -1
  2. package/dist/components/dashboard/assets-summary.js +2 -3
  3. package/dist/components/dashboard/dashboard-overview.js +0 -1
  4. package/dist/components/dashboard/ecosystem-stats.js +0 -1
  5. package/dist/components/dashboard/lock-periods.js +0 -1
  6. package/dist/components/dashboard/market-overview-bar.js +0 -1
  7. package/dist/components/dashboard/mcc-token-stats.js +0 -1
  8. package/dist/components/dashboard/mcd-stats.js +0 -1
  9. package/dist/components/dashboard/mining-weight.js +4 -4
  10. package/dist/components/dashboard/minting-stats.js +0 -1
  11. package/dist/components/dashboard/my-mining.js +0 -1
  12. package/dist/components/dashboard/price-chart.js +0 -1
  13. package/dist/components/dashboard/quick-actions.js +0 -1
  14. package/dist/components/fragment/fragment-page.js +0 -1
  15. package/dist/components/kpi-radial-chart.js +0 -1
  16. package/dist/components/lending/lending-page.js +0 -1
  17. package/dist/components/mcd/mcd-page.js +0 -1
  18. package/dist/components/menu-section.js +0 -1
  19. package/dist/components/messages/messages-page.d.ts +7 -0
  20. package/dist/components/messages/messages-page.js +10 -0
  21. package/dist/components/mining/mining-page.js +0 -1
  22. package/dist/components/mining-progress-bar.js +0 -1
  23. package/dist/components/notifications/notifications-page.d.ts +8 -0
  24. package/dist/components/notifications/notifications-page.js +10 -0
  25. package/dist/components/organization/organization-page.js +0 -1
  26. package/dist/components/terminal-countdown.js +0 -1
  27. package/dist/components/terminal-dialog.js +0 -1
  28. package/dist/components/terminal-input.js +0 -1
  29. package/dist/components/terminal-table.js +0 -1
  30. package/dist/components/terminal-tabs.js +0 -1
  31. package/dist/components/terminal-tooltip.js +0 -1
  32. package/dist/components/terminal.js +0 -1
  33. package/dist/components/territory/territory-page.js +0 -1
  34. package/dist/components/territory-card.js +0 -1
  35. package/dist/components/vote-result-bar.js +0 -1
  36. package/dist/components/voting/voting-page.js +0 -1
  37. package/dist/components/wallet/wallet-page.js +0 -1
  38. package/dist/index.d.ts +2 -0
  39. package/dist/index.js +5 -2
  40. package/dist/lib/cn.js +0 -1
  41. package/dist/link-context.d.ts +15 -0
  42. package/dist/link-context.js +15 -0
  43. package/dist/menu-config.js +0 -1
  44. package/package.json +3 -3
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmAuctionPage = MicrocosmAuctionPage;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmAssetsSummary = MicrocosmAssetsSummary;
@@ -12,7 +11,7 @@ const RANK_COLOR = {
12
11
  function MicrocosmAssetsSummary({ basePath = '', onNavigate, accentColor }) {
13
12
  const { balance: mccData, loading: mccLoading } = (0, auth_react_1.useMCC)(120000);
14
13
  const { balance: mcdData, loading: mcdLoading } = (0, auth_react_1.useMCD)(120000);
15
- const { data: levelData } = (0, auth_react_1.useUserLevel)();
14
+ const { data: levelData } = (0, auth_react_1.useLevelProgress)();
16
15
  const { data: wallets } = (0, auth_react_1.useWallets)();
17
16
  const { data: locks } = (0, auth_react_1.useMCCLocks)();
18
17
  const { data: marketData } = (0, auth_react_1.useMarketData)();
@@ -28,7 +27,7 @@ function MicrocosmAssetsSummary({ basePath = '', onNavigate, accentColor }) {
28
27
  const lockedAmount = activeLocks.reduce((sum, l) => sum + (l.amount || 0), 0);
29
28
  const rank = levelData?.level ?? null;
30
29
  const nextRank = levelData?.next_level ?? null;
31
- const progress = levelData?.upgrade_progress?.percentage ?? 0;
30
+ const progress = levelData?.progress_percent ?? 0;
32
31
  const fmt = (n, d = 2) => n.toLocaleString('en-US', { minimumFractionDigits: d, maximumFractionDigits: d });
33
32
  const rankColor = accentColor
34
33
  ? undefined
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmDashboardOverview = MicrocosmDashboardOverview;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmEcosystemStats = MicrocosmEcosystemStats;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmLockPeriods = MicrocosmLockPeriods;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmMarketBar = MicrocosmMarketBar;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmMCCTokenStats = MicrocosmMCCTokenStats;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmMCDStats = MicrocosmMCDStats;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmMiningWeight = MicrocosmMiningWeight;
@@ -34,13 +33,14 @@ function getCompanionYield(rank) {
34
33
  ];
35
34
  }
36
35
  function MicrocosmMiningWeight({ accentColor } = {}) {
37
- const { data, loading: loadingLevel } = (0, auth_react_1.useUserLevel)();
36
+ const { data, loading: loadingLevel } = (0, auth_react_1.useLevelProgress)();
38
37
  const { data: techBonus, loading: loadingTech } = (0, auth_react_1.useTechBonusDetail)();
39
38
  const { data: miningStats, loading: loadingMining } = (0, auth_react_1.useMiningStats)();
40
39
  const loading = loadingLevel || loadingTech || loadingMining;
41
40
  const ac = accentColor || '#22d3ee';
42
- const rank = data?.level ?? null;
43
- const miningDays = data?.upgrade_progress?.current_days ?? miningStats?.active_days_30d ?? 0;
41
+ const rank = data?.current_rank?.toLowerCase() ?? null;
42
+ const totalHoldings = data ? (data.holdings.station + data.holdings.matrix + data.holdings.sector + data.holdings.system) : 0;
43
+ const miningDays = totalHoldings > 0 ? totalHoldings : (miningStats?.active_days_30d ?? 0);
44
44
  const companionYield = getCompanionYield(rank);
45
45
  const bonusMultiplier = techBonus?.bonus_multiplier ?? 0;
46
46
  const discountPct = bonusMultiplier > 0 ? `+${(bonusMultiplier * 100).toFixed(0)}%` : '0%';
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmMintingStats = MicrocosmMintingStats;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmMyMining = MicrocosmMyMining;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmPriceChart = MicrocosmPriceChart;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmQuickActions = MicrocosmQuickActions;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmFragmentPage = MicrocosmFragmentPage;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  "use client";
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.KPIRadialChart = KPIRadialChart;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmLendingPage = MicrocosmLendingPage;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmMCDPage = MicrocosmMCDPage;
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.MicrocosmMenuSection = MicrocosmMenuSection;
7
7
  const jsx_runtime_1 = require("react/jsx-runtime");
8
- // AI-generated · AI-managed · AI-maintained
9
8
  const react_1 = __importDefault(require("react"));
10
9
  const menu_config_1 = require("../menu-config");
11
10
  function isActive(itemPath, currentPath) {
@@ -0,0 +1,7 @@
1
+ export interface MicrocosmMessagesPageProps {
2
+ accentColor?: string;
3
+ title?: string;
4
+ subtitle?: string;
5
+ emptyText?: string;
6
+ }
7
+ export declare function MicrocosmMessagesPage({ accentColor, title, subtitle, emptyText, }?: MicrocosmMessagesPageProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ 'use client';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.MicrocosmMessagesPage = MicrocosmMessagesPage;
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const lucide_react_1 = require("lucide-react");
7
+ const terminal_1 = require("../terminal");
8
+ function MicrocosmMessagesPage({ accentColor, title = 'Messages', subtitle = 'Private messages and system replies', emptyText = 'No messages yet', } = {}) {
9
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "max-w-7xl mx-auto px-3 py-4 space-y-3 xs:px-4 xs:space-y-4 sm:px-6 sm:py-6 sm:space-y-6 font-mono", children: [(0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("h1", { className: "text-lg sm:text-2xl font-bold text-white tracking-wider", children: title }), (0, jsx_runtime_1.jsx)("p", { className: "text-xs sm:text-sm text-neutral-400", children: subtitle })] }), (0, jsx_runtime_1.jsx)(terminal_1.TerminalCard, { children: (0, jsx_runtime_1.jsxs)("div", { className: "text-center py-8 text-neutral-500", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.MessageSquare, { className: "w-12 h-12 mx-auto mb-4 text-neutral-500" }), (0, jsx_runtime_1.jsx)("p", { children: emptyText })] }) })] }));
10
+ }
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmMiningPage = MicrocosmMiningPage;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  "use client";
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MiningProgressBar = MiningProgressBar;
@@ -0,0 +1,8 @@
1
+ export interface MicrocosmNotificationsPageProps {
2
+ accentColor?: string;
3
+ title?: string;
4
+ subtitle?: string;
5
+ emptyText?: string;
6
+ emptyHint?: string;
7
+ }
8
+ export declare function MicrocosmNotificationsPage({ accentColor, title, subtitle, emptyText, emptyHint, }?: MicrocosmNotificationsPageProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ 'use client';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.MicrocosmNotificationsPage = MicrocosmNotificationsPage;
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const lucide_react_1 = require("lucide-react");
7
+ const terminal_1 = require("../terminal");
8
+ function MicrocosmNotificationsPage({ accentColor, title = 'Notifications', subtitle = 'System alerts and messages', emptyText = 'No notifications', emptyHint = 'You will be notified when something important happens', } = {}) {
9
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "max-w-4xl mx-auto px-3 py-4 space-y-3 xs:px-4 xs:space-y-4 sm:px-6 sm:py-6 sm:space-y-6 font-mono", children: [(0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("h1", { className: "text-lg sm:text-2xl font-bold text-white tracking-wider", children: title }), (0, jsx_runtime_1.jsx)("p", { className: "text-xs sm:text-sm text-neutral-400", children: subtitle })] }), (0, jsx_runtime_1.jsx)(terminal_1.TerminalCard, { children: (0, jsx_runtime_1.jsxs)("div", { className: "text-center py-12 text-neutral-500", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Bell, { className: "w-12 h-12 mx-auto mb-3 opacity-50" }), (0, jsx_runtime_1.jsx)("p", { className: "text-lg", children: emptyText }), (0, jsx_runtime_1.jsx)("p", { className: "text-sm mt-1", children: emptyHint })] }) })] }));
10
+ }
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmOrganizationPage = MicrocosmOrganizationPage;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  "use client";
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.TerminalCountdown = TerminalCountdown;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  "use client";
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.TerminalDialog = TerminalDialog;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  "use client";
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.TerminalInput = TerminalInput;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  "use client";
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.TerminalTable = TerminalTable;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  "use client";
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.TerminalTabs = TerminalTabs;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  "use client";
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.TerminalTooltip = TerminalTooltip;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  "use client";
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.TerminalCard = TerminalCard;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmTerritoryPage = MicrocosmTerritoryPage;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  "use client";
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.TerritoryCard = TerritoryCard;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  "use client";
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.VoteResultBar = VoteResultBar;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmVotingPage = MicrocosmVotingPage;
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- // AI-generated · AI-managed · AI-maintained
3
2
  'use client';
4
3
  Object.defineProperty(exports, "__esModule", { value: true });
5
4
  exports.MicrocosmWalletPage = MicrocosmWalletPage;
package/dist/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  export { MicrocosmMenuSection } from './components/menu-section';
2
2
  export type { MicrocosmMenuSectionProps } from './components/menu-section';
3
+ export { LinkProvider, useLinkComponent } from './link-context';
4
+ export type { LinkProps, LinkComponent } from './link-context';
3
5
  export { blockchainMenu, web3OsMenu, dashboardMenu, microcosmMenuGroups, getAllMenuItems, resolveMenuPath, getMenuTitle, getMenuDescription, } from './menu-config';
4
6
  export type { MicrocosmMenuItem, MicrocosmMenuGroup, MenuLocale } from './menu-config';
5
7
  export { TerminalCard, StatBox, TerminalCommand, TerminalPageHeader, TerminalLoading, TerminalError, TerminalEmpty, TerminalBadge, TerminalDataRow, TerminalProgress, } from './components/terminal';
package/dist/index.js CHANGED
@@ -1,9 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MicrocosmVotingPage = exports.MicrocosmOrganizationPage = exports.MicrocosmTerritoryPage = exports.MicrocosmAuctionPage = exports.MicrocosmMCDPage = exports.MicrocosmMiningPage = exports.MicrocosmWalletPage = exports.MicrocosmLendingPage = exports.MicrocosmFragmentPage = exports.MicrocosmLockPeriods = exports.MicrocosmMCDStats = exports.MicrocosmMCCTokenStats = exports.MicrocosmEcosystemStats = exports.MicrocosmMyMining = exports.MicrocosmMiningWeight = exports.MicrocosmMintingStats = exports.MicrocosmPriceChart = exports.MicrocosmAssetsSummary = exports.MicrocosmQuickActions = exports.MicrocosmMarketBar = exports.MicrocosmDashboardOverview = exports.KPIRadialChart = exports.VoteResultBar = exports.MiningProgressBar = exports.TerritoryCard = exports.TerminalTooltip = exports.TerminalInput = exports.TerminalCountdown = exports.TerminalDialog = exports.TerminalTabs = exports.TerminalTable = exports.TerminalProgress = exports.TerminalDataRow = exports.TerminalBadge = exports.TerminalEmpty = exports.TerminalError = exports.TerminalLoading = exports.TerminalPageHeader = exports.TerminalCommand = exports.StatBox = exports.TerminalCard = exports.getMenuDescription = exports.getMenuTitle = exports.resolveMenuPath = exports.getAllMenuItems = exports.microcosmMenuGroups = exports.dashboardMenu = exports.web3OsMenu = exports.blockchainMenu = exports.MicrocosmMenuSection = void 0;
4
- // AI-generated · AI-managed · AI-maintained
3
+ exports.MicrocosmTerritoryPage = exports.MicrocosmAuctionPage = exports.MicrocosmMCDPage = exports.MicrocosmMiningPage = exports.MicrocosmWalletPage = exports.MicrocosmLendingPage = exports.MicrocosmFragmentPage = exports.MicrocosmLockPeriods = exports.MicrocosmMCDStats = exports.MicrocosmMCCTokenStats = exports.MicrocosmEcosystemStats = exports.MicrocosmMyMining = exports.MicrocosmMiningWeight = exports.MicrocosmMintingStats = exports.MicrocosmPriceChart = exports.MicrocosmAssetsSummary = exports.MicrocosmQuickActions = exports.MicrocosmMarketBar = exports.MicrocosmDashboardOverview = exports.KPIRadialChart = exports.VoteResultBar = exports.MiningProgressBar = exports.TerritoryCard = exports.TerminalTooltip = exports.TerminalInput = exports.TerminalCountdown = exports.TerminalDialog = exports.TerminalTabs = exports.TerminalTable = exports.TerminalProgress = exports.TerminalDataRow = exports.TerminalBadge = exports.TerminalEmpty = exports.TerminalError = exports.TerminalLoading = exports.TerminalPageHeader = exports.TerminalCommand = exports.StatBox = exports.TerminalCard = exports.getMenuDescription = exports.getMenuTitle = exports.resolveMenuPath = exports.getAllMenuItems = exports.microcosmMenuGroups = exports.dashboardMenu = exports.web3OsMenu = exports.blockchainMenu = exports.useLinkComponent = exports.LinkProvider = exports.MicrocosmMenuSection = void 0;
4
+ exports.MicrocosmVotingPage = exports.MicrocosmOrganizationPage = void 0;
5
5
  var menu_section_1 = require("./components/menu-section");
6
6
  Object.defineProperty(exports, "MicrocosmMenuSection", { enumerable: true, get: function () { return menu_section_1.MicrocosmMenuSection; } });
7
+ var link_context_1 = require("./link-context");
8
+ Object.defineProperty(exports, "LinkProvider", { enumerable: true, get: function () { return link_context_1.LinkProvider; } });
9
+ Object.defineProperty(exports, "useLinkComponent", { enumerable: true, get: function () { return link_context_1.useLinkComponent; } });
7
10
  var menu_config_1 = require("./menu-config");
8
11
  Object.defineProperty(exports, "blockchainMenu", { enumerable: true, get: function () { return menu_config_1.blockchainMenu; } });
9
12
  Object.defineProperty(exports, "web3OsMenu", { enumerable: true, get: function () { return menu_config_1.web3OsMenu; } });
package/dist/lib/cn.js CHANGED
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.cn = cn;
4
- // AI-generated · AI-managed · AI-maintained
5
4
  function cn(...inputs) {
6
5
  return inputs.filter(Boolean).join(' ');
7
6
  }
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ export interface LinkProps {
3
+ href: string;
4
+ className?: string;
5
+ children?: React.ReactNode;
6
+ onClick?: (e: React.MouseEvent) => void;
7
+ target?: string;
8
+ rel?: string;
9
+ }
10
+ export type LinkComponent = React.ComponentType<LinkProps>;
11
+ export declare function LinkProvider({ component, children }: {
12
+ component: LinkComponent;
13
+ children: React.ReactNode;
14
+ }): import("react/jsx-runtime").JSX.Element;
15
+ export declare function useLinkComponent(): LinkComponent;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ 'use client';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.LinkProvider = LinkProvider;
5
+ exports.useLinkComponent = useLinkComponent;
6
+ const jsx_runtime_1 = require("react/jsx-runtime");
7
+ const react_1 = require("react");
8
+ const DefaultLink = ({ href, className, children, onClick, target, rel }) => ((0, jsx_runtime_1.jsx)("a", { href: href, className: className, onClick: onClick, target: target, rel: rel, children: children }));
9
+ const LinkContext = (0, react_1.createContext)(DefaultLink);
10
+ function LinkProvider({ component, children }) {
11
+ return (0, jsx_runtime_1.jsx)(LinkContext.Provider, { value: component, children: children });
12
+ }
13
+ function useLinkComponent() {
14
+ return (0, react_1.useContext)(LinkContext);
15
+ }
@@ -5,7 +5,6 @@ exports.getMenuTitle = getMenuTitle;
5
5
  exports.getMenuDescription = getMenuDescription;
6
6
  exports.getAllMenuItems = getAllMenuItems;
7
7
  exports.resolveMenuPath = resolveMenuPath;
8
- // AI-generated · AI-managed · AI-maintained
9
8
  const lucide_react_1 = require("lucide-react");
10
9
  /** Resolve localized title — falls back to `item.title` (English) */
11
10
  function getMenuTitle(item, locale) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@microcosmmoney/portal-react",
3
- "version": "3.4.1",
3
+ "version": "3.5.0",
4
4
  "description": "Microcosm Portal UI components for React/Next.js",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -18,8 +18,8 @@
18
18
  "lucide-react": ">=0.300.0"
19
19
  },
20
20
  "dependencies": {
21
- "@microcosmmoney/auth-core": "^2.3.1",
22
- "@microcosmmoney/auth-react": "^2.3.1"
21
+ "@microcosmmoney/auth-core": "^2.3.2",
22
+ "@microcosmmoney/auth-react": "^2.3.2"
23
23
  },
24
24
  "devDependencies": {
25
25
  "@types/react": "^18.0.0",