hive-react-kit 1.6.5 → 1.6.7
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/build.css +10 -0
- package/dist/components/HiveDetailPost.d.ts +13 -1
- package/dist/components/Wallet.d.ts +5 -0
- package/dist/components/actionButtons/PostActionButton.d.ts +7 -1
- package/dist/components/inlineComments/InlineCommentItem.d.ts +4 -1
- package/dist/components/inlineComments/InlineCommentSection.d.ts +4 -1
- package/dist/components/user/UserDetailProfile.d.ts +14 -0
- package/dist/i18n/messages.d.ts +1 -1
- package/dist/index.cjs.js +218 -218
- package/dist/index.esm.js +22351 -22263
- package/package.json +1 -1
package/dist/build.css
CHANGED
|
@@ -3649,6 +3649,16 @@
|
|
|
3649
3649
|
}
|
|
3650
3650
|
}
|
|
3651
3651
|
}
|
|
3652
|
+
.hover\:border-blue-400\/50 {
|
|
3653
|
+
&:hover {
|
|
3654
|
+
@media (hover: hover) {
|
|
3655
|
+
border-color: color-mix(in srgb, oklch(70.7% 0.165 254.624) 50%, transparent);
|
|
3656
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
3657
|
+
border-color: color-mix(in oklab, var(--color-blue-400) 50%, transparent);
|
|
3658
|
+
}
|
|
3659
|
+
}
|
|
3660
|
+
}
|
|
3661
|
+
}
|
|
3652
3662
|
.hover\:border-blue-500 {
|
|
3653
3663
|
&:hover {
|
|
3654
3664
|
@media (hover: hover) {
|
|
@@ -102,6 +102,14 @@ export interface HiveDetailPostProps {
|
|
|
102
102
|
parent_permlink: string;
|
|
103
103
|
json_metadata: string;
|
|
104
104
|
}) => void;
|
|
105
|
+
/** Called when the post author taps Delete on their own post. Only
|
|
106
|
+
* rendered as an action when `currentUser === post.author`. The
|
|
107
|
+
* consumer is responsible for confirming and broadcasting the
|
|
108
|
+
* `delete_comment` operation. */
|
|
109
|
+
onDelete?: (data: {
|
|
110
|
+
author: string;
|
|
111
|
+
permlink: string;
|
|
112
|
+
}) => void;
|
|
105
113
|
onShareComment?: (author: string, permlink: string) => void;
|
|
106
114
|
onTipComment?: (author: string, permlink: string) => void;
|
|
107
115
|
onReportComment?: (author: string, permlink: string) => void;
|
|
@@ -123,6 +131,10 @@ export interface HiveDetailPostProps {
|
|
|
123
131
|
parent_permlink: string;
|
|
124
132
|
json_metadata: string;
|
|
125
133
|
}) => void;
|
|
134
|
+
/** Called when the comment author taps Delete on their own comment.
|
|
135
|
+
* Only rendered on comments whose author matches `currentUser`. The
|
|
136
|
+
* consumer confirms and broadcasts the `delete_comment` operation. */
|
|
137
|
+
onDeleteComment?: (author: string, permlink: string) => void;
|
|
126
138
|
/**
|
|
127
139
|
* Called when the user submits a poll vote.
|
|
128
140
|
* @param author - post author
|
|
@@ -200,5 +212,5 @@ export interface HiveDetailPostProps {
|
|
|
200
212
|
* page will then re-render with the new language. */
|
|
201
213
|
onSelectLanguage?: (code: string) => void;
|
|
202
214
|
}
|
|
203
|
-
export declare function HiveDetailPost({ author, permlink, currentUser, onUpvote, onSubmitComment, onClickCommentUpvote, onReblog, onShare, onTip, onReport, onEdit, onShareComment, onTipComment, onReportComment, onToggleCommentBookmark, isCommentBookmarked, onEditComment, ecencyToken, threeSpeakApiKey, giphyApiKey, templateToken, templateApiBaseUrl, reportedAuthors, reportedPosts, hiveIconUrl, backgroundColor, onBack, onUserClick, onCommunityClick, getUserUrl, getCommunityUrl, onNavigateToPost, isBookmarked, onToggleBookmark, onHeaderShare, onHeaderReport, language, onSelectLanguage, onVotePoll, showVoteButton, processBody, defaultReward, defaultBeneficiaries, beneficiaryFavorites, defaultVotePercent, voteWeightStep, allowLandscapeVideos, renderOptions, awaitingWalletApproval, }: HiveDetailPostProps): import("react/jsx-runtime").JSX.Element;
|
|
215
|
+
export declare function HiveDetailPost({ author, permlink, currentUser, onUpvote, onSubmitComment, onClickCommentUpvote, onReblog, onShare, onTip, onReport, onEdit, onDelete, onShareComment, onTipComment, onReportComment, onToggleCommentBookmark, isCommentBookmarked, onEditComment, onDeleteComment, ecencyToken, threeSpeakApiKey, giphyApiKey, templateToken, templateApiBaseUrl, reportedAuthors, reportedPosts, hiveIconUrl, backgroundColor, onBack, onUserClick, onCommunityClick, getUserUrl, getCommunityUrl, onNavigateToPost, isBookmarked, onToggleBookmark, onHeaderShare, onHeaderReport, language, onSelectLanguage, onVotePoll, showVoteButton, processBody, defaultReward, defaultBeneficiaries, beneficiaryFavorites, defaultVotePercent, voteWeightStep, allowLandscapeVideos, renderOptions, awaitingWalletApproval, }: HiveDetailPostProps): import("react/jsx-runtime").JSX.Element;
|
|
204
216
|
export default HiveDetailPost;
|
|
@@ -4,6 +4,11 @@ import { type Currency } from "./WalletActionModals";
|
|
|
4
4
|
interface WalletProps {
|
|
5
5
|
username?: string;
|
|
6
6
|
className?: string;
|
|
7
|
+
/** The actual scroll container this wallet lives inside. When provided,
|
|
8
|
+
* the transaction-history infinite scroll observes it directly instead
|
|
9
|
+
* of the viewport — `root: null` is unreliable inside the profile's
|
|
10
|
+
* nested scroll pane (the sentinel never crosses the viewport). */
|
|
11
|
+
scrollRootRef?: React.RefObject<HTMLElement | null>;
|
|
7
12
|
/** Logged-in user — when equal to `username`, RC Update / Delete buttons
|
|
8
13
|
* and Delegate HP/RC buttons are exposed (and only fire when the matching
|
|
9
14
|
* callbacks below are wired). */
|
|
@@ -94,6 +94,12 @@ export interface PostActionButtonProps {
|
|
|
94
94
|
onDelete?: () => void;
|
|
95
95
|
/** Called when user confirms comment upvote with (author, permlink, percent). Frontend handles signing. Voted comments show icon in blue. */
|
|
96
96
|
onClickCommentUpvote?: (author: string, permlink: string, percent: number) => void | Promise<void>;
|
|
97
|
+
/** Tapping a voter inside the upvote-list dialog calls this with the
|
|
98
|
+
* account name so the consumer can open that user's profile. */
|
|
99
|
+
onUserClick?: (username: string) => void;
|
|
100
|
+
/** Builds a profile URL for each voter row so they render as real
|
|
101
|
+
* <a href> links (open-in-new-tab); paired with `onUserClick`. */
|
|
102
|
+
getUserUrl?: (username: string) => string;
|
|
97
103
|
/** Ecency image hosting token — enables image upload in comment composer */
|
|
98
104
|
ecencyToken?: string;
|
|
99
105
|
/** 3Speak API key — enables audio/video upload in comment composer */
|
|
@@ -139,5 +145,5 @@ export interface PostActionButtonProps {
|
|
|
139
145
|
* polls, community detail) where there isn't room for four icons. */
|
|
140
146
|
actionsAsMenu?: boolean;
|
|
141
147
|
}
|
|
142
|
-
export declare function PostActionButton({ author, permlink, currentUser: currentUserProp, hiveValue, hiveIconUrl, payoutTooltip, payoutDetails, initialVotes, initialVoteCount, initialCommentsCount, onUpvote, onSubmitComment, onComments, onEdit, onReblog, onReSnap, onShare, onTip, onReport, onToggleBookmark, isBookmarked, onDelete, onClickCommentUpvote, ecencyToken, threeSpeakApiKey, giphyApiKey, templateToken, templateApiBaseUrl, disableCommentsModal, onClickCommentIcon, onClickCommentCount, hasCommented, myReplyKey, showVoteButton, parentTags, defaultReward, defaultBeneficiaries, beneficiaryFavorites, defaultVotePercent, voteWeightStep, allowLandscapeVideos, actionsAsMenu, awaitingWalletApproval, postCreatedAt, size, }: PostActionButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
148
|
+
export declare function PostActionButton({ author, permlink, currentUser: currentUserProp, hiveValue, hiveIconUrl, payoutTooltip, payoutDetails, initialVotes, initialVoteCount, initialCommentsCount, onUpvote, onSubmitComment, onComments, onEdit, onReblog, onReSnap, onShare, onTip, onReport, onToggleBookmark, isBookmarked, onDelete, onClickCommentUpvote, onUserClick, getUserUrl, ecencyToken, threeSpeakApiKey, giphyApiKey, templateToken, templateApiBaseUrl, disableCommentsModal, onClickCommentIcon, onClickCommentCount, hasCommented, myReplyKey, showVoteButton, parentTags, defaultReward, defaultBeneficiaries, beneficiaryFavorites, defaultVotePercent, voteWeightStep, allowLandscapeVideos, actionsAsMenu, awaitingWalletApproval, postCreatedAt, size, }: PostActionButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
143
149
|
export default PostActionButton;
|
|
@@ -45,6 +45,9 @@ interface InlineCommentItemProps {
|
|
|
45
45
|
parent_permlink: string;
|
|
46
46
|
json_metadata: string;
|
|
47
47
|
}) => void;
|
|
48
|
+
/** Called when the author of this comment taps Delete. Each row gates
|
|
49
|
+
* the entry-point internally to `comment.author === currentUser`. */
|
|
50
|
+
onDeleteComment?: (author: string, permlink: string) => void;
|
|
48
51
|
/** Called when an intra-body link points at a Hive post (peakd/hive.blog/ecency/inleo). */
|
|
49
52
|
onNavigateToPost?: (author: string, permlink: string) => void;
|
|
50
53
|
/** Called when an intra-body link points at a Hive user profile. */
|
|
@@ -74,5 +77,5 @@ interface InlineCommentItemProps {
|
|
|
74
77
|
ipfsGateway?: string;
|
|
75
78
|
};
|
|
76
79
|
}
|
|
77
|
-
export default function InlineCommentItem({ comment, allComments, onReply, onCancelReply, onCommentSubmit, activeReplyKey, currentUser, token, depth, onVotedRefresh, onClickCommentUpvote, ecencyToken, threeSpeakApiKey, giphyApiKey, templateToken, templateApiBaseUrl, hiveIconUrl, onShareComment, onTipComment, onReportComment, onToggleCommentBookmark, isCommentBookmarked, mentionSeedAccounts, onEditComment, onNavigateToPost, onUserClick, defaultReward, defaultBeneficiaries, beneficiaryFavorites, defaultVotePercent, voteWeightStep, allowLandscapeVideos, awaitingWalletApproval, renderOptions, }: InlineCommentItemProps): import("react/jsx-runtime").JSX.Element;
|
|
80
|
+
export default function InlineCommentItem({ comment, allComments, onReply, onCancelReply, onCommentSubmit, activeReplyKey, currentUser, token, depth, onVotedRefresh, onClickCommentUpvote, ecencyToken, threeSpeakApiKey, giphyApiKey, templateToken, templateApiBaseUrl, hiveIconUrl, onShareComment, onTipComment, onReportComment, onToggleCommentBookmark, isCommentBookmarked, mentionSeedAccounts, onEditComment, onDeleteComment, onNavigateToPost, onUserClick, defaultReward, defaultBeneficiaries, beneficiaryFavorites, defaultVotePercent, voteWeightStep, allowLandscapeVideos, awaitingWalletApproval, renderOptions, }: InlineCommentItemProps): import("react/jsx-runtime").JSX.Element;
|
|
78
81
|
export {};
|
|
@@ -74,10 +74,13 @@ interface InlineCommentSectionProps {
|
|
|
74
74
|
parent_permlink: string;
|
|
75
75
|
json_metadata: string;
|
|
76
76
|
}) => void;
|
|
77
|
+
/** Delete a comment — only surfaced on the current user's own
|
|
78
|
+
* comments. Consumer confirms + broadcasts `delete_comment`. */
|
|
79
|
+
onDeleteComment?: (author: string, permlink: string) => void;
|
|
77
80
|
/** Intercept intra-body Hive post links in comment bodies. */
|
|
78
81
|
onNavigateToPost?: (author: string, permlink: string) => void;
|
|
79
82
|
/** Intercept intra-body Hive profile links in comment bodies. */
|
|
80
83
|
onUserClick?: (username: string) => void;
|
|
81
84
|
}
|
|
82
|
-
export default function InlineCommentSection({ author, permlink, currentUser, token, onSubmitComment, onClickCommentUpvote, ecencyToken, threeSpeakApiKey, giphyApiKey, templateToken, templateApiBaseUrl, reportedAuthors, reportedPosts, hiveIconUrl, onShareComment, onTipComment, onReportComment, onToggleCommentBookmark, isCommentBookmarked, mentionSeedAccounts, onEditComment, onNavigateToPost, onUserClick, showVoteButton, alreadyVoted, parentTags, defaultReward, defaultBeneficiaries, beneficiaryFavorites, defaultVotePercent, voteWeightStep, allowLandscapeVideos, awaitingWalletApproval, renderOptions, }: InlineCommentSectionProps): import("react/jsx-runtime").JSX.Element;
|
|
85
|
+
export default function InlineCommentSection({ author, permlink, currentUser, token, onSubmitComment, onClickCommentUpvote, ecencyToken, threeSpeakApiKey, giphyApiKey, templateToken, templateApiBaseUrl, reportedAuthors, reportedPosts, hiveIconUrl, onShareComment, onTipComment, onReportComment, onToggleCommentBookmark, isCommentBookmarked, mentionSeedAccounts, onEditComment, onDeleteComment, onNavigateToPost, onUserClick, showVoteButton, alreadyVoted, parentTags, defaultReward, defaultBeneficiaries, beneficiaryFavorites, defaultVotePercent, voteWeightStep, allowLandscapeVideos, awaitingWalletApproval, renderOptions, }: InlineCommentSectionProps): import("react/jsx-runtime").JSX.Element;
|
|
83
86
|
export {};
|
|
@@ -193,6 +193,20 @@ export interface UserDetailProfileProps {
|
|
|
193
193
|
/** Per-card right-side header action menu (Edit / Delete / Flag) for the
|
|
194
194
|
* Snaps tab. Forwarded into <SnapsFeedView/>. */
|
|
195
195
|
renderSnapHeaderActions?: (post: Post) => React.ReactNode;
|
|
196
|
+
/** Renders the Hive Engine (layer-2 tokens) view shown via a sub-toggle
|
|
197
|
+
* inside the Wallet tab. The kit has no engine data layer, so the
|
|
198
|
+
* consumer supplies the UI; `isOwn` is true when the viewed profile is
|
|
199
|
+
* the logged-in user (gate transfers on it). When omitted the toggle
|
|
200
|
+
* and tokens view are not shown. */
|
|
201
|
+
renderEngineTokens?: (username: string, isOwn: boolean) => React.ReactNode;
|
|
202
|
+
/** Which Wallet sub-view to show: the native wallet or the Hive Engine
|
|
203
|
+
* tokens list. When paired with `onWalletViewChange` this becomes the
|
|
204
|
+
* controlled value (URL-driven); otherwise it's just the initial
|
|
205
|
+
* value and the toggle manages its own state. */
|
|
206
|
+
walletInitialView?: "wallet" | "tokens";
|
|
207
|
+
/** Fires when the user flips the Wallet/Tokens sub-toggle. Wire this to
|
|
208
|
+
* push the choice into the URL (`?wv=`) for query-param routing. */
|
|
209
|
+
onWalletViewChange?: (view: "wallet" | "tokens") => void;
|
|
196
210
|
/** Wire this on the consumer's own profile to surface an "Edit profile"
|
|
197
211
|
* affordance over the avatar. Only invoked when
|
|
198
212
|
* `currentUsername === username`. The consumer owns the modal /
|
package/dist/i18n/messages.d.ts
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* Missing keys for a non-English language fall back to the English entry,
|
|
16
16
|
* which is the source of truth for every label.
|
|
17
17
|
*/
|
|
18
|
-
export type KitMessageKey = "tab.blogs" | "tab.posts" | "tab.snaps" | "tab.polls" | "tab.comments" | "tab.replies" | "tab.activities" | "tab.authorRewards" | "tab.curationRewards" | "tab.growth" | "tab.followers" | "tab.following" | "tab.wallet" | "tab.votingPower" | "tab.badges" | "tab.witnessVotes" | "meta.followers" | "meta.following" | "meta.posts" | "action.follow" | "action.unfollow" | "action.ignoreAuthor" | "action.mute" | "action.unmute" | "action.reportUser" | "action.shareProfile" | "action.cancel" | "action.confirmIgnore" | "action.processing" | "modal.ignoreAuthorTitle" | "modal.ignoreAuthorBody" | "empty.noBlogs" | "empty.noPosts" | "empty.noSnaps" | "empty.noPolls" | "empty.noComments" | "empty.noReplies" | "empty.noFollowers" | "empty.notFollowing" | "empty.noBadges" | "empty.noWitnessVotes" | "empty.noPendingAuthor" | "empty.noPendingCuration" | "empty.curationHint" | "empty.votingPowerUnavailable" | "empty.userNotFound" | "status.active" | "status.ended" | "poll.selectAnOption" | "poll.selectUpTo" | "poll.changeYourVote" | "poll.selected" | "poll.submitVote" | "poll.submitVotes" | "poll.changeVote" | "poll.submitting" | "poll.voted" | "poll.voteChangesAllowed" | "poll.voter" | "poll.voters" | "poll.option" | "poll.options" | "poll.endsIn" | "common.translating" | "common.processing" | "common.fullyCharged" | "reward.pendingAuthor" | "reward.pendingCuration" | "reward.posts" | "reward.comments" | "reward.totalHbd" | "reward.totalHp" | "reward.avgEfficiency" | "reward.post" | "reward.comment" | "vp.upvotePower" | "vp.downvotePower" | "vp.resourceCredits";
|
|
18
|
+
export type KitMessageKey = "tab.blogs" | "tab.posts" | "tab.snaps" | "tab.polls" | "tab.comments" | "tab.replies" | "tab.activities" | "tab.authorRewards" | "tab.curationRewards" | "tab.growth" | "tab.followers" | "tab.following" | "tab.wallet" | "tab.engineTokens" | "tab.votingPower" | "tab.badges" | "tab.witnessVotes" | "meta.followers" | "meta.following" | "meta.posts" | "action.follow" | "action.unfollow" | "action.ignoreAuthor" | "action.mute" | "action.unmute" | "action.reportUser" | "action.shareProfile" | "action.cancel" | "action.confirmIgnore" | "action.processing" | "modal.ignoreAuthorTitle" | "modal.ignoreAuthorBody" | "empty.noBlogs" | "empty.noPosts" | "empty.noSnaps" | "empty.noPolls" | "empty.noComments" | "empty.noReplies" | "empty.noFollowers" | "empty.notFollowing" | "empty.noBadges" | "empty.noWitnessVotes" | "empty.noPendingAuthor" | "empty.noPendingCuration" | "empty.curationHint" | "empty.votingPowerUnavailable" | "empty.userNotFound" | "status.active" | "status.ended" | "poll.selectAnOption" | "poll.selectUpTo" | "poll.changeYourVote" | "poll.selected" | "poll.submitVote" | "poll.submitVotes" | "poll.changeVote" | "poll.submitting" | "poll.voted" | "poll.voteChangesAllowed" | "poll.voter" | "poll.voters" | "poll.option" | "poll.options" | "poll.endsIn" | "common.translating" | "common.processing" | "common.fullyCharged" | "reward.pendingAuthor" | "reward.pendingCuration" | "reward.posts" | "reward.comments" | "reward.totalHbd" | "reward.totalHp" | "reward.avgEfficiency" | "reward.post" | "reward.comment" | "vp.upvotePower" | "vp.downvotePower" | "vp.resourceCredits";
|
|
19
19
|
export type KitMessages = Partial<Record<KitMessageKey, string>>;
|
|
20
20
|
export declare const BUILTIN_MESSAGES: Record<string, Record<string, string>>;
|
|
21
21
|
/**
|