hive-react-kit 1.9.9 → 1.10.2

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 CHANGED
@@ -6158,10 +6158,31 @@
6158
6158
  .hive-post-body img {
6159
6159
  max-width: 100%;
6160
6160
  height: auto;
6161
+ max-height: 80vh;
6162
+ object-fit: contain;
6161
6163
  border-radius: 0.75rem;
6162
6164
  margin: 1rem auto;
6163
6165
  display: block;
6164
6166
  }
6167
+ .hive-post-body .hive-image-gallery {
6168
+ display: flex;
6169
+ flex-wrap: wrap;
6170
+ gap: 0.5rem;
6171
+ margin: 1rem 0;
6172
+ justify-content: center;
6173
+ }
6174
+ .hive-post-body .hive-image-gallery .hive-img-figure {
6175
+ flex: 1 1 0%;
6176
+ min-width: 200px;
6177
+ margin: 0;
6178
+ }
6179
+ .hive-post-body .hive-image-gallery .hive-img-figure img {
6180
+ margin: 0;
6181
+ width: 100%;
6182
+ height: 100%;
6183
+ object-fit: contain;
6184
+ max-height: 80vh;
6185
+ }
6165
6186
  .hive-post-body blockquote {
6166
6187
  border-left: 4px solid #3b82f680;
6167
6188
  background: #1f293780;
@@ -6561,6 +6582,8 @@
6561
6582
  .snaps-feed-body img {
6562
6583
  max-width: 100%;
6563
6584
  height: auto;
6585
+ max-height: 80vh;
6586
+ object-fit: contain;
6564
6587
  border-radius: 0.5rem;
6565
6588
  margin: 0.25rem 0;
6566
6589
  }
@@ -7,6 +7,10 @@ interface LanguagePickerButtonProps {
7
7
  /** Optional override for the language list. Defaults to the same
8
8
  * 15-language set used by the selection-translate popover. */
9
9
  languages?: SelectionTranslateLanguage[];
10
+ /** Optional class name to override styling. */
11
+ className?: string;
12
+ /** Optional flag to render as a menu item instead of header button. */
13
+ isMenuItem?: boolean;
10
14
  }
11
- export declare function LanguagePickerButton({ language, onSelectLanguage, languages, }: LanguagePickerButtonProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function LanguagePickerButton({ language, onSelectLanguage, languages, className, isMenuItem, }: LanguagePickerButtonProps): import("react/jsx-runtime").JSX.Element;
12
16
  export default LanguagePickerButton;
@@ -27,8 +27,22 @@ export interface UserDetailProfileProps {
27
27
  */
28
28
  activeTab?: TabType;
29
29
  /** Called whenever the user clicks a different tab. Fires whether or
30
- * not `activeTab` is supplied. */
30
+ * not `activeTab` is supplied. Always fires with the PARENT tab name
31
+ * (e.g. `"posts"`, not `"blogs"`). */
31
32
  onActiveTabChange?: (tab: TabType) => void;
33
+ /**
34
+ * Called whenever the user switches a sub-tab toggle (Blogs/Posts,
35
+ * Comments/Replies, etc.). Receives both the parent tab name and the
36
+ * sub-tab name so the host app can sync the URL (e.g. `?subtab=blogs`).
37
+ */
38
+ onSubTabChange?: (parentTab: TabType, subTab: string) => void;
39
+ /**
40
+ * Initial sub-tab to activate within the parent `activeTab`. Lets the
41
+ * host app restore a sub-tab from the URL on first render.
42
+ * E.g. `initialSubTab="replies"` opens the Replies sub-tab inside the
43
+ * parent Replies tab.
44
+ */
45
+ initialSubTab?: string;
32
46
  /** Ecency image hosting token — enables image and video thumbnail upload in comment composer */
33
47
  ecencyToken?: string;
34
48
  /** 3Speak API key — enables audio and video upload in comment composer */
@@ -231,6 +245,6 @@ export interface UserDetailProfileProps {
231
245
  * `addAccountAuthority` / `removeAccountAuthority`). */
232
246
  onPostingAuthority?: () => void;
233
247
  }
234
- type TabType = "blogs" | "posts" | "snaps" | "polls" | "comments" | "replies" | "activities" | "authorRewards" | "curationRewards" | "followers" | "following" | "wallet" | "votingPower" | "badges" | "witnessVotes" | "growth" | "curation";
248
+ type TabType = "blogs" | "posts" | "snaps" | "polls" | "comments" | "replies" | "activities" | "authorRewards" | "curationRewards" | "followers" | "following" | "wallet" | "votingPower" | "badges" | "witnessVotes" | "growth" | "curation" | "rewards" | "tokens" | "follows";
235
249
  declare const UserDetailProfile: React.FC<UserDetailProfileProps>;
236
250
  export default UserDetailProfile;
@@ -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.engineTokens" | "tab.votingPower" | "tab.badges" | "tab.witnessVotes" | "tab.curation" | "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" | "empty.noCuration" | "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.follows" | "tab.wallet" | "tab.engineTokens" | "tab.rewards" | "tab.votingPower" | "tab.badges" | "tab.witnessVotes" | "tab.curation" | "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" | "empty.noCuration" | "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
  /**