@agg-market/ui 11.0.0 → 13.0.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.
- package/README.md +1 -0
- package/dist/{chunk-HMUMJUIL.mjs → chunk-3ST2TN6E.mjs} +613 -312
- package/dist/{chunk-IUJXJEDQ.mjs → chunk-B56YA2YQ.mjs} +872 -650
- package/dist/chunk-CHVTY3OB.mjs +3140 -0
- package/dist/{chunk-2KGE5AJQ.mjs → chunk-GQ4P3AHJ.mjs} +66 -131
- package/dist/{chunk-UONHGMFI.mjs → chunk-T4WFRR6D.mjs} +23 -45
- package/dist/events.js +1013 -924
- package/dist/events.mjs +2 -2
- package/dist/index.js +3653 -2943
- package/dist/index.mjs +14 -7
- package/dist/modals.js +2578 -2190
- package/dist/modals.mjs +2 -2
- package/dist/pages.js +2192 -1763
- package/dist/pages.mjs +4 -4
- package/dist/primitives.js +860 -628
- package/dist/primitives.mjs +9 -1
- package/dist/styles.css +2 -2
- package/dist/tailwind.css +2 -2
- package/dist/trading.js +823 -673
- package/dist/trading.mjs +2 -2
- package/dist/types/deposit/deposit-modal.constants.d.mts +0 -4
- package/dist/types/deposit/deposit-modal.constants.d.ts +0 -4
- package/dist/types/deposit/deposit-modal.types.d.mts +110 -14
- package/dist/types/deposit/deposit-modal.types.d.ts +110 -14
- package/dist/types/deposit/index.d.mts +1 -1
- package/dist/types/deposit/index.d.ts +1 -1
- package/dist/types/deposit/steps/card-deposit.d.mts +13 -3
- package/dist/types/deposit/steps/card-deposit.d.ts +13 -3
- package/dist/types/deposit/steps/card-provider.d.mts +10 -0
- package/dist/types/deposit/steps/card-provider.d.ts +10 -0
- package/dist/types/deposit/steps/card-purchase-success.d.mts +7 -0
- package/dist/types/deposit/steps/card-purchase-success.d.ts +7 -0
- package/dist/types/deposit/steps/crypto-transfer.d.mts +13 -3
- package/dist/types/deposit/steps/crypto-transfer.d.ts +13 -3
- package/dist/types/deposit/steps/deposit-method.d.mts +6 -4
- package/dist/types/deposit/steps/deposit-method.d.ts +6 -4
- package/dist/types/deposit/steps/wallet-form.d.mts +20 -0
- package/dist/types/deposit/steps/wallet-form.d.ts +20 -0
- package/dist/types/deposit/steps/wallet-processing.d.mts +6 -0
- package/dist/types/deposit/steps/wallet-processing.d.ts +6 -0
- package/dist/types/deposit/steps/wallet-success.d.mts +7 -0
- package/dist/types/deposit/steps/wallet-success.d.ts +7 -0
- package/dist/types/pages/home/index.d.mts +1 -1
- package/dist/types/pages/home/index.d.ts +1 -1
- package/dist/types/pages/user-profile/components/available-balance-card.d.mts +17 -0
- package/dist/types/pages/user-profile/components/available-balance-card.d.ts +17 -0
- package/dist/types/pages/user-profile/components/balance-display.d.mts +3 -5
- package/dist/types/pages/user-profile/components/balance-display.d.ts +3 -5
- package/dist/types/pages/user-profile/components/positions-activity.d.mts +11 -1
- package/dist/types/pages/user-profile/components/positions-activity.d.ts +11 -1
- package/dist/types/pages/user-profile/components/positions-value-card.d.mts +10 -0
- package/dist/types/pages/user-profile/components/positions-value-card.d.ts +10 -0
- package/dist/types/pages/user-profile/components/user-info-card.d.mts +3 -1
- package/dist/types/pages/user-profile/components/user-info-card.d.ts +3 -1
- package/dist/types/pages/user-profile/index.d.mts +2 -2
- package/dist/types/pages/user-profile/index.d.ts +2 -2
- package/dist/types/pages/user-profile/user-profile.constants.d.mts +1 -2
- package/dist/types/pages/user-profile/user-profile.constants.d.ts +1 -2
- package/dist/types/pages/user-profile/user-profile.types.d.mts +29 -16
- package/dist/types/pages/user-profile/user-profile.types.d.ts +29 -16
- package/dist/types/primitives/icon/index.d.mts +4 -1
- package/dist/types/primitives/icon/index.d.ts +4 -1
- package/dist/types/primitives/icon/registry.d.mts +12 -0
- package/dist/types/primitives/icon/registry.d.ts +12 -0
- package/dist/types/primitives/icon/svg/bnb.d.mts +5 -0
- package/dist/types/primitives/icon/svg/bnb.d.ts +5 -0
- package/dist/types/primitives/icon/svg/polygon.d.mts +5 -0
- package/dist/types/primitives/icon/svg/polygon.d.ts +5 -0
- package/dist/types/primitives/icon/svg/success-check.d.mts +5 -0
- package/dist/types/primitives/icon/svg/success-check.d.ts +5 -0
- package/dist/types/primitives/index.d.mts +1 -0
- package/dist/types/primitives/index.d.ts +1 -0
- package/dist/types/primitives/skeleton/skeleton.types.d.mts +2 -0
- package/dist/types/primitives/skeleton/skeleton.types.d.ts +2 -0
- package/dist/types/primitives/skeleton/views/user-profile-overview-skeleton-view.d.mts +5 -0
- package/dist/types/primitives/skeleton/views/user-profile-overview-skeleton-view.d.ts +5 -0
- package/dist/types/primitives/skeleton/views/user-profile-positions-activity-skeleton-view.d.mts +5 -0
- package/dist/types/primitives/skeleton/views/user-profile-positions-activity-skeleton-view.d.ts +5 -0
- package/dist/types/primitives/tooltip/index.d.mts +6 -0
- package/dist/types/primitives/tooltip/index.d.ts +6 -0
- package/dist/types/primitives/tooltip/tooltip.constants.d.mts +2 -0
- package/dist/types/primitives/tooltip/tooltip.constants.d.ts +2 -0
- package/dist/types/primitives/tooltip/tooltip.types.d.mts +27 -0
- package/dist/types/primitives/tooltip/tooltip.types.d.ts +27 -0
- package/dist/types/profile/tabs/about-tab.d.mts +1 -1
- package/dist/types/profile/tabs/about-tab.d.ts +1 -1
- package/dist/types/profile/tabs/accounts-wallets-tab.d.mts +1 -1
- package/dist/types/profile/tabs/accounts-wallets-tab.d.ts +1 -1
- package/dist/types/withdraw/index.d.mts +2 -2
- package/dist/types/withdraw/index.d.ts +2 -2
- package/dist/types/withdraw/steps/withdraw-amount.d.mts +14 -5
- package/dist/types/withdraw/steps/withdraw-amount.d.ts +14 -5
- package/dist/types/withdraw/steps/withdraw-method.d.mts +3 -4
- package/dist/types/withdraw/steps/withdraw-method.d.ts +3 -4
- package/dist/types/withdraw/steps/withdraw-provider.d.mts +10 -0
- package/dist/types/withdraw/steps/withdraw-provider.d.ts +10 -0
- package/dist/types/withdraw/steps/withdraw-success.d.mts +7 -0
- package/dist/types/withdraw/steps/withdraw-success.d.ts +7 -0
- package/dist/types/withdraw/withdraw-modal.constants.d.mts +0 -4
- package/dist/types/withdraw/withdraw-modal.constants.d.ts +0 -4
- package/dist/types/withdraw/withdraw-modal.types.d.mts +47 -23
- package/dist/types/withdraw/withdraw-modal.types.d.ts +47 -23
- package/package.json +3 -2
- package/dist/chunk-5FSWOXEG.mjs +0 -2857
- package/dist/types/deposit/steps/kalshi-deposit.d.mts +0 -5
- package/dist/types/deposit/steps/kalshi-deposit.d.ts +0 -5
- package/dist/types/withdraw/steps/kalshi-withdraw.d.mts +0 -5
- package/dist/types/withdraw/steps/kalshi-withdraw.d.ts +0 -5
- package/dist/types/withdraw/steps/venue-selection.d.mts +0 -6
- package/dist/types/withdraw/steps/venue-selection.d.ts +0 -6
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
import type { UserProfileBalance
|
|
1
|
+
import type { UserProfileBalance } from "../user-profile.types";
|
|
2
2
|
type BalanceDisplayProps = {
|
|
3
|
-
balance?:
|
|
4
|
-
defaultTimeRange?: UserProfileTimeRange;
|
|
5
|
-
onTimeRangeChange?: (range: UserProfileTimeRange) => void;
|
|
3
|
+
balance?: UserProfileBalance;
|
|
6
4
|
className?: string;
|
|
7
5
|
};
|
|
8
6
|
export declare const BalanceDisplay: {
|
|
9
|
-
({ balance,
|
|
7
|
+
({ balance, className }: BalanceDisplayProps): JSX.Element;
|
|
10
8
|
displayName: string;
|
|
11
9
|
};
|
|
12
10
|
export {};
|
|
@@ -5,10 +5,20 @@ type PositionsActivityProps = {
|
|
|
5
5
|
activities?: UserProfileActivity[];
|
|
6
6
|
onPositionClick?: (position: UserProfilePosition) => void;
|
|
7
7
|
onActivityClick?: (activity: UserProfileActivity) => void;
|
|
8
|
+
isLoadingPositions?: boolean;
|
|
9
|
+
isLoadingActivities?: boolean;
|
|
10
|
+
positionsError?: boolean;
|
|
11
|
+
activitiesError?: boolean;
|
|
12
|
+
hasMorePositions?: boolean;
|
|
13
|
+
isLoadingMorePositions?: boolean;
|
|
14
|
+
onLoadMorePositions?: () => void;
|
|
15
|
+
hasMoreActivities?: boolean;
|
|
16
|
+
isLoadingMoreActivities?: boolean;
|
|
17
|
+
onLoadMoreActivities?: () => void;
|
|
8
18
|
className?: string;
|
|
9
19
|
};
|
|
10
20
|
export declare const PositionsActivity: {
|
|
11
|
-
({ activePositions, closedPositions, activities, onPositionClick, onActivityClick, className, }: PositionsActivityProps): JSX.Element;
|
|
21
|
+
({ activePositions, closedPositions, activities, onPositionClick, onActivityClick, isLoadingPositions, isLoadingActivities, positionsError, activitiesError, hasMorePositions, isLoadingMorePositions, onLoadMorePositions, hasMoreActivities, isLoadingMoreActivities, onLoadMoreActivities, className, }: PositionsActivityProps): JSX.Element;
|
|
12
22
|
displayName: string;
|
|
13
23
|
};
|
|
14
24
|
export {};
|
|
@@ -5,10 +5,20 @@ type PositionsActivityProps = {
|
|
|
5
5
|
activities?: UserProfileActivity[];
|
|
6
6
|
onPositionClick?: (position: UserProfilePosition) => void;
|
|
7
7
|
onActivityClick?: (activity: UserProfileActivity) => void;
|
|
8
|
+
isLoadingPositions?: boolean;
|
|
9
|
+
isLoadingActivities?: boolean;
|
|
10
|
+
positionsError?: boolean;
|
|
11
|
+
activitiesError?: boolean;
|
|
12
|
+
hasMorePositions?: boolean;
|
|
13
|
+
isLoadingMorePositions?: boolean;
|
|
14
|
+
onLoadMorePositions?: () => void;
|
|
15
|
+
hasMoreActivities?: boolean;
|
|
16
|
+
isLoadingMoreActivities?: boolean;
|
|
17
|
+
onLoadMoreActivities?: () => void;
|
|
8
18
|
className?: string;
|
|
9
19
|
};
|
|
10
20
|
export declare const PositionsActivity: {
|
|
11
|
-
({ activePositions, closedPositions, activities, onPositionClick, onActivityClick, className, }: PositionsActivityProps): JSX.Element;
|
|
21
|
+
({ activePositions, closedPositions, activities, onPositionClick, onActivityClick, isLoadingPositions, isLoadingActivities, positionsError, activitiesError, hasMorePositions, isLoadingMorePositions, onLoadMorePositions, hasMoreActivities, isLoadingMoreActivities, onLoadMoreActivities, className, }: PositionsActivityProps): JSX.Element;
|
|
12
22
|
displayName: string;
|
|
13
23
|
};
|
|
14
24
|
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
type PositionsValueCardProps = {
|
|
2
|
+
label?: string;
|
|
3
|
+
valueLabel: string;
|
|
4
|
+
className?: string;
|
|
5
|
+
};
|
|
6
|
+
export declare const PositionsValueCard: {
|
|
7
|
+
({ label, valueLabel, className, }: PositionsValueCardProps): JSX.Element;
|
|
8
|
+
displayName: string;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
type PositionsValueCardProps = {
|
|
2
|
+
label?: string;
|
|
3
|
+
valueLabel: string;
|
|
4
|
+
className?: string;
|
|
5
|
+
};
|
|
6
|
+
export declare const PositionsValueCard: {
|
|
7
|
+
({ label, valueLabel, className, }: PositionsValueCardProps): JSX.Element;
|
|
8
|
+
displayName: string;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
@@ -2,10 +2,12 @@ import type { UserProfileInfo } from "../user-profile.types";
|
|
|
2
2
|
type UserInfoCardProps = {
|
|
3
3
|
user: UserProfileInfo;
|
|
4
4
|
onEditProfile?: () => void;
|
|
5
|
+
onDeposit?: () => void;
|
|
6
|
+
onWithdraw?: () => void;
|
|
5
7
|
className?: string;
|
|
6
8
|
};
|
|
7
9
|
export declare const UserInfoCard: {
|
|
8
|
-
({ user, onEditProfile, className, }: UserInfoCardProps): JSX.Element;
|
|
10
|
+
({ user, onEditProfile, onDeposit, onWithdraw, className, }: UserInfoCardProps): JSX.Element;
|
|
9
11
|
displayName: string;
|
|
10
12
|
};
|
|
11
13
|
export {};
|
|
@@ -2,10 +2,12 @@ import type { UserProfileInfo } from "../user-profile.types";
|
|
|
2
2
|
type UserInfoCardProps = {
|
|
3
3
|
user: UserProfileInfo;
|
|
4
4
|
onEditProfile?: () => void;
|
|
5
|
+
onDeposit?: () => void;
|
|
6
|
+
onWithdraw?: () => void;
|
|
5
7
|
className?: string;
|
|
6
8
|
};
|
|
7
9
|
export declare const UserInfoCard: {
|
|
8
|
-
({ user, onEditProfile, className, }: UserInfoCardProps): JSX.Element;
|
|
10
|
+
({ user, onEditProfile, onDeposit, onWithdraw, className, }: UserInfoCardProps): JSX.Element;
|
|
9
11
|
displayName: string;
|
|
10
12
|
};
|
|
11
13
|
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { UserProfilePageProps } from "./user-profile.types";
|
|
2
|
-
export type { UserProfileActivity, UserProfileBalance, UserProfileConnectedExchange, UserProfileInfo, UserProfilePageClassNames, UserProfilePageProps, UserProfilePosition, UserProfilePositionFilter, UserProfileSocialLink,
|
|
2
|
+
export type { UserProfileActivity, UserProfileBalance, UserProfileConnectedExchange, UserProfileInfo, UserProfilePageClassNames, UserProfilePageProps, UserProfilePosition, UserProfilePositionFilter, UserProfileSocialLink, UserProfileVenueBalance, } from "./user-profile.types";
|
|
3
3
|
export declare const UserProfilePage: {
|
|
4
|
-
({ user, venueBalances, balance,
|
|
4
|
+
({ user, venueBalances: _venueBalances, balance, activePositions, closedPositions, activities, onEditProfile, onDeposit, onWithdraw, onPositionClick, onActivityClick, isLoadingPositions, isLoadingActivities, positionsError, activitiesError, hasMorePositions, isLoadingMorePositions, onLoadMorePositions, hasMoreActivities, isLoadingMoreActivities, onLoadMoreActivities, classNames, }: UserProfilePageProps): JSX.Element;
|
|
5
5
|
displayName: string;
|
|
6
6
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { UserProfilePageProps } from "./user-profile.types";
|
|
2
|
-
export type { UserProfileActivity, UserProfileBalance, UserProfileConnectedExchange, UserProfileInfo, UserProfilePageClassNames, UserProfilePageProps, UserProfilePosition, UserProfilePositionFilter, UserProfileSocialLink,
|
|
2
|
+
export type { UserProfileActivity, UserProfileBalance, UserProfileConnectedExchange, UserProfileInfo, UserProfilePageClassNames, UserProfilePageProps, UserProfilePosition, UserProfilePositionFilter, UserProfileSocialLink, UserProfileVenueBalance, } from "./user-profile.types";
|
|
3
3
|
export declare const UserProfilePage: {
|
|
4
|
-
({ user, venueBalances, balance,
|
|
4
|
+
({ user, venueBalances: _venueBalances, balance, activePositions, closedPositions, activities, onEditProfile, onDeposit, onWithdraw, onPositionClick, onActivityClick, isLoadingPositions, isLoadingActivities, positionsError, activitiesError, hasMorePositions, isLoadingMorePositions, onLoadMorePositions, hasMoreActivities, isLoadingMoreActivities, onLoadMoreActivities, classNames, }: UserProfilePageProps): JSX.Element;
|
|
5
5
|
displayName: string;
|
|
6
6
|
};
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import type { UserProfilePositionFilter
|
|
1
|
+
import type { UserProfilePositionFilter } from "./user-profile.types";
|
|
2
2
|
export declare const USER_PROFILE_TAB_POSITIONS: "positions";
|
|
3
3
|
export declare const USER_PROFILE_TAB_ACTIVITY: "activity";
|
|
4
4
|
export type UserProfileTabValue = typeof USER_PROFILE_TAB_POSITIONS | typeof USER_PROFILE_TAB_ACTIVITY;
|
|
5
|
-
export declare const USER_PROFILE_TIME_RANGES: UserProfileTimeRange[];
|
|
6
5
|
export declare const USER_PROFILE_POSITION_FILTERS: {
|
|
7
6
|
value: UserProfilePositionFilter;
|
|
8
7
|
label: string;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import type { UserProfilePositionFilter
|
|
1
|
+
import type { UserProfilePositionFilter } from "./user-profile.types";
|
|
2
2
|
export declare const USER_PROFILE_TAB_POSITIONS: "positions";
|
|
3
3
|
export declare const USER_PROFILE_TAB_ACTIVITY: "activity";
|
|
4
4
|
export type UserProfileTabValue = typeof USER_PROFILE_TAB_POSITIONS | typeof USER_PROFILE_TAB_ACTIVITY;
|
|
5
|
-
export declare const USER_PROFILE_TIME_RANGES: UserProfileTimeRange[];
|
|
6
5
|
export declare const USER_PROFILE_POSITION_FILTERS: {
|
|
7
6
|
value: UserProfilePositionFilter;
|
|
8
7
|
label: string;
|
|
@@ -23,20 +23,20 @@ export interface UserProfileInfo {
|
|
|
23
23
|
socialHandleVenue?: VenueLogoName;
|
|
24
24
|
}
|
|
25
25
|
export interface UserProfileVenueBalance {
|
|
26
|
-
|
|
26
|
+
chain: string;
|
|
27
|
+
accountCount?: number;
|
|
27
28
|
/** Balance formatted as a string, e.g. "$1,234.56" */
|
|
28
29
|
balanceLabel: string;
|
|
29
30
|
}
|
|
30
|
-
export type UserProfileTimeRange = "1D" | "1W" | "1M" | "All";
|
|
31
31
|
export interface UserProfileBalance {
|
|
32
32
|
/** Formatted total value, e.g. "$103,456.00" */
|
|
33
33
|
totalLabel: string;
|
|
34
|
-
/** Formatted change value, e.g. "+$1,234.56" */
|
|
35
|
-
changeLabel
|
|
36
|
-
/** Formatted change percentage, e.g. "+12.3%" */
|
|
37
|
-
changePercentLabel
|
|
38
|
-
/** True when the change is positive (green), false when negative (
|
|
39
|
-
isPositive
|
|
34
|
+
/** Formatted change value, e.g. "+$1,234.56" (deprecated; optional) */
|
|
35
|
+
changeLabel?: string;
|
|
36
|
+
/** Formatted change percentage, e.g. "+12.3%" (deprecated; optional) */
|
|
37
|
+
changePercentLabel?: string;
|
|
38
|
+
/** True when the change is positive (green), false when negative (deprecated; optional) */
|
|
39
|
+
isPositive?: boolean;
|
|
40
40
|
}
|
|
41
41
|
export interface UserProfilePosition {
|
|
42
42
|
id: string;
|
|
@@ -92,16 +92,12 @@ export type UserProfilePageClassNames = Partial<{
|
|
|
92
92
|
positionsActivity: string;
|
|
93
93
|
}>;
|
|
94
94
|
export interface UserProfilePageProps {
|
|
95
|
-
/** User information */
|
|
96
|
-
user
|
|
95
|
+
/** User information. When omitted, page resolves current authenticated user via hooks. */
|
|
96
|
+
user?: UserProfileInfo;
|
|
97
97
|
/** Venue balances shown in the sidebar card */
|
|
98
98
|
venueBalances?: UserProfileVenueBalance[];
|
|
99
|
-
/** Balance / P&L data
|
|
100
|
-
balance?:
|
|
101
|
-
/** Default time range selection */
|
|
102
|
-
defaultTimeRange?: UserProfileTimeRange;
|
|
103
|
-
/** Called when the time range filter changes */
|
|
104
|
-
onTimeRangeChange?: (range: UserProfileTimeRange) => void;
|
|
99
|
+
/** Consolidated Balance / P&L data */
|
|
100
|
+
balance?: UserProfileBalance;
|
|
105
101
|
/** Active positions */
|
|
106
102
|
activePositions?: UserProfilePosition[];
|
|
107
103
|
/** Closed positions */
|
|
@@ -118,6 +114,23 @@ export interface UserProfilePageProps {
|
|
|
118
114
|
onPositionClick?: (position: UserProfilePosition) => void;
|
|
119
115
|
/** Called when an activity row is clicked */
|
|
120
116
|
onActivityClick?: (activity: UserProfileActivity) => void;
|
|
117
|
+
/** Optional runtime loading/error controls for tab content */
|
|
118
|
+
isLoadingPositions?: boolean;
|
|
119
|
+
isLoadingActivities?: boolean;
|
|
120
|
+
positionsError?: boolean;
|
|
121
|
+
activitiesError?: boolean;
|
|
122
|
+
/** Whether there are more positions to fetch in connected mode. */
|
|
123
|
+
hasMorePositions?: boolean;
|
|
124
|
+
/** Loading state for positions pagination. */
|
|
125
|
+
isLoadingMorePositions?: boolean;
|
|
126
|
+
/** Cursor pagination handler for positions. */
|
|
127
|
+
onLoadMorePositions?: () => void;
|
|
128
|
+
/** Whether there are more activity items to fetch in connected mode. */
|
|
129
|
+
hasMoreActivities?: boolean;
|
|
130
|
+
/** Loading state for activity pagination. */
|
|
131
|
+
isLoadingMoreActivities?: boolean;
|
|
132
|
+
/** Cursor pagination handler for activity. */
|
|
133
|
+
onLoadMoreActivities?: () => void;
|
|
121
134
|
/** Custom class names for sub-sections */
|
|
122
135
|
classNames?: UserProfilePageClassNames;
|
|
123
136
|
}
|
|
@@ -23,20 +23,20 @@ export interface UserProfileInfo {
|
|
|
23
23
|
socialHandleVenue?: VenueLogoName;
|
|
24
24
|
}
|
|
25
25
|
export interface UserProfileVenueBalance {
|
|
26
|
-
|
|
26
|
+
chain: string;
|
|
27
|
+
accountCount?: number;
|
|
27
28
|
/** Balance formatted as a string, e.g. "$1,234.56" */
|
|
28
29
|
balanceLabel: string;
|
|
29
30
|
}
|
|
30
|
-
export type UserProfileTimeRange = "1D" | "1W" | "1M" | "All";
|
|
31
31
|
export interface UserProfileBalance {
|
|
32
32
|
/** Formatted total value, e.g. "$103,456.00" */
|
|
33
33
|
totalLabel: string;
|
|
34
|
-
/** Formatted change value, e.g. "+$1,234.56" */
|
|
35
|
-
changeLabel
|
|
36
|
-
/** Formatted change percentage, e.g. "+12.3%" */
|
|
37
|
-
changePercentLabel
|
|
38
|
-
/** True when the change is positive (green), false when negative (
|
|
39
|
-
isPositive
|
|
34
|
+
/** Formatted change value, e.g. "+$1,234.56" (deprecated; optional) */
|
|
35
|
+
changeLabel?: string;
|
|
36
|
+
/** Formatted change percentage, e.g. "+12.3%" (deprecated; optional) */
|
|
37
|
+
changePercentLabel?: string;
|
|
38
|
+
/** True when the change is positive (green), false when negative (deprecated; optional) */
|
|
39
|
+
isPositive?: boolean;
|
|
40
40
|
}
|
|
41
41
|
export interface UserProfilePosition {
|
|
42
42
|
id: string;
|
|
@@ -92,16 +92,12 @@ export type UserProfilePageClassNames = Partial<{
|
|
|
92
92
|
positionsActivity: string;
|
|
93
93
|
}>;
|
|
94
94
|
export interface UserProfilePageProps {
|
|
95
|
-
/** User information */
|
|
96
|
-
user
|
|
95
|
+
/** User information. When omitted, page resolves current authenticated user via hooks. */
|
|
96
|
+
user?: UserProfileInfo;
|
|
97
97
|
/** Venue balances shown in the sidebar card */
|
|
98
98
|
venueBalances?: UserProfileVenueBalance[];
|
|
99
|
-
/** Balance / P&L data
|
|
100
|
-
balance?:
|
|
101
|
-
/** Default time range selection */
|
|
102
|
-
defaultTimeRange?: UserProfileTimeRange;
|
|
103
|
-
/** Called when the time range filter changes */
|
|
104
|
-
onTimeRangeChange?: (range: UserProfileTimeRange) => void;
|
|
99
|
+
/** Consolidated Balance / P&L data */
|
|
100
|
+
balance?: UserProfileBalance;
|
|
105
101
|
/** Active positions */
|
|
106
102
|
activePositions?: UserProfilePosition[];
|
|
107
103
|
/** Closed positions */
|
|
@@ -118,6 +114,23 @@ export interface UserProfilePageProps {
|
|
|
118
114
|
onPositionClick?: (position: UserProfilePosition) => void;
|
|
119
115
|
/** Called when an activity row is clicked */
|
|
120
116
|
onActivityClick?: (activity: UserProfileActivity) => void;
|
|
117
|
+
/** Optional runtime loading/error controls for tab content */
|
|
118
|
+
isLoadingPositions?: boolean;
|
|
119
|
+
isLoadingActivities?: boolean;
|
|
120
|
+
positionsError?: boolean;
|
|
121
|
+
activitiesError?: boolean;
|
|
122
|
+
/** Whether there are more positions to fetch in connected mode. */
|
|
123
|
+
hasMorePositions?: boolean;
|
|
124
|
+
/** Loading state for positions pagination. */
|
|
125
|
+
isLoadingMorePositions?: boolean;
|
|
126
|
+
/** Cursor pagination handler for positions. */
|
|
127
|
+
onLoadMorePositions?: () => void;
|
|
128
|
+
/** Whether there are more activity items to fetch in connected mode. */
|
|
129
|
+
hasMoreActivities?: boolean;
|
|
130
|
+
/** Loading state for activity pagination. */
|
|
131
|
+
isLoadingMoreActivities?: boolean;
|
|
132
|
+
/** Cursor pagination handler for activity. */
|
|
133
|
+
onLoadMoreActivities?: () => void;
|
|
121
134
|
/** Custom class names for sub-sections */
|
|
122
135
|
classNames?: UserProfilePageClassNames;
|
|
123
136
|
}
|
|
@@ -3,6 +3,7 @@ import { ArrowTrendUpIcon } from "./svg/arrow-trend-up";
|
|
|
3
3
|
import { ArrowsToDotIcon } from "./svg/arrows-to-dot";
|
|
4
4
|
import { BankIcon } from "./svg/bank";
|
|
5
5
|
import { BestPricesIcon } from "./svg/best-prices";
|
|
6
|
+
import { BnbIcon } from "./svg/bnb";
|
|
6
7
|
import { BoltIcon } from "./svg/bolt";
|
|
7
8
|
import { CheckCircleIcon } from "./svg/check-circle";
|
|
8
9
|
import { ChartCandlestickIcon } from "./svg/chart-candlestick";
|
|
@@ -29,12 +30,14 @@ import { iconNames } from "./registry";
|
|
|
29
30
|
import { LinkAccountsIcon } from "./svg/link-accounts";
|
|
30
31
|
import { PencilIcon } from "./svg/pencil";
|
|
31
32
|
import { PlaySquareIcon } from "./svg/play-square";
|
|
33
|
+
import { PolygonIcon } from "./svg/polygon";
|
|
32
34
|
import { ProfileIcon } from "./svg/profile";
|
|
33
35
|
import { RevenueAltIcon } from "./svg/revenue-alt";
|
|
34
36
|
import { SearchIcon } from "./svg/search";
|
|
35
37
|
import { ShieldTrustIcon } from "./svg/shield-trust";
|
|
36
38
|
import { SolanaIcon } from "./svg/solana";
|
|
37
39
|
import { StayInControlIcon } from "./svg/stay-in-control";
|
|
40
|
+
import { SuccessCheckIcon } from "./svg/success-check";
|
|
38
41
|
import { TriangleDownIcon } from "./svg/triangle-down";
|
|
39
42
|
import { TriangleUpFilledIcon } from "./svg/triangle-up-filled";
|
|
40
43
|
import { TriangleUpIcon } from "./svg/triangle-up";
|
|
@@ -51,4 +54,4 @@ export declare const Icon: {
|
|
|
51
54
|
({ name, color, size, className, style, ...props }: IconProps): JSX.Element;
|
|
52
55
|
displayName: string;
|
|
53
56
|
};
|
|
54
|
-
export { AppleIcon, ArrowTrendUpIcon, ArrowsToDotIcon, BankIcon, BestPricesIcon, BoltIcon, CheckCircleIcon, ChartCandlestickIcon, ChartLineIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CloseIcon, CopyIcon, CreateAccountIcon, CreditCardIcon, DisconnectIcon, DotsHorizontalIcon, DocumentIcon, DownloadIcon, ErrorFilledIcon, EthereumIcon, ExternalLinkIcon, GoogleIcon, iconNames, ImageIcon, InfoIcon, LinkAccountsIcon, PencilIcon, PlaySquareIcon, ProfileIcon, RevenueAltIcon, SearchIcon, ShieldTrustIcon, SolanaIcon, StayInControlIcon, TriangleDownIcon, TriangleUpFilledIcon, TriangleUpIcon, UploadIcon, WalletAvatarIcon, WalletIcon, WarningFilledIcon, WarningIcon, };
|
|
57
|
+
export { AppleIcon, ArrowTrendUpIcon, ArrowsToDotIcon, BankIcon, BestPricesIcon, BnbIcon, BoltIcon, CheckCircleIcon, ChartCandlestickIcon, ChartLineIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CloseIcon, CopyIcon, CreateAccountIcon, CreditCardIcon, DisconnectIcon, DotsHorizontalIcon, DocumentIcon, DownloadIcon, ErrorFilledIcon, EthereumIcon, ExternalLinkIcon, GoogleIcon, iconNames, ImageIcon, InfoIcon, LinkAccountsIcon, PencilIcon, PlaySquareIcon, PolygonIcon, ProfileIcon, RevenueAltIcon, SearchIcon, ShieldTrustIcon, SolanaIcon, StayInControlIcon, SuccessCheckIcon, TriangleDownIcon, TriangleUpFilledIcon, TriangleUpIcon, UploadIcon, WalletAvatarIcon, WalletIcon, WarningFilledIcon, WarningIcon, };
|
|
@@ -3,6 +3,7 @@ import { ArrowTrendUpIcon } from "./svg/arrow-trend-up";
|
|
|
3
3
|
import { ArrowsToDotIcon } from "./svg/arrows-to-dot";
|
|
4
4
|
import { BankIcon } from "./svg/bank";
|
|
5
5
|
import { BestPricesIcon } from "./svg/best-prices";
|
|
6
|
+
import { BnbIcon } from "./svg/bnb";
|
|
6
7
|
import { BoltIcon } from "./svg/bolt";
|
|
7
8
|
import { CheckCircleIcon } from "./svg/check-circle";
|
|
8
9
|
import { ChartCandlestickIcon } from "./svg/chart-candlestick";
|
|
@@ -29,12 +30,14 @@ import { iconNames } from "./registry";
|
|
|
29
30
|
import { LinkAccountsIcon } from "./svg/link-accounts";
|
|
30
31
|
import { PencilIcon } from "./svg/pencil";
|
|
31
32
|
import { PlaySquareIcon } from "./svg/play-square";
|
|
33
|
+
import { PolygonIcon } from "./svg/polygon";
|
|
32
34
|
import { ProfileIcon } from "./svg/profile";
|
|
33
35
|
import { RevenueAltIcon } from "./svg/revenue-alt";
|
|
34
36
|
import { SearchIcon } from "./svg/search";
|
|
35
37
|
import { ShieldTrustIcon } from "./svg/shield-trust";
|
|
36
38
|
import { SolanaIcon } from "./svg/solana";
|
|
37
39
|
import { StayInControlIcon } from "./svg/stay-in-control";
|
|
40
|
+
import { SuccessCheckIcon } from "./svg/success-check";
|
|
38
41
|
import { TriangleDownIcon } from "./svg/triangle-down";
|
|
39
42
|
import { TriangleUpFilledIcon } from "./svg/triangle-up-filled";
|
|
40
43
|
import { TriangleUpIcon } from "./svg/triangle-up";
|
|
@@ -51,4 +54,4 @@ export declare const Icon: {
|
|
|
51
54
|
({ name, color, size, className, style, ...props }: IconProps): JSX.Element;
|
|
52
55
|
displayName: string;
|
|
53
56
|
};
|
|
54
|
-
export { AppleIcon, ArrowTrendUpIcon, ArrowsToDotIcon, BankIcon, BestPricesIcon, BoltIcon, CheckCircleIcon, ChartCandlestickIcon, ChartLineIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CloseIcon, CopyIcon, CreateAccountIcon, CreditCardIcon, DisconnectIcon, DotsHorizontalIcon, DocumentIcon, DownloadIcon, ErrorFilledIcon, EthereumIcon, ExternalLinkIcon, GoogleIcon, iconNames, ImageIcon, InfoIcon, LinkAccountsIcon, PencilIcon, PlaySquareIcon, ProfileIcon, RevenueAltIcon, SearchIcon, ShieldTrustIcon, SolanaIcon, StayInControlIcon, TriangleDownIcon, TriangleUpFilledIcon, TriangleUpIcon, UploadIcon, WalletAvatarIcon, WalletIcon, WarningFilledIcon, WarningIcon, };
|
|
57
|
+
export { AppleIcon, ArrowTrendUpIcon, ArrowsToDotIcon, BankIcon, BestPricesIcon, BnbIcon, BoltIcon, CheckCircleIcon, ChartCandlestickIcon, ChartLineIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CloseIcon, CopyIcon, CreateAccountIcon, CreditCardIcon, DisconnectIcon, DotsHorizontalIcon, DocumentIcon, DownloadIcon, ErrorFilledIcon, EthereumIcon, ExternalLinkIcon, GoogleIcon, iconNames, ImageIcon, InfoIcon, LinkAccountsIcon, PencilIcon, PlaySquareIcon, PolygonIcon, ProfileIcon, RevenueAltIcon, SearchIcon, ShieldTrustIcon, SolanaIcon, StayInControlIcon, SuccessCheckIcon, TriangleDownIcon, TriangleUpFilledIcon, TriangleUpIcon, UploadIcon, WalletAvatarIcon, WalletIcon, WarningFilledIcon, WarningIcon, };
|
|
@@ -20,6 +20,10 @@ export declare const iconRegistry: {
|
|
|
20
20
|
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
21
21
|
displayName: string;
|
|
22
22
|
};
|
|
23
|
+
readonly bnb: {
|
|
24
|
+
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
25
|
+
displayName: string;
|
|
26
|
+
};
|
|
23
27
|
readonly bolt: {
|
|
24
28
|
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
25
29
|
displayName: string;
|
|
@@ -132,6 +136,10 @@ export declare const iconRegistry: {
|
|
|
132
136
|
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
133
137
|
displayName: string;
|
|
134
138
|
};
|
|
139
|
+
readonly polygon: {
|
|
140
|
+
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
141
|
+
displayName: string;
|
|
142
|
+
};
|
|
135
143
|
readonly profile: {
|
|
136
144
|
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
137
145
|
displayName: string;
|
|
@@ -156,6 +164,10 @@ export declare const iconRegistry: {
|
|
|
156
164
|
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
157
165
|
displayName: string;
|
|
158
166
|
};
|
|
167
|
+
readonly "success-check": {
|
|
168
|
+
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
169
|
+
displayName: string;
|
|
170
|
+
};
|
|
159
171
|
readonly telegram: {
|
|
160
172
|
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
161
173
|
displayName: string;
|
|
@@ -20,6 +20,10 @@ export declare const iconRegistry: {
|
|
|
20
20
|
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
21
21
|
displayName: string;
|
|
22
22
|
};
|
|
23
|
+
readonly bnb: {
|
|
24
|
+
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
25
|
+
displayName: string;
|
|
26
|
+
};
|
|
23
27
|
readonly bolt: {
|
|
24
28
|
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
25
29
|
displayName: string;
|
|
@@ -132,6 +136,10 @@ export declare const iconRegistry: {
|
|
|
132
136
|
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
133
137
|
displayName: string;
|
|
134
138
|
};
|
|
139
|
+
readonly polygon: {
|
|
140
|
+
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
141
|
+
displayName: string;
|
|
142
|
+
};
|
|
135
143
|
readonly profile: {
|
|
136
144
|
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
137
145
|
displayName: string;
|
|
@@ -156,6 +164,10 @@ export declare const iconRegistry: {
|
|
|
156
164
|
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
157
165
|
displayName: string;
|
|
158
166
|
};
|
|
167
|
+
readonly "success-check": {
|
|
168
|
+
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
169
|
+
displayName: string;
|
|
170
|
+
};
|
|
159
171
|
readonly telegram: {
|
|
160
172
|
({ title, className, ...props }: import("./types").IconSvgProps): JSX.Element;
|
|
161
173
|
displayName: string;
|
|
@@ -7,6 +7,8 @@ export declare const skeletonViews: {
|
|
|
7
7
|
readonly settlement: "settlement";
|
|
8
8
|
readonly placeOrder: "place-order";
|
|
9
9
|
readonly search: "search";
|
|
10
|
+
readonly userProfileOverview: "user-profile-overview";
|
|
11
|
+
readonly userProfilePositionsActivity: "user-profile-positions-activity";
|
|
10
12
|
};
|
|
11
13
|
export type SkeletonView = (typeof skeletonViews)[keyof typeof skeletonViews];
|
|
12
14
|
export type SkeletonProps = {
|
|
@@ -7,6 +7,8 @@ export declare const skeletonViews: {
|
|
|
7
7
|
readonly settlement: "settlement";
|
|
8
8
|
readonly placeOrder: "place-order";
|
|
9
9
|
readonly search: "search";
|
|
10
|
+
readonly userProfileOverview: "user-profile-overview";
|
|
11
|
+
readonly userProfilePositionsActivity: "user-profile-positions-activity";
|
|
10
12
|
};
|
|
11
13
|
export type SkeletonView = (typeof skeletonViews)[keyof typeof skeletonViews];
|
|
12
14
|
export type SkeletonProps = {
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { TooltipProps } from "./tooltip.types";
|
|
2
|
+
export type { TooltipProps } from "./tooltip.types";
|
|
3
|
+
export declare const Tooltip: {
|
|
4
|
+
({ content, children, size, side, delayDuration, collisionPadding, classNames, "aria-label": ariaLabel, }: TooltipProps): JSX.Element;
|
|
5
|
+
displayName: string;
|
|
6
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { TooltipProps } from "./tooltip.types";
|
|
2
|
+
export type { TooltipProps } from "./tooltip.types";
|
|
3
|
+
export declare const Tooltip: {
|
|
4
|
+
({ content, children, size, side, delayDuration, collisionPadding, classNames, "aria-label": ariaLabel, }: TooltipProps): JSX.Element;
|
|
5
|
+
displayName: string;
|
|
6
|
+
};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { AvailableSizes } from "../../shared/types";
|
|
3
|
+
export type TooltipSide = "top" | "right" | "bottom" | "left";
|
|
4
|
+
export type TooltipClassNames = {
|
|
5
|
+
content?: string;
|
|
6
|
+
trigger?: string;
|
|
7
|
+
arrow?: string;
|
|
8
|
+
};
|
|
9
|
+
export interface TooltipProps {
|
|
10
|
+
/** Content rendered inside the tooltip surface. */
|
|
11
|
+
content: ReactNode;
|
|
12
|
+
/** Trigger element. If omitted, a default info icon trigger is rendered. */
|
|
13
|
+
children?: ReactNode;
|
|
14
|
+
/** Semantic size controlling padding and arrow radius. */
|
|
15
|
+
size?: Exclude<AvailableSizes, "large">;
|
|
16
|
+
/** Preferred side to display the tooltip. */
|
|
17
|
+
side?: TooltipSide;
|
|
18
|
+
/** Delay in ms before opening on hover/focus. */
|
|
19
|
+
delayDuration?: number;
|
|
20
|
+
/** Collision padding for viewport/surface boundaries. */
|
|
21
|
+
collisionPadding?: number;
|
|
22
|
+
/** Optional className overrides for internal parts. */
|
|
23
|
+
classNames?: TooltipClassNames;
|
|
24
|
+
/** Accessible label for the default icon trigger. Ignored when a custom trigger is provided. */
|
|
25
|
+
"aria-label"?: string;
|
|
26
|
+
}
|
|
27
|
+
export type TooltipSize = NonNullable<TooltipProps["size"]>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { AvailableSizes } from "../../shared/types";
|
|
3
|
+
export type TooltipSide = "top" | "right" | "bottom" | "left";
|
|
4
|
+
export type TooltipClassNames = {
|
|
5
|
+
content?: string;
|
|
6
|
+
trigger?: string;
|
|
7
|
+
arrow?: string;
|
|
8
|
+
};
|
|
9
|
+
export interface TooltipProps {
|
|
10
|
+
/** Content rendered inside the tooltip surface. */
|
|
11
|
+
content: ReactNode;
|
|
12
|
+
/** Trigger element. If omitted, a default info icon trigger is rendered. */
|
|
13
|
+
children?: ReactNode;
|
|
14
|
+
/** Semantic size controlling padding and arrow radius. */
|
|
15
|
+
size?: Exclude<AvailableSizes, "large">;
|
|
16
|
+
/** Preferred side to display the tooltip. */
|
|
17
|
+
side?: TooltipSide;
|
|
18
|
+
/** Delay in ms before opening on hover/focus. */
|
|
19
|
+
delayDuration?: number;
|
|
20
|
+
/** Collision padding for viewport/surface boundaries. */
|
|
21
|
+
collisionPadding?: number;
|
|
22
|
+
/** Optional className overrides for internal parts. */
|
|
23
|
+
classNames?: TooltipClassNames;
|
|
24
|
+
/** Accessible label for the default icon trigger. Ignored when a custom trigger is provided. */
|
|
25
|
+
"aria-label"?: string;
|
|
26
|
+
}
|
|
27
|
+
export type TooltipSize = NonNullable<TooltipProps["size"]>;
|
|
@@ -11,6 +11,6 @@ export interface AboutTabProps {
|
|
|
11
11
|
draftAvatarPreview?: string;
|
|
12
12
|
}
|
|
13
13
|
export declare const AboutTab: {
|
|
14
|
-
({ avatarPreview, onDeleteProfile, draftUsername, onDraftUsernameChange, onDraftAvatarChange, draftAvatarPreview, }: AboutTabProps): JSX.Element;
|
|
14
|
+
({ avatarPreview, onDeleteProfile: _onDeleteProfile, draftUsername, onDraftUsernameChange, onDraftAvatarChange, draftAvatarPreview, }: AboutTabProps): JSX.Element;
|
|
15
15
|
displayName: string;
|
|
16
16
|
};
|