@streamplace/components 0.9.9 → 0.9.11
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/assets/badges/live.png +0 -0
- package/assets/badges/live_2x.png +0 -0
- package/assets/badges/mod.png +0 -0
- package/assets/badges/mod_2x.png +0 -0
- package/assets/badges/vip.png +0 -0
- package/assets/badges/vip_2x.png +0 -0
- package/dist/components/chat/badge.d.ts +10 -0
- package/dist/components/chat/badge.d.ts.map +1 -0
- package/dist/components/chat/badge.js +29 -0
- package/dist/components/chat/badge.js.map +1 -0
- package/dist/components/chat/chat-box.d.ts +5 -1
- package/dist/components/chat/chat-box.d.ts.map +1 -1
- package/dist/components/chat/chat-box.js +55 -50
- package/dist/components/chat/chat-box.js.map +1 -1
- package/dist/components/chat/chat-message.d.ts.map +1 -1
- package/dist/components/chat/chat-message.js +16 -11
- package/dist/components/chat/chat-message.js.map +1 -1
- package/dist/components/chat/chat.d.ts.map +1 -1
- package/dist/components/chat/chat.js +35 -41
- package/dist/components/chat/chat.js.map +1 -1
- package/dist/components/chat/emoji-suggestions.d.ts +7 -18
- package/dist/components/chat/emoji-suggestions.d.ts.map +1 -1
- package/dist/components/chat/emoji-suggestions.js +6 -2
- package/dist/components/chat/emoji-suggestions.js.map +1 -1
- package/dist/components/chat/system-message.d.ts.map +1 -1
- package/dist/components/chat/system-message.js +9 -1
- package/dist/components/chat/system-message.js.map +1 -1
- package/dist/components/chat/teleport-modal.d.ts +9 -0
- package/dist/components/chat/teleport-modal.d.ts.map +1 -0
- package/dist/components/chat/teleport-modal.js +148 -0
- package/dist/components/chat/teleport-modal.js.map +1 -0
- package/dist/components/chat/user-profile-card.d.ts +12 -0
- package/dist/components/chat/user-profile-card.d.ts.map +1 -0
- package/dist/components/chat/user-profile-card.js +136 -0
- package/dist/components/chat/user-profile-card.js.map +1 -0
- package/dist/components/dashboard/chat-panel.d.ts +3 -1
- package/dist/components/dashboard/chat-panel.d.ts.map +1 -1
- package/dist/components/dashboard/chat-panel.js +2 -2
- package/dist/components/dashboard/chat-panel.js.map +1 -1
- package/dist/components/dashboard/header.d.ts +1 -1
- package/dist/components/dashboard/header.d.ts.map +1 -1
- package/dist/components/dashboard/header.js +4 -0
- package/dist/components/dashboard/header.js.map +1 -1
- package/dist/components/dashboard/information-widget.d.ts.map +1 -1
- package/dist/components/dashboard/information-widget.js +13 -11
- package/dist/components/dashboard/information-widget.js.map +1 -1
- package/dist/components/mobile-player/fullscreen.d.ts.map +1 -1
- package/dist/components/mobile-player/fullscreen.js +2 -1
- package/dist/components/mobile-player/fullscreen.js.map +1 -1
- package/dist/components/mobile-player/fullscreen.native.d.ts.map +1 -1
- package/dist/components/mobile-player/fullscreen.native.js +3 -2
- package/dist/components/mobile-player/fullscreen.native.js.map +1 -1
- package/dist/components/mobile-player/ui/audio-only-overlay.d.ts +2 -0
- package/dist/components/mobile-player/ui/audio-only-overlay.d.ts.map +1 -0
- package/dist/components/mobile-player/ui/audio-only-overlay.js +29 -0
- package/dist/components/mobile-player/ui/audio-only-overlay.js.map +1 -0
- package/dist/components/mobile-player/ui/index.d.ts +1 -0
- package/dist/components/mobile-player/ui/index.d.ts.map +1 -1
- package/dist/components/mobile-player/ui/index.js +1 -0
- package/dist/components/mobile-player/ui/index.js.map +1 -1
- package/dist/components/mobile-player/ui/input.d.ts +1 -2
- package/dist/components/mobile-player/ui/input.d.ts.map +1 -1
- package/dist/components/mobile-player/ui/input.js +2 -2
- package/dist/components/mobile-player/ui/input.js.map +1 -1
- package/dist/components/mobile-player/ui/metrics.d.ts.map +1 -1
- package/dist/components/mobile-player/ui/metrics.js +20 -2
- package/dist/components/mobile-player/ui/metrics.js.map +1 -1
- package/dist/components/mobile-player/ui/viewer-context-menu.d.ts.map +1 -1
- package/dist/components/mobile-player/ui/viewer-context-menu.js +29 -1
- package/dist/components/mobile-player/ui/viewer-context-menu.js.map +1 -1
- package/dist/components/mobile-player/use-webrtc.d.ts +4 -2
- package/dist/components/mobile-player/use-webrtc.d.ts.map +1 -1
- package/dist/components/mobile-player/use-webrtc.js +89 -15
- package/dist/components/mobile-player/use-webrtc.js.map +1 -1
- package/dist/components/mobile-player/video-async.native.d.ts.map +1 -1
- package/dist/components/mobile-player/video-async.native.js +15 -5
- package/dist/components/mobile-player/video-async.native.js.map +1 -1
- package/dist/components/mobile-player/video.d.ts.map +1 -1
- package/dist/components/mobile-player/video.js +10 -7
- package/dist/components/mobile-player/video.js.map +1 -1
- package/dist/components/ui/dialog.d.ts.map +1 -1
- package/dist/components/ui/dialog.js +8 -0
- package/dist/components/ui/dialog.js.map +1 -1
- package/dist/hooks/useLivestreamInfo.d.ts +0 -2
- package/dist/hooks/useLivestreamInfo.d.ts.map +1 -1
- package/dist/hooks/useLivestreamInfo.js +13 -24
- package/dist/hooks/useLivestreamInfo.js.map +1 -1
- package/dist/hooks/useSegmentTiming.d.ts +1 -1
- package/dist/hooks/useSegmentTiming.d.ts.map +1 -1
- package/dist/hooks/useSegmentTiming.js +4 -0
- package/dist/hooks/useSegmentTiming.js.map +1 -1
- package/dist/i18n/i18n-loader.native.d.ts.map +1 -1
- package/dist/i18n/i18n-loader.native.js +13 -4
- package/dist/i18n/i18n-loader.native.js.map +1 -1
- package/dist/lib/slash-commands/teleport.d.ts +5 -1
- package/dist/lib/slash-commands/teleport.d.ts.map +1 -1
- package/dist/lib/slash-commands/teleport.js +57 -1
- package/dist/lib/slash-commands/teleport.js.map +1 -1
- package/dist/livestream-store/chat.d.ts +1 -0
- package/dist/livestream-store/chat.d.ts.map +1 -1
- package/dist/livestream-store/chat.js +10 -1
- package/dist/livestream-store/chat.js.map +1 -1
- package/dist/livestream-store/livestream-state.d.ts +2 -0
- package/dist/livestream-store/livestream-state.d.ts.map +1 -1
- package/dist/livestream-store/livestream-store.d.ts +1 -1
- package/dist/livestream-store/livestream-store.d.ts.map +1 -1
- package/dist/livestream-store/livestream-store.js +10 -1
- package/dist/livestream-store/livestream-store.js.map +1 -1
- package/dist/livestream-store/websocket-consumer.d.ts.map +1 -1
- package/dist/livestream-store/websocket-consumer.js +1 -0
- package/dist/livestream-store/websocket-consumer.js.map +1 -1
- package/dist/player-store/player-state.d.ts +1 -5
- package/dist/player-store/player-state.d.ts.map +1 -1
- package/dist/player-store/player-store.d.ts.map +1 -1
- package/dist/player-store/player-store.js +16 -5
- package/dist/player-store/player-store.js.map +1 -1
- package/dist/player-store/single-player-provider.d.ts +0 -2
- package/dist/player-store/single-player-provider.d.ts.map +1 -1
- package/dist/player-store/single-player-provider.js +0 -2
- package/dist/player-store/single-player-provider.js.map +1 -1
- package/dist/streamplace-store/stream.d.ts +4 -2
- package/dist/streamplace-store/stream.d.ts.map +1 -1
- package/dist/streamplace-store/stream.js +36 -74
- package/dist/streamplace-store/stream.js.map +1 -1
- package/locales/manifest.json +21 -1
- package/locales/ro-RO/common.ftl +74 -0
- package/locales/ro-RO/settings.ftl +233 -0
- package/locales/zh-Hans/common.ftl +57 -0
- package/locales/zh-Hans/settings.ftl +222 -0
- package/node-compile-cache/v22.15.0-x64-efe9a9df-0/37be0eec +0 -0
- package/package.json +2 -2
- package/src/components/chat/badge.tsx +45 -0
- package/src/components/chat/chat-box.tsx +84 -54
- package/src/components/chat/chat-message.tsx +36 -21
- package/src/components/chat/chat.tsx +105 -88
- package/src/components/chat/emoji-suggestions.tsx +12 -21
- package/src/components/chat/system-message.tsx +12 -2
- package/src/components/chat/teleport-modal.tsx +310 -0
- package/src/components/chat/user-profile-card.tsx +284 -0
- package/src/components/dashboard/chat-panel.tsx +8 -0
- package/src/components/dashboard/header.tsx +7 -3
- package/src/components/dashboard/information-widget.tsx +15 -9
- package/src/components/mobile-player/fullscreen.native.tsx +3 -0
- package/src/components/mobile-player/fullscreen.tsx +2 -0
- package/src/components/mobile-player/ui/audio-only-overlay.tsx +48 -0
- package/src/components/mobile-player/ui/index.ts +1 -0
- package/src/components/mobile-player/ui/input.tsx +1 -5
- package/src/components/mobile-player/ui/metrics.tsx +17 -2
- package/src/components/mobile-player/ui/viewer-context-menu.tsx +40 -3
- package/src/components/mobile-player/use-webrtc.tsx +118 -17
- package/src/components/mobile-player/video-async.native.tsx +18 -5
- package/src/components/mobile-player/video.tsx +10 -7
- package/src/components/ui/dialog.tsx +8 -0
- package/src/hooks/useLivestreamInfo.ts +15 -24
- package/src/hooks/useSegmentTiming.tsx +7 -2
- package/src/i18n/i18n-loader.native.ts +9 -0
- package/src/lib/slash-commands/teleport.ts +68 -0
- package/src/livestream-store/chat.tsx +12 -0
- package/src/livestream-store/livestream-state.tsx +2 -0
- package/src/livestream-store/livestream-store.tsx +9 -1
- package/src/livestream-store/websocket-consumer.tsx +1 -0
- package/src/player-store/player-state.tsx +1 -7
- package/src/player-store/player-store.tsx +16 -7
- package/src/player-store/single-player-provider.tsx +0 -4
- package/src/streamplace-store/stream.tsx +42 -99
- package/node-compile-cache/v22.15.0-x64-92db9086-0/37be0eec +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/components/chat/chat.tsx"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/components/chat/chat.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,38 +1,27 @@
|
|
|
1
1
|
export interface EmojiData {
|
|
2
|
-
categories: Category[];
|
|
3
2
|
emojis: {
|
|
4
3
|
[key: string]: Emoji;
|
|
5
4
|
};
|
|
6
5
|
aliases: {
|
|
7
6
|
[key: string]: string;
|
|
8
7
|
};
|
|
9
|
-
sheet: Sheet;
|
|
10
|
-
}
|
|
11
|
-
export interface Category {
|
|
12
|
-
id: string;
|
|
13
|
-
emojis: string[];
|
|
14
8
|
}
|
|
15
9
|
export interface Emoji {
|
|
16
10
|
id: string;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
version: number;
|
|
21
|
-
emoticons?: string[];
|
|
11
|
+
m: string;
|
|
12
|
+
k: string[];
|
|
13
|
+
s: Skin[];
|
|
22
14
|
}
|
|
23
15
|
export interface Skin {
|
|
24
|
-
|
|
25
|
-
native: string;
|
|
26
|
-
}
|
|
27
|
-
export interface Sheet {
|
|
28
|
-
cols: number;
|
|
29
|
-
rows: number;
|
|
16
|
+
n: string;
|
|
30
17
|
}
|
|
31
18
|
interface EmojiSuggestionsProps {
|
|
32
19
|
emojis: Emoji[];
|
|
33
20
|
onSelect: (emoji: Emoji) => void;
|
|
34
21
|
highlightedIndex: number;
|
|
22
|
+
skinTone?: number;
|
|
35
23
|
}
|
|
36
|
-
export declare function
|
|
24
|
+
export declare function getSkinNative(emoji: Emoji, skinTone?: number): string;
|
|
25
|
+
export declare function EmojiSuggestions({ emojis, onSelect, highlightedIndex, skinTone, }: EmojiSuggestionsProps): import("react/jsx-runtime").JSX.Element | null;
|
|
37
26
|
export {};
|
|
38
27
|
//# sourceMappingURL=emoji-suggestions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emoji-suggestions.d.ts","sourceRoot":"","sources":["../../../src/components/chat/emoji-suggestions.tsx"],"names":[],"mappings":"AAKA,MAAM,WAAW,SAAS;IACxB,
|
|
1
|
+
{"version":3,"file":"emoji-suggestions.d.ts","sourceRoot":"","sources":["../../../src/components/chat/emoji-suggestions.tsx"],"names":[],"mappings":"AAKA,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAA;KAAE,CAAC;IACjC,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CACpC;AAED,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,EAAE,CAAC;IACZ,CAAC,EAAE,IAAI,EAAE,CAAC;CACX;AAED,MAAM,WAAW,IAAI;IACnB,CAAC,EAAE,MAAM,CAAC;CACX;AAED,UAAU,qBAAqB;IAC7B,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,GAAE,MAAU,GAAG,MAAM,CAExE;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,QAAQ,EACR,gBAAgB,EAChB,QAAY,GACb,EAAE,qBAAqB,kDAiDvB"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getSkinNative = getSkinNative;
|
|
3
4
|
exports.EmojiSuggestions = EmojiSuggestions;
|
|
4
5
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
6
|
const react_native_1 = require("react-native");
|
|
6
7
|
const react_native_gesture_handler_1 = require("react-native-gesture-handler");
|
|
7
8
|
const __1 = require("../..");
|
|
8
9
|
const atoms_1 = require("../../lib/theme/atoms");
|
|
9
|
-
function
|
|
10
|
+
function getSkinNative(emoji, skinTone = 0) {
|
|
11
|
+
return (emoji.s[skinTone] ?? emoji.s[0]).n;
|
|
12
|
+
}
|
|
13
|
+
function EmojiSuggestions({ emojis, onSelect, highlightedIndex, skinTone = 0, }) {
|
|
10
14
|
if (!emojis || emojis.length === 0) {
|
|
11
15
|
return null;
|
|
12
16
|
}
|
|
@@ -31,6 +35,6 @@ function EmojiSuggestions({ emojis, onSelect, highlightedIndex, }) {
|
|
|
31
35
|
? "rgba(255, 255, 255, 0.1)"
|
|
32
36
|
: "transparent",
|
|
33
37
|
},
|
|
34
|
-
], children: [(0, jsx_runtime_1.jsx)(__1.Text, { style: { fontSize: 16, marginRight: 8 }, children: emoji
|
|
38
|
+
], children: [(0, jsx_runtime_1.jsx)(__1.Text, { style: { fontSize: 16, marginRight: 8 }, children: getSkinNative(emoji, skinTone) }), (0, jsx_runtime_1.jsxs)(__1.Text, { style: { color: "white", fontSize: 14 }, children: [(0, jsx_runtime_1.jsxs)(__1.Code, { style: [atoms_1.bg.gray[950]], children: [":", emoji.id, ":"] }), " ", emoji.m] })] }, emoji.id))) }) }));
|
|
35
39
|
}
|
|
36
40
|
//# sourceMappingURL=emoji-suggestions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emoji-suggestions.js","sourceRoot":"","sources":["../../../src/components/chat/emoji-suggestions.tsx"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"emoji-suggestions.js","sourceRoot":"","sources":["../../../src/components/chat/emoji-suggestions.tsx"],"names":[],"mappings":";;AA4BA,sCAEC;AAED,4CAsDC;;AAtFD,+CAAyC;AACzC,+EAA0D;AAC1D,6BAAyC;AACzC,iDAAwE;AAyBxE,SAAgB,aAAa,CAAC,KAAY,EAAE,WAAmB,CAAC;IAC9D,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,SAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,QAAQ,EACR,gBAAgB,EAChB,QAAQ,GAAG,CAAC,GACU;IACtB,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,uBAAC,QAAI,IACH,KAAK,EAAE;YACL,UAAE,CAAC,IAAI,CAAC,GAAG,CAAC;YACZ,cAAM,CAAC,QAAQ,CAAC,QAAQ;YACxB,YAAI,CAAC,CAAC,CAAC;YACP,aAAK,CAAC,CAAC,CAAC;YACR,cAAM,CAAC,EAAE,CAAC;YACV;gBACE,MAAM,EAAE,MAAM;gBACd,YAAY,EAAE,CAAC;gBACf,SAAS,EAAE,gCAAgC;gBAC3C,SAAS,EAAE,GAAG;aACf;SACF,YAED,uBAAC,yCAAU,cACR,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAC5B,wBAAC,wBAAS,IAER,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC9B,KAAK,EAAE;oBACL;wBACE,OAAO,EAAE,CAAC;wBACV,aAAa,EAAE,KAAK;wBACpB,UAAU,EAAE,QAAQ;wBACpB,eAAe,EACb,KAAK,KAAK,gBAAgB;4BACxB,CAAC,CAAC,0BAA0B;4BAC5B,CAAC,CAAC,aAAa;qBACpB;iBACF,aAED,uBAAC,QAAI,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAC1C,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,GAC1B,EACP,wBAAC,QAAI,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,aAC3C,wBAAC,QAAI,IAAC,KAAK,EAAE,CAAC,UAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,kBAAI,KAAK,CAAC,EAAE,SAAS,OAAE,KAAK,CAAC,CAAC,IACpD,KAnBF,KAAK,CAAC,EAAE,CAoBH,CACb,CAAC,GACS,GACR,CACR,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system-message.d.ts","sourceRoot":"","sources":["../../../src/components/chat/system-message.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,4DAA4D,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAK9D,UAAU,kBAAkB;IAC1B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC;CACjB;AAED,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,KAAK,EACL,SAAS,EACT,MAAM,GACP,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"system-message.d.ts","sourceRoot":"","sources":["../../../src/components/chat/system-message.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,4DAA4D,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAK9D,UAAU,kBAAkB;IAC1B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC;CACjB;AAED,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,KAAK,EACL,SAAS,EACT,MAAM,GACP,EAAE,kBAAkB,2CAmCpB;AAED,eAAe,aAAa,CAAC"}
|
|
@@ -3,11 +3,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.SystemMessage = SystemMessage;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_native_1 = require("react-native");
|
|
6
|
+
const system_messages_1 = require("../../lib/system-messages");
|
|
6
7
|
const ui_1 = require("../../ui");
|
|
7
8
|
const text_1 = require("../ui/text");
|
|
8
9
|
const chat_message_1 = require("./chat-message");
|
|
9
10
|
function SystemMessage({ variant, title, timestamp, facets, }) {
|
|
10
|
-
|
|
11
|
+
const isError = variant === system_messages_1.SystemMessageType.command_error;
|
|
12
|
+
return ((0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [
|
|
13
|
+
ui_1.w.percent[100],
|
|
14
|
+
ui_1.px[2],
|
|
15
|
+
ui_1.pb[2],
|
|
16
|
+
isError && ui_1.bg.red[950],
|
|
17
|
+
isError && ui_1.r.md,
|
|
18
|
+
], children: [(0, jsx_runtime_1.jsx)(text_1.Code, { color: "muted", tracking: "widest", style: [ui_1.pl[12], ui_1.ml[1]], children: "SYSTEM MESSAGE" }), (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [ui_1.gap.all[2], ui_1.layout.flex.row], children: [(0, jsx_runtime_1.jsx)(text_1.Text, { style: {
|
|
11
19
|
fontVariant: ["tabular-nums"],
|
|
12
20
|
color: ui_1.colors.gray[400],
|
|
13
21
|
}, children: timestamp.toLocaleTimeString([], {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system-message.js","sourceRoot":"","sources":["../../../src/components/chat/system-message.tsx"],"names":[],"mappings":";;AAcA,
|
|
1
|
+
{"version":3,"file":"system-message.js","sourceRoot":"","sources":["../../../src/components/chat/system-message.tsx"],"names":[],"mappings":";;AAcA,sCAwCC;;AAtDD,+CAAoC;AAEpC,+DAA8D;AAC9D,iCAA+E;AAC/E,qCAAwC;AACxC,iDAAiD;AASjD,SAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,KAAK,EACL,SAAS,EACT,MAAM,GACa;IACnB,MAAM,OAAO,GAAG,OAAO,KAAK,mCAAiB,CAAC,aAAa,CAAC;IAE5D,OAAO,CACL,wBAAC,mBAAI,IACH,KAAK,EAAE;YACL,MAAC,CAAC,OAAO,CAAC,GAAG,CAAC;YACd,OAAE,CAAC,CAAC,CAAC;YACL,OAAE,CAAC,CAAC,CAAC;YACL,OAAO,IAAI,OAAE,CAAC,GAAG,CAAC,GAAG,CAAC;YACtB,OAAO,IAAI,MAAC,CAAC,EAAE;SAChB,aAED,uBAAC,WAAI,IAAC,KAAK,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,EAAC,KAAK,EAAE,CAAC,OAAE,CAAC,EAAE,CAAC,EAAE,OAAE,CAAC,CAAC,CAAC,CAAC,+BAErD,EACP,wBAAC,mBAAI,IAAC,KAAK,EAAE,CAAC,QAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,WAAM,CAAC,IAAI,CAAC,GAAG,CAAC,aACxC,uBAAC,WAAI,IACH,KAAK,EAAE;4BACL,WAAW,EAAE,CAAC,cAAc,CAAC;4BAC7B,KAAK,EAAE,WAAM,CAAC,IAAI,CAAC,GAAG,CAAC;yBACxB,YAEA,SAAS,CAAC,kBAAkB,CAAC,EAAE,EAAE;4BAChC,IAAI,EAAE,SAAS;4BACf,MAAM,EAAE,SAAS;4BACjB,MAAM,EAAE,KAAK;yBACd,CAAC,GACG,EACP,uBAAC,WAAI,IAAC,MAAM,EAAC,MAAM,EAAC,KAAK,EAAC,SAAS,EAAC,KAAK,EAAE,CAAC,SAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YACzD,uBAAC,8BAAe,IAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAI,GAC3C,IACF,IACF,CACR,CAAC;AACJ,CAAC;AAED,kBAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface TeleportModalProps {
|
|
3
|
+
open: boolean;
|
|
4
|
+
onOpenChange: (open: boolean) => void;
|
|
5
|
+
onSubmit: (targetHandle: string, countdownSeconds: number) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare const TeleportModal: React.FC<TeleportModalProps>;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=teleport-modal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"teleport-modal.d.ts","sourceRoot":"","sources":["../../../src/components/chat/teleport-modal.tsx"],"names":[],"mappings":"AACA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAO5D,UAAU,kBAAkB;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,KAAK,IAAI,CAAC;CACpE;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAuStD,CAAC"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TeleportModal = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const lucide_react_native_1 = require("lucide-react-native");
|
|
6
|
+
const react_1 = require("react");
|
|
7
|
+
const react_native_1 = require("react-native");
|
|
8
|
+
const __1 = require("../..");
|
|
9
|
+
const streamplace_store_1 = require("../../streamplace-store");
|
|
10
|
+
const ui_1 = require("../ui");
|
|
11
|
+
const TeleportModal = ({ open, onOpenChange, onSubmit, }) => {
|
|
12
|
+
const [searchQuery, setSearchQuery] = (0, react_1.useState)("");
|
|
13
|
+
const [selectedStream, setSelectedStream] = (0, react_1.useState)(null);
|
|
14
|
+
const [countdownSeconds, setCountdownSeconds] = (0, react_1.useState)("10");
|
|
15
|
+
const { theme } = (0, ui_1.useTheme)();
|
|
16
|
+
const liveUsersCache = (0, streamplace_store_1.useStreamplaceStore)((state) => state.liveUsers);
|
|
17
|
+
const liveUsersLoading = (0, streamplace_store_1.useStreamplaceStore)((state) => state.liveUsersLoading);
|
|
18
|
+
const [liveUsers, setLiveUsers] = (0, react_1.useState)(liveUsersCache);
|
|
19
|
+
(0, react_1.useEffect)(() => {
|
|
20
|
+
setLiveUsers(liveUsersCache);
|
|
21
|
+
}, [liveUsersCache]);
|
|
22
|
+
const profiles = (0, __1.useAvatars)(liveUsers?.map((u) => u.author?.did || "") || []);
|
|
23
|
+
const filteredStreams = (0, react_1.useMemo)(() => {
|
|
24
|
+
if (!liveUsers)
|
|
25
|
+
return [];
|
|
26
|
+
if (!searchQuery.trim())
|
|
27
|
+
return liveUsers;
|
|
28
|
+
const query = searchQuery.toLowerCase();
|
|
29
|
+
// filter by handle or stream title
|
|
30
|
+
return liveUsers.filter((stream) => stream.author?.handle?.toLowerCase().includes(query) ||
|
|
31
|
+
stream.record.title?.toString().toLowerCase().includes(query));
|
|
32
|
+
}, [liveUsers, searchQuery]);
|
|
33
|
+
const handleCancel = () => {
|
|
34
|
+
setSearchQuery("");
|
|
35
|
+
setSelectedStream(null);
|
|
36
|
+
setCountdownSeconds("10");
|
|
37
|
+
onOpenChange(false);
|
|
38
|
+
};
|
|
39
|
+
const handleSubmit = () => {
|
|
40
|
+
if (!selectedStream?.author?.handle)
|
|
41
|
+
return;
|
|
42
|
+
const countdown = parseInt(countdownSeconds, 10);
|
|
43
|
+
if (isNaN(countdown) || countdown < 5 || countdown > 300) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
onSubmit(selectedStream.author.handle, countdown);
|
|
47
|
+
handleCancel();
|
|
48
|
+
};
|
|
49
|
+
return ((0, jsx_runtime_1.jsxs)(ui_1.ResponsiveDialog, { open: open, onOpenChange: onOpenChange, showCloseButton: false, variant: "default", size: "xl", dismissible: false, children: [(0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [__1.zero.py[2]], children: [(0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [__1.zero.layout.flex.row, __1.zero.layout.flex.justify.between], children: [(0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [__1.zero.mb[4], __1.zero.gap.all[1], __1.zero.layout.flex.column], children: [(0, jsx_runtime_1.jsx)(ui_1.Text, { size: "2xl", children: "Teleport to another live streamer" }), (0, jsx_runtime_1.jsx)(ui_1.Text, { color: "muted", children: "Select a streamer to teleport your viewers to their stream." })] }), (0, jsx_runtime_1.jsx)(react_native_1.Pressable, { onPress: handleCancel, style: [{ padding: 8 }], children: (0, jsx_runtime_1.jsx)(lucide_react_native_1.X, { color: theme.colors.mutedForeground }) })] }), (0, jsx_runtime_1.jsx)(react_native_1.View, { style: [__1.zero.mb[4]], children: (0, jsx_runtime_1.jsx)(ui_1.Input, { value: searchQuery, onChangeText: setSearchQuery, placeholder: "Search by handle...", autoCapitalize: "none", autoCorrect: false }) }), liveUsersLoading && !liveUsers ? ((0, jsx_runtime_1.jsx)(react_native_1.View, { style: [__1.zero.py[8], { alignItems: "center" }], children: (0, jsx_runtime_1.jsx)(ui_1.Text, { color: "muted", children: "Loading live users..." }) })) : filteredStreams.length === 0 ? ((0, jsx_runtime_1.jsx)(react_native_1.View, { style: [__1.zero.py[8], { alignItems: "center" }], children: (0, jsx_runtime_1.jsx)(ui_1.Text, { color: "muted", children: searchQuery
|
|
50
|
+
? "No matching live users found"
|
|
51
|
+
: "No live users found" }) })) : ((0, jsx_runtime_1.jsx)(react_native_1.ScrollView, { style: [{ maxHeight: 400 }], children: (0, jsx_runtime_1.jsx)(react_native_1.View, { style: [
|
|
52
|
+
{
|
|
53
|
+
flexDirection: "row",
|
|
54
|
+
flexWrap: "wrap",
|
|
55
|
+
gap: 12,
|
|
56
|
+
},
|
|
57
|
+
], children: filteredStreams.map((stream) => {
|
|
58
|
+
const isSelected = selectedStream?.uri === stream.uri;
|
|
59
|
+
const profile = profiles[stream.author?.did];
|
|
60
|
+
return ((0, jsx_runtime_1.jsx)(react_native_1.Pressable, { onPress: () => setSelectedStream(stream), style: [
|
|
61
|
+
{
|
|
62
|
+
width: "49.2%",
|
|
63
|
+
minWidth: 200,
|
|
64
|
+
},
|
|
65
|
+
], children: (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [
|
|
66
|
+
{
|
|
67
|
+
backgroundColor: theme.colors.muted,
|
|
68
|
+
borderRadius: 12,
|
|
69
|
+
overflow: "hidden",
|
|
70
|
+
borderWidth: 2,
|
|
71
|
+
borderColor: isSelected
|
|
72
|
+
? theme.colors.primary
|
|
73
|
+
: "transparent",
|
|
74
|
+
},
|
|
75
|
+
], children: [(0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [
|
|
76
|
+
{
|
|
77
|
+
width: "100%",
|
|
78
|
+
aspectRatio: 16 / 9,
|
|
79
|
+
backgroundColor: theme.colors.card,
|
|
80
|
+
position: "relative",
|
|
81
|
+
},
|
|
82
|
+
], children: [(0, jsx_runtime_1.jsx)(react_native_1.Image, { source: {
|
|
83
|
+
uri: "/api/playback/" +
|
|
84
|
+
stream.author.did +
|
|
85
|
+
"/stream.jpg",
|
|
86
|
+
}, style: {
|
|
87
|
+
width: "100%",
|
|
88
|
+
height: "100%",
|
|
89
|
+
}, resizeMode: "cover" }), isSelected && ((0, jsx_runtime_1.jsx)(react_native_1.View, { style: [
|
|
90
|
+
{
|
|
91
|
+
position: "absolute",
|
|
92
|
+
top: 8,
|
|
93
|
+
right: 8,
|
|
94
|
+
backgroundColor: theme.colors.primary,
|
|
95
|
+
borderRadius: 999,
|
|
96
|
+
width: 24,
|
|
97
|
+
height: 24,
|
|
98
|
+
alignItems: "center",
|
|
99
|
+
justifyContent: "center",
|
|
100
|
+
boxShadow: "0 2px 4px rgba(0, 0, 0, 0.6)",
|
|
101
|
+
},
|
|
102
|
+
], children: (0, jsx_runtime_1.jsx)(lucide_react_native_1.Check, { size: 16, color: "white" }) })), stream.viewerCount && ((0, jsx_runtime_1.jsx)(react_native_1.View, { style: [
|
|
103
|
+
{
|
|
104
|
+
position: "absolute",
|
|
105
|
+
top: 8,
|
|
106
|
+
left: 8,
|
|
107
|
+
backgroundColor: "rgba(0, 0, 0, 0.75)",
|
|
108
|
+
borderRadius: 999,
|
|
109
|
+
paddingHorizontal: 8,
|
|
110
|
+
paddingVertical: 4,
|
|
111
|
+
},
|
|
112
|
+
], children: (0, jsx_runtime_1.jsxs)(ui_1.Text, { style: [{ fontSize: 12, color: "white" }], children: [stream.viewerCount.count, " viewer", stream.viewerCount.count !== 1 ? "s" : ""] }) }))] }), (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [
|
|
113
|
+
{
|
|
114
|
+
padding: 12,
|
|
115
|
+
flexDirection: "row",
|
|
116
|
+
gap: 8,
|
|
117
|
+
alignItems: "center",
|
|
118
|
+
},
|
|
119
|
+
], children: [(0, jsx_runtime_1.jsx)(react_native_1.View, { style: [
|
|
120
|
+
{
|
|
121
|
+
width: 40,
|
|
122
|
+
height: 40,
|
|
123
|
+
borderRadius: 20,
|
|
124
|
+
overflow: "hidden",
|
|
125
|
+
backgroundColor: theme.colors.card,
|
|
126
|
+
flexShrink: 0,
|
|
127
|
+
},
|
|
128
|
+
], children: profile?.avatar ? ((0, jsx_runtime_1.jsx)(react_native_1.Image, { source: {
|
|
129
|
+
uri: profile.avatar,
|
|
130
|
+
}, style: { width: "100%", height: "100%" }, resizeMode: "cover" })) : ((0, jsx_runtime_1.jsx)(react_native_1.View, { style: {
|
|
131
|
+
width: "100%",
|
|
132
|
+
height: "100%",
|
|
133
|
+
backgroundColor: theme.colors.muted,
|
|
134
|
+
} })) }), (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [{ flex: 1, minWidth: 0 }], children: [(0, jsx_runtime_1.jsx)(ui_1.Text, { numberOfLines: 1, ellipsizeMode: "tail", children: stream.author?.handle }), stream.record.title ? ((0, jsx_runtime_1.jsx)(ui_1.Text, { numberOfLines: 1, ellipsizeMode: "tail", style: [
|
|
135
|
+
{
|
|
136
|
+
fontSize: 12,
|
|
137
|
+
color: theme.colors.textMuted,
|
|
138
|
+
},
|
|
139
|
+
], children: stream.record.title })) : null] })] })] }) }, stream.uri));
|
|
140
|
+
}) }) }))] }), (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [
|
|
141
|
+
__1.zero.mt[8],
|
|
142
|
+
__1.zero.layout.flex.row,
|
|
143
|
+
__1.zero.layout.flex.justify.end,
|
|
144
|
+
__1.zero.gap.all[2],
|
|
145
|
+
], children: [(0, jsx_runtime_1.jsx)(ui_1.Button, { width: "min", variant: "secondary", onPress: handleCancel, children: (0, jsx_runtime_1.jsx)(ui_1.Text, { children: "Cancel" }) }), (0, jsx_runtime_1.jsx)(ui_1.Button, { width: "min", variant: "primary", onPress: handleSubmit, disabled: !selectedStream, children: (0, jsx_runtime_1.jsx)(ui_1.Text, { children: "Teleport" }) })] })] }));
|
|
146
|
+
};
|
|
147
|
+
exports.TeleportModal = TeleportModal;
|
|
148
|
+
//# sourceMappingURL=teleport-modal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"teleport-modal.js","sourceRoot":"","sources":["../../../src/components/chat/teleport-modal.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ProfileViewBasic } from "@atproto/api/dist/client/types/app/bsky/actor/defs";
|
|
2
|
+
import { ChatMessageViewHydrated } from "streamplace";
|
|
3
|
+
export declare const ProfileCardProvider: ({ children, }: {
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export declare const UserProfileCard: ({ uri, author, badges, children, }: {
|
|
7
|
+
uri: string;
|
|
8
|
+
author: ProfileViewBasic;
|
|
9
|
+
badges: ChatMessageViewHydrated["badges"];
|
|
10
|
+
children: React.ReactNode;
|
|
11
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
//# sourceMappingURL=user-profile-card.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-profile-card.d.ts","sourceRoot":"","sources":["../../../src/components/chat/user-profile-card.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oDAAoD,CAAC;AAYtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AA8CtD,eAAO,MAAM,mBAAmB,GAAI,eAEjC;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,4CAOA,CAAC;AA0DF,eAAO,MAAM,eAAe,GAAI,oCAK7B;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,gBAAgB,CAAC;IACzB,MAAM,EAAE,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAC1C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,4CAkJA,CAAC"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UserProfileCard = exports.ProfileCardProvider = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const react_1 = require("react");
|
|
6
|
+
const react_native_1 = require("react-native");
|
|
7
|
+
const useAvatars_1 = require("../../hooks/useAvatars");
|
|
8
|
+
const livestream_store_1 = require("../../livestream-store");
|
|
9
|
+
const streamplace_store_1 = require("../../streamplace-store");
|
|
10
|
+
const ui_1 = require("../../ui");
|
|
11
|
+
const format_handle_1 = require("../../utils/format-handle");
|
|
12
|
+
const dropdown_1 = require("../ui/dropdown");
|
|
13
|
+
const text_1 = require("../ui/text");
|
|
14
|
+
const badge_1 = require("./badge");
|
|
15
|
+
const BADGE_META = {
|
|
16
|
+
"place.stream.badge.defs#mod": {
|
|
17
|
+
label: "Moderator",
|
|
18
|
+
description: "This user is a moderator.",
|
|
19
|
+
issuedBy: "{issuer} for {streamer}",
|
|
20
|
+
},
|
|
21
|
+
"place.stream.badge.defs#streamer": {
|
|
22
|
+
label: "Streamer",
|
|
23
|
+
description: "This user is the streamer.",
|
|
24
|
+
},
|
|
25
|
+
"place.stream.badge.defs#vip": {
|
|
26
|
+
label: "VIP",
|
|
27
|
+
description: "This user is a very important person.",
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
const OpenCardContext = (0, react_1.createContext)({
|
|
31
|
+
openUri: null,
|
|
32
|
+
setOpenUri: () => { },
|
|
33
|
+
});
|
|
34
|
+
const ProfileCardProvider = ({ children, }) => {
|
|
35
|
+
const [openUri, setOpenUri] = (0, react_1.useState)(null);
|
|
36
|
+
return ((0, jsx_runtime_1.jsx)(OpenCardContext.Provider, { value: { openUri, setOpenUri }, children: children }));
|
|
37
|
+
};
|
|
38
|
+
exports.ProfileCardProvider = ProfileCardProvider;
|
|
39
|
+
const BadgeRow = ({ streamer, badge, serviceDid, }) => {
|
|
40
|
+
const isServiceIssued = badge.issuer === serviceDid;
|
|
41
|
+
const issuerDids = (0, react_1.useMemo)(() => (isServiceIssued ? [] : [badge.issuer]), [isServiceIssued, badge.issuer]);
|
|
42
|
+
const issuerProfiles = (0, useAvatars_1.useAvatars)(issuerDids);
|
|
43
|
+
const meta = BADGE_META[badge.badgeType];
|
|
44
|
+
if (!meta)
|
|
45
|
+
return null;
|
|
46
|
+
let issuerLabel = isServiceIssued
|
|
47
|
+
? "Streamplace"
|
|
48
|
+
: issuerProfiles[badge.issuer]?.handle
|
|
49
|
+
? `@${issuerProfiles[badge.issuer].handle}`
|
|
50
|
+
: badge.issuer;
|
|
51
|
+
if (meta.issuedBy) {
|
|
52
|
+
issuerLabel = meta.issuedBy
|
|
53
|
+
.replace("{issuer}", issuerLabel)
|
|
54
|
+
.replace("{streamer}", streamer?.handle ? (0, format_handle_1.formatHandleWithAt)(streamer) : "the streamer");
|
|
55
|
+
}
|
|
56
|
+
return ((0, jsx_runtime_1.jsxs)(react_native_1.View, { style: {
|
|
57
|
+
flexDirection: "row",
|
|
58
|
+
alignItems: "center",
|
|
59
|
+
gap: 12,
|
|
60
|
+
paddingLeft: 6,
|
|
61
|
+
}, children: [(0, jsx_runtime_1.jsx)(badge_1.Badge, { badgeType: badge.badgeType, size: 32 }), (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: { flex: 1, gap: 2 }, children: [(0, jsx_runtime_1.jsx)(text_1.Text, { size: "xs", children: meta.label }), (0, jsx_runtime_1.jsxs)(text_1.Text, { size: "xs", color: "muted", children: ["Issued by ", issuerLabel] }), (0, jsx_runtime_1.jsx)(text_1.Text, { size: "xs", color: "muted", children: meta.description })] })] }));
|
|
62
|
+
};
|
|
63
|
+
const UserProfileCard = ({ uri, author, badges, children, }) => {
|
|
64
|
+
const { theme } = (0, ui_1.useTheme)();
|
|
65
|
+
const nodeUrl = (0, streamplace_store_1.useUrl)();
|
|
66
|
+
const serviceDid = nodeUrl
|
|
67
|
+
? `did:web:${nodeUrl.replace(/^https?:\/\//, "")}`
|
|
68
|
+
: null;
|
|
69
|
+
const streamer = (0, livestream_store_1.useLivestreamStore)((x) => x.livestream?.author);
|
|
70
|
+
const { openUri, setOpenUri } = (0, react_1.useContext)(OpenCardContext);
|
|
71
|
+
const isOpen = openUri === uri;
|
|
72
|
+
const thisRef = (0, react_1.useRef)(null);
|
|
73
|
+
const [hovered, setHovered] = (0, react_1.useState)(false);
|
|
74
|
+
const profiles = (0, useAvatars_1.useAvatars)(author.did ? [author.did] : []);
|
|
75
|
+
const profile = profiles[author.did];
|
|
76
|
+
(0, react_1.useEffect)(() => {
|
|
77
|
+
isOpen ? thisRef.current?.open() : thisRef.current?.close();
|
|
78
|
+
}, [isOpen]);
|
|
79
|
+
const onOpenChange = (0, react_1.useCallback)((open) => {
|
|
80
|
+
setOpenUri(open ? uri : null);
|
|
81
|
+
}, [uri, setOpenUri]);
|
|
82
|
+
const serviceBadges = (0, react_1.useMemo)(() => badges?.filter((b) => serviceDid && b.issuer === serviceDid) ?? [], [badges, serviceDid]);
|
|
83
|
+
return ((0, jsx_runtime_1.jsxs)(dropdown_1.DropdownMenu, { onOpenChange: onOpenChange, children: [(0, jsx_runtime_1.jsx)(dropdown_1.DropdownMenuTrigger, { ref: thisRef, asChild: true, children: (0, jsx_runtime_1.jsx)(react_native_1.Pressable, { onPress: () => { }, ...(react_native_1.Platform.OS === "web"
|
|
84
|
+
? {
|
|
85
|
+
onHoverIn: () => setHovered(true),
|
|
86
|
+
onHoverOut: () => setHovered(false),
|
|
87
|
+
}
|
|
88
|
+
: {}), style: {
|
|
89
|
+
paddingHorizontal: 3,
|
|
90
|
+
flexDirection: "row",
|
|
91
|
+
gap: 4,
|
|
92
|
+
marginLeft: -3,
|
|
93
|
+
paddingLeft: 3,
|
|
94
|
+
marginRight: -2,
|
|
95
|
+
...(react_native_1.Platform.OS === "web" && { paddingBottom: 4 }),
|
|
96
|
+
...(react_native_1.Platform.OS === "web" && hovered
|
|
97
|
+
? { backgroundColor: "rgba(255,255,255,0.15)", borderRadius: 6 }
|
|
98
|
+
: {}),
|
|
99
|
+
}, children: children }) }), (0, jsx_runtime_1.jsx)(dropdown_1.DropdownMenuContent, { style: { minWidth: 280, maxWidth: 320 }, children: (0, jsx_runtime_1.jsxs)(react_native_1.View, { children: [profile?.banner ? ((0, jsx_runtime_1.jsx)(react_native_1.Image, { source: { uri: profile.banner }, style: {
|
|
100
|
+
width: "100%",
|
|
101
|
+
height: 80,
|
|
102
|
+
borderRadius: theme.borderRadius.md,
|
|
103
|
+
} })) : ((0, jsx_runtime_1.jsx)(react_native_1.View, { style: {
|
|
104
|
+
width: "100%",
|
|
105
|
+
height: 80,
|
|
106
|
+
borderRadius: theme.borderRadius.md,
|
|
107
|
+
backgroundColor: theme.colors.muted,
|
|
108
|
+
} })), (0, jsx_runtime_1.jsx)(react_native_1.View, { style: {
|
|
109
|
+
flexDirection: "row",
|
|
110
|
+
alignItems: "flex-end",
|
|
111
|
+
marginTop: -24,
|
|
112
|
+
paddingHorizontal: 12,
|
|
113
|
+
}, children: profile?.avatar ? ((0, jsx_runtime_1.jsx)(react_native_1.Image, { source: { uri: profile.avatar }, style: {
|
|
114
|
+
width: 48,
|
|
115
|
+
height: 48,
|
|
116
|
+
borderRadius: 24,
|
|
117
|
+
borderWidth: 2,
|
|
118
|
+
borderColor: theme.colors.card,
|
|
119
|
+
} })) : ((0, jsx_runtime_1.jsx)(react_native_1.View, { style: {
|
|
120
|
+
width: 48,
|
|
121
|
+
height: 48,
|
|
122
|
+
borderRadius: 24,
|
|
123
|
+
backgroundColor: theme.colors.mutedForeground,
|
|
124
|
+
borderWidth: 2,
|
|
125
|
+
borderColor: theme.colors.card,
|
|
126
|
+
} })) }), (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: { paddingHorizontal: 12 }, children: [(0, jsx_runtime_1.jsxs)(text_1.Text, { children: ["@", author.handle] }), profile?.description ? ((0, jsx_runtime_1.jsx)(text_1.Text, { size: "sm", color: "muted", numberOfLines: 4, children: profile.description })) : null] }), serviceBadges.length > 0 && serviceDid ? ((0, jsx_runtime_1.jsx)(react_native_1.View, { style: {
|
|
127
|
+
marginTop: 12,
|
|
128
|
+
paddingHorizontal: 12,
|
|
129
|
+
paddingBottom: 8,
|
|
130
|
+
borderTopWidth: 1,
|
|
131
|
+
borderTopColor: theme.colors.border,
|
|
132
|
+
paddingTop: 8,
|
|
133
|
+
}, children: serviceBadges.map((badge, i) => ((0, jsx_runtime_1.jsx)(BadgeRow, { badge: badge, serviceDid: serviceDid, streamer: streamer }, i))) })) : null] }) })] }));
|
|
134
|
+
};
|
|
135
|
+
exports.UserProfileCard = UserProfileCard;
|
|
136
|
+
//# sourceMappingURL=user-profile-card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-profile-card.js","sourceRoot":"","sources":["../../../src/components/chat/user-profile-card.tsx"],"names":[],"mappings":";;;;AAEA,iCAQe;AACf,+CAAgE;AAEhE,uDAAoD;AACpD,6DAA4D;AAC5D,+DAAiD;AACjD,iCAAoC;AACpC,6DAA+D;AAC/D,6CAIwB;AACxB,qCAAkC;AAClC,mCAAgC;AAQhC,MAAM,UAAU,GAA8B;IAC5C,6BAA6B,EAAE;QAC7B,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,2BAA2B;QACxC,QAAQ,EAAE,yBAAyB;KACpC;IACD,kCAAkC,EAAE;QAClC,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,4BAA4B;KAC1C;IACD,6BAA6B,EAAE;QAC7B,KAAK,EAAE,KAAK;QACZ,WAAW,EAAE,uCAAuC;KACrD;CACF,CAAC;AAOF,MAAM,eAAe,GAAG,IAAA,qBAAa,EAAuB;IAC1D,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC;CACrB,CAAC,CAAC;AAEI,MAAM,mBAAmB,GAAG,CAAC,EAClC,QAAQ,GAGT,EAAE,EAAE;IACH,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAgB,IAAI,CAAC,CAAC;IAC5D,OAAO,CACL,uBAAC,eAAe,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,YACrD,QAAQ,GACgB,CAC5B,CAAC;AACJ,CAAC,CAAC;AAXW,QAAA,mBAAmB,uBAW9B;AAEF,MAAM,QAAQ,GAAG,CAAC,EAChB,QAAQ,EACR,KAAK,EACL,UAAU,GAKX,EAAE,EAAE;IACH,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC;IACpD,MAAM,UAAU,GAAG,IAAA,eAAO,EACxB,GAAG,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAC7C,CAAC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,CAChC,CAAC;IACF,MAAM,cAAc,GAAG,IAAA,uBAAU,EAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAEzC,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,IAAI,WAAW,GAAG,eAAe;QAC/B,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM;YACpC,CAAC,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE;YAC3C,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;IACnB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,WAAW,GAAG,IAAI,CAAC,QAAQ;aACxB,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC;aAChC,OAAO,CACN,YAAY,EACZ,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,IAAA,kCAAkB,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,cAAc,CACjE,CAAC;IACN,CAAC;IAED,OAAO,CACL,wBAAC,mBAAI,IACH,KAAK,EAAE;YACL,aAAa,EAAE,KAAK;YACpB,UAAU,EAAE,QAAQ;YACpB,GAAG,EAAE,EAAE;YACP,WAAW,EAAE,CAAC;SACf,aAED,uBAAC,aAAK,IAAC,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,GAAI,EAC/C,wBAAC,mBAAI,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,aAC9B,uBAAC,WAAI,IAAC,IAAI,EAAC,IAAI,YAAE,IAAI,CAAC,KAAK,GAAQ,EACnC,wBAAC,WAAI,IAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,OAAO,2BAChB,WAAW,IACjB,EACP,uBAAC,WAAI,IAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,OAAO,YAC1B,IAAI,CAAC,WAAW,GACZ,IACF,IACF,CACR,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,eAAe,GAAG,CAAC,EAC9B,GAAG,EACH,MAAM,EACN,MAAM,EACN,QAAQ,GAMT,EAAE,EAAE;IACH,MAAM,EAAE,KAAK,EAAE,GAAG,IAAA,aAAQ,GAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,IAAA,0BAAM,GAAE,CAAC;IACzB,MAAM,UAAU,GAAG,OAAO;QACxB,CAAC,CAAC,WAAW,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,EAAE;QAClD,CAAC,CAAC,IAAI,CAAC;IAET,MAAM,QAAQ,GAAG,IAAA,qCAAkB,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAEjE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,IAAA,kBAAU,EAAC,eAAe,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,OAAO,KAAK,GAAG,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAA,cAAM,EAAa,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAE9C,MAAM,QAAQ,GAAG,IAAA,uBAAU,EAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAErC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;IAC9D,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,MAAM,YAAY,GAAG,IAAA,mBAAW,EAC9B,CAAC,IAAa,EAAE,EAAE;QAChB,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC,EACD,CAAC,GAAG,EAAE,UAAU,CAAC,CAClB,CAAC;IAEF,MAAM,aAAa,GAAG,IAAA,eAAO,EAC3B,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,IAAI,EAAE,EACxE,CAAC,MAAM,EAAE,UAAU,CAAC,CACrB,CAAC;IAEF,OAAO,CACL,wBAAC,uBAAY,IAAC,YAAY,EAAE,YAAY,aACtC,uBAAC,8BAAmB,IAAC,GAAG,EAAE,OAAO,EAAE,OAAO,kBACxC,uBAAC,wBAAS,IACR,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,KACb,CAAC,uBAAQ,CAAC,EAAE,KAAK,KAAK;wBACxB,CAAC,CAAC;4BACE,SAAS,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;4BACjC,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC;yBACpC;wBACH,CAAC,CAAC,EAAE,CAAC,EACP,KAAK,EAAE;wBACL,iBAAiB,EAAE,CAAC;wBACpB,aAAa,EAAE,KAAK;wBACpB,GAAG,EAAE,CAAC;wBACN,UAAU,EAAE,CAAC,CAAC;wBACd,WAAW,EAAE,CAAC;wBACd,WAAW,EAAE,CAAC,CAAC;wBACf,GAAG,CAAC,uBAAQ,CAAC,EAAE,KAAK,KAAK,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;wBAClD,GAAG,CAAC,uBAAQ,CAAC,EAAE,KAAK,KAAK,IAAI,OAAO;4BAClC,CAAC,CAAC,EAAE,eAAe,EAAE,wBAAwB,EAAE,YAAY,EAAE,CAAC,EAAE;4BAChE,CAAC,CAAC,EAAE,CAAC;qBACR,YAEA,QAAQ,GACC,GACQ,EACtB,uBAAC,8BAAmB,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,YAC1D,wBAAC,mBAAI,eACF,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CACjB,uBAAC,oBAAK,IACJ,MAAM,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,EAC/B,KAAK,EAAE;gCACL,KAAK,EAAE,MAAM;gCACb,MAAM,EAAE,EAAE;gCACV,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE;6BACpC,GACD,CACH,CAAC,CAAC,CAAC,CACF,uBAAC,mBAAI,IACH,KAAK,EAAE;gCACL,KAAK,EAAE,MAAM;gCACb,MAAM,EAAE,EAAE;gCACV,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE;gCACnC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK;6BACpC,GACD,CACH,EACD,uBAAC,mBAAI,IACH,KAAK,EAAE;gCACL,aAAa,EAAE,KAAK;gCACpB,UAAU,EAAE,UAAU;gCACtB,SAAS,EAAE,CAAC,EAAE;gCACd,iBAAiB,EAAE,EAAE;6BACtB,YAEA,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CACjB,uBAAC,oBAAK,IACJ,MAAM,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,EAC/B,KAAK,EAAE;oCACL,KAAK,EAAE,EAAE;oCACT,MAAM,EAAE,EAAE;oCACV,YAAY,EAAE,EAAE;oCAChB,WAAW,EAAE,CAAC;oCACd,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI;iCAC/B,GACD,CACH,CAAC,CAAC,CAAC,CACF,uBAAC,mBAAI,IACH,KAAK,EAAE;oCACL,KAAK,EAAE,EAAE;oCACT,MAAM,EAAE,EAAE;oCACV,YAAY,EAAE,EAAE;oCAChB,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,eAAe;oCAC7C,WAAW,EAAE,CAAC;oCACd,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI;iCAC/B,GACD,CACH,GACI,EACP,wBAAC,mBAAI,IAAC,KAAK,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,aACpC,wBAAC,WAAI,oBAAG,MAAM,CAAC,MAAM,IAAQ,EAC5B,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CACtB,uBAAC,WAAI,IAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,OAAO,EAAC,aAAa,EAAE,CAAC,YAC3C,OAAO,CAAC,WAAW,GACf,CACR,CAAC,CAAC,CAAC,IAAI,IACH,EACN,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CACxC,uBAAC,mBAAI,IACH,KAAK,EAAE;gCACL,SAAS,EAAE,EAAE;gCACb,iBAAiB,EAAE,EAAE;gCACrB,aAAa,EAAE,CAAC;gCAChB,cAAc,EAAE,CAAC;gCACjB,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;gCACnC,UAAU,EAAE,CAAC;6BACd,YAEA,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAC/B,uBAAC,QAAQ,IAEP,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,IAHb,CAAC,CAIN,CACH,CAAC,GACG,CACR,CAAC,CAAC,CAAC,IAAI,IACH,GACa,IACT,CAChB,CAAC;AACJ,CAAC,CAAC;AA5JW,QAAA,eAAe,mBA4J1B"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
import React from "react";
|
|
1
2
|
interface ChatPanelProps {
|
|
2
3
|
isLive: boolean;
|
|
3
4
|
isConnected: boolean;
|
|
4
5
|
messagesPerMinute?: number;
|
|
5
6
|
shownMessages?: number;
|
|
6
7
|
emojiData?: any;
|
|
8
|
+
emojiPicker?: (isOpen: boolean, onClose: () => void, onSelect: (emoji: any) => void) => React.ReactNode;
|
|
7
9
|
}
|
|
8
|
-
export default function ChatPanel({ isLive, isConnected, messagesPerMinute, shownMessages, emojiData, }: ChatPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export default function ChatPanel({ isLive, isConnected, messagesPerMinute, shownMessages, emojiData, emojiPicker, }: ChatPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
9
11
|
export {};
|
|
10
12
|
//# sourceMappingURL=chat-panel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-panel.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/chat-panel.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"chat-panel.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/chat-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,UAAU,cAAc;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,WAAW,CAAC,EAAE,CACZ,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,MAAM,IAAI,EACnB,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,KAC3B,KAAK,CAAC,SAAS,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,MAAM,EACN,WAAW,EACX,iBAAqB,EACrB,aAAkB,EAClB,SAAgB,EAChB,WAAW,GACZ,EAAE,cAAc,2CA0DhB"}
|
|
@@ -8,7 +8,7 @@ const zero = tslib_1.__importStar(require("../../ui"));
|
|
|
8
8
|
const chat_1 = require("../chat/chat");
|
|
9
9
|
const chat_box_1 = require("../chat/chat-box");
|
|
10
10
|
const { flex, bg, r, borders, p, px, py, text, layout } = zero;
|
|
11
|
-
function ChatPanel({ isLive, isConnected, messagesPerMinute = 0, shownMessages = 50, emojiData = null, }) {
|
|
11
|
+
function ChatPanel({ isLive, isConnected, messagesPerMinute = 0, shownMessages = 50, emojiData = null, emojiPicker, }) {
|
|
12
12
|
return ((0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [
|
|
13
13
|
flex.values[1],
|
|
14
14
|
bg.neutral[900],
|
|
@@ -26,7 +26,7 @@ function ChatPanel({ isLive, isConnected, messagesPerMinute = 0, shownMessages =
|
|
|
26
26
|
], children: [(0, jsx_runtime_1.jsx)(react_native_1.Text, { style: [text.white, { fontSize: 18, fontWeight: "600" }], children: "Chat" }), (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [layout.flex.row, layout.flex.alignCenter], children: [(0, jsx_runtime_1.jsx)(react_native_1.View, { style: [
|
|
27
27
|
{ width: 6, height: 6, borderRadius: 3 },
|
|
28
28
|
isLive && isConnected ? bg.green[500] : bg.gray[500],
|
|
29
|
-
] }), (0, jsx_runtime_1.jsxs)(react_native_1.Text, { style: [text.gray[400], { fontSize: 12, marginLeft: 8 }], children: [messagesPerMinute, " msg/min"] })] })] }), (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [flex.values[1], px[2], { minHeight: 0 }], children: [(0, jsx_runtime_1.jsx)(react_native_1.View, { style: [flex.values[1], { minHeight: 0 }], children: (0, jsx_runtime_1.jsx)(chat_1.Chat, { shownMessages: shownMessages }) }), (0, jsx_runtime_1.jsx)(react_native_1.View, { style: [{ flexShrink: 0 }], children: (0, jsx_runtime_1.jsx)(chat_box_1.ChatBox, { emojiData: emojiData, chatBoxStyle: [
|
|
29
|
+
] }), (0, jsx_runtime_1.jsxs)(react_native_1.Text, { style: [text.gray[400], { fontSize: 12, marginLeft: 8 }], children: [messagesPerMinute, " msg/min"] })] })] }), (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [flex.values[1], px[2], { minHeight: 0 }], children: [(0, jsx_runtime_1.jsx)(react_native_1.View, { style: [flex.values[1], { minHeight: 0 }], children: (0, jsx_runtime_1.jsx)(chat_1.Chat, { shownMessages: shownMessages }) }), (0, jsx_runtime_1.jsx)(react_native_1.View, { style: [{ flexShrink: 0 }], children: (0, jsx_runtime_1.jsx)(chat_box_1.ChatBox, { emojiData: emojiData, emojiPicker: emojiPicker, chatBoxStyle: [
|
|
30
30
|
bg.gray[700],
|
|
31
31
|
borders.width.thin,
|
|
32
32
|
borders.color.gray[600],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-panel.js","sourceRoot":"","sources":["../../../src/components/dashboard/chat-panel.tsx"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"chat-panel.js","sourceRoot":"","sources":["../../../src/components/dashboard/chat-panel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ interface HeaderProps {
|
|
|
4
4
|
uptime?: string;
|
|
5
5
|
bitrate?: string;
|
|
6
6
|
timeBetweenSegments?: number;
|
|
7
|
-
connectionStatus?: "excellent" | "good" | "poor" | "offline";
|
|
7
|
+
connectionStatus?: "excellent" | "good" | "poor" | "offline" | "pre-live";
|
|
8
8
|
problemsCount?: number;
|
|
9
9
|
onProblemsPress?: () => void;
|
|
10
10
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/header.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/header.tsx"],"names":[],"mappings":"AAqGA,UAAU,WAAW;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;IAC1E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,MAAM,EACN,WAA2B,EAC3B,MAAmB,EACnB,OAAkB,EAClB,mBAAuB,EACvB,gBAA4B,EAC5B,aAAiB,EACjB,eAAe,GAChB,EAAE,WAAW,2CAyEb"}
|