@superinterface/react 2.4.2 → 2.4.4
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/index.cjs +39 -10
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +45 -16
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -2665,16 +2665,20 @@ var blobToData = function(blob) {
|
|
|
2665
2665
|
import { useMemo as useMemo10 } from "react";
|
|
2666
2666
|
var useStatus = function(param) {
|
|
2667
2667
|
var messageAudioProps = param.messageAudioProps, recorderProps = param.recorderProps, createMessageProps = param.createMessageProps;
|
|
2668
|
+
var latestMessageProps = useLatestMessage();
|
|
2668
2669
|
var status = useMemo10(function() {
|
|
2670
|
+
var _latestMessageProps_latestMessage;
|
|
2669
2671
|
if (recorderProps.status === "recording") return "recording";
|
|
2670
2672
|
if (createMessageProps.isPending) return "creatingMessage";
|
|
2671
|
-
if (messageAudioProps.playing) return "playing";
|
|
2673
|
+
if (messageAudioProps.playing || messageAudioProps.isPending) return "playing";
|
|
2672
2674
|
if (messageAudioProps.paused) return "playerPaused";
|
|
2673
2675
|
if (!messageAudioProps.isReady) return "loading";
|
|
2676
|
+
if (((_latestMessageProps_latestMessage = latestMessageProps.latestMessage) === null || _latestMessageProps_latestMessage === void 0 ? void 0 : _latestMessageProps_latestMessage.status) === "in_progress") return "creatingMessage";
|
|
2674
2677
|
if (recorderProps.status === "idle") return "idle";
|
|
2675
2678
|
if (recorderProps.status === "paused") return "recorderPaused";
|
|
2676
2679
|
return "loading";
|
|
2677
2680
|
}, [
|
|
2681
|
+
latestMessageProps,
|
|
2678
2682
|
messageAudioProps,
|
|
2679
2683
|
recorderProps,
|
|
2680
2684
|
createMessageProps
|
|
@@ -2877,24 +2881,31 @@ var useMessageAudio = function(param) {
|
|
|
2877
2881
|
var superinterfaceContext = useSuperinterfaceContext();
|
|
2878
2882
|
var _useState41 = _sliced_to_array(useState4(false), 2), isPlaying = _useState41[0], setIsPlaying = _useState41[1];
|
|
2879
2883
|
var latestMessageProps = useLatestMessage();
|
|
2880
|
-
|
|
2881
|
-
if (
|
|
2882
|
-
if (
|
|
2883
|
-
if (!latestMessageProps.latestMessage) return;
|
|
2884
|
-
if (latestMessageProps.latestMessage.role !== "assistant") return;
|
|
2884
|
+
var unplayedMessageSentences = useMemo12(function() {
|
|
2885
|
+
if (!latestMessageProps.latestMessage) return [];
|
|
2886
|
+
if (latestMessageProps.latestMessage.role !== "assistant") return [];
|
|
2885
2887
|
var input2 = input({
|
|
2886
2888
|
message: latestMessageProps.latestMessage
|
|
2887
2889
|
});
|
|
2888
|
-
if (!input2) return;
|
|
2890
|
+
if (!input2) return [];
|
|
2889
2891
|
var messageSentences = getMessageSentences({
|
|
2890
2892
|
messageId: latestMessageProps.latestMessage.id,
|
|
2891
2893
|
input: input2
|
|
2892
2894
|
});
|
|
2893
|
-
|
|
2895
|
+
return messageSentences.filter(function(ms) {
|
|
2894
2896
|
return !playedMessageSentences.find(function(pms) {
|
|
2895
2897
|
return pms.messageId === ms.messageId && pms.sentence === ms.sentence;
|
|
2896
2898
|
});
|
|
2897
2899
|
});
|
|
2900
|
+
}, [
|
|
2901
|
+
latestMessageProps,
|
|
2902
|
+
playedMessageSentences
|
|
2903
|
+
]);
|
|
2904
|
+
useEffect5(function() {
|
|
2905
|
+
if (isPlaying) return;
|
|
2906
|
+
if (audioPlayer.playing) return;
|
|
2907
|
+
if (!latestMessageProps.latestMessage) return;
|
|
2908
|
+
if (latestMessageProps.latestMessage.role !== "assistant") return;
|
|
2898
2909
|
var firstUnplayedMessageSentence = unplayedMessageSentences[0];
|
|
2899
2910
|
if (!firstUnplayedMessageSentence) {
|
|
2900
2911
|
return;
|
|
@@ -2932,6 +2943,7 @@ var useMessageAudio = function(param) {
|
|
|
2932
2943
|
})
|
|
2933
2944
|
}));
|
|
2934
2945
|
}, [
|
|
2946
|
+
unplayedMessageSentences,
|
|
2935
2947
|
isPlaying,
|
|
2936
2948
|
superinterfaceContext,
|
|
2937
2949
|
latestMessageProps,
|
|
@@ -2941,13 +2953,22 @@ var useMessageAudio = function(param) {
|
|
|
2941
2953
|
]);
|
|
2942
2954
|
var isInited = useRef5(false);
|
|
2943
2955
|
var _useState42 = _sliced_to_array(useState4(null), 2), audioEngine = _useState42[0], setAudioEngine = _useState42[1];
|
|
2956
|
+
useEffect5(function() {
|
|
2957
|
+
if (isHtmlAudioSupported) {
|
|
2958
|
+
var _Howler__howls___sounds_, _Howler__howls_;
|
|
2959
|
+
if (!(Howler === null || Howler === void 0 ? void 0 : (_Howler__howls_ = Howler._howls[0]) === null || _Howler__howls_ === void 0 ? void 0 : (_Howler__howls___sounds_ = _Howler__howls_._sounds[0]) === null || _Howler__howls___sounds_ === void 0 ? void 0 : _Howler__howls___sounds_._node)) return;
|
|
2960
|
+
if (!Howler._howls[0]._sounds[0]._node.crossOrigin) return;
|
|
2961
|
+
Howler._howls[0]._sounds[0]._node.crossOrigin = "anonymous";
|
|
2962
|
+
}
|
|
2963
|
+
}, [
|
|
2964
|
+
audioPlayer
|
|
2965
|
+
]);
|
|
2944
2966
|
useEffect5(function() {
|
|
2945
2967
|
if (!audioPlayer.playing) return;
|
|
2946
2968
|
if (isInited.current) return;
|
|
2947
2969
|
isInited.current = true;
|
|
2948
2970
|
if (isHtmlAudioSupported) {
|
|
2949
2971
|
var audioContext = new AudioContext();
|
|
2950
|
-
Howler._howls[0]._sounds[0]._node.crossOrigin = "anonymous";
|
|
2951
2972
|
setAudioEngine({
|
|
2952
2973
|
// @ts-ignore-next-line
|
|
2953
2974
|
source: audioContext.createMediaElementSource(Howler._howls[0]._sounds[0]._node),
|
|
@@ -2972,7 +2993,15 @@ var useMessageAudio = function(param) {
|
|
|
2972
2993
|
}, [
|
|
2973
2994
|
audioEngine
|
|
2974
2995
|
]);
|
|
2975
|
-
|
|
2996
|
+
var isPending = useMemo12(function() {
|
|
2997
|
+
return isPlaying || unplayedMessageSentences.length > 0;
|
|
2998
|
+
}, [
|
|
2999
|
+
isPlaying,
|
|
3000
|
+
unplayedMessageSentences
|
|
3001
|
+
]);
|
|
3002
|
+
return _object_spread_props(_object_spread({
|
|
3003
|
+
isPending: isPending
|
|
3004
|
+
}, audioPlayer), {
|
|
2976
3005
|
visualizationAnalyser: visualizationAnalyser
|
|
2977
3006
|
});
|
|
2978
3007
|
};
|
|
@@ -3330,9 +3359,9 @@ AudioThreadDialog.Trigger = Trigger;
|
|
|
3330
3359
|
AudioThreadDialog.Button = Button2;
|
|
3331
3360
|
AudioThreadDialog.Content = Content4;
|
|
3332
3361
|
// src/components/suggestions/Suggestions/index.tsx
|
|
3333
|
-
import { useMemo as useMemo15 } from "react";
|
|
3334
|
-
// src/components/suggestions/Suggestions/Content.tsx
|
|
3335
3362
|
import { useMemo as useMemo14 } from "react";
|
|
3363
|
+
// src/components/suggestions/Suggestions/Content.tsx
|
|
3364
|
+
import { useMemo as useMemo13 } from "react";
|
|
3336
3365
|
import { isEmpty as isEmpty2 } from "radash";
|
|
3337
3366
|
import { onlyText } from "react-children-utilities";
|
|
3338
3367
|
import { Flex as Flex25 } from "@radix-ui/themes";
|
|
@@ -3389,7 +3418,7 @@ import { jsx as jsx63 } from "react/jsx-runtime";
|
|
|
3389
3418
|
var Content6 = function(param) {
|
|
3390
3419
|
var children = param.children;
|
|
3391
3420
|
var isMutatingMessage = useIsMutatingMessage();
|
|
3392
|
-
var suggestions =
|
|
3421
|
+
var suggestions = useMemo13(function() {
|
|
3393
3422
|
return onlyText(children).split(/\r?\n/).filter(function(c) {
|
|
3394
3423
|
return !isEmpty2(c);
|
|
3395
3424
|
}).map(function(c) {
|
|
@@ -3416,7 +3445,7 @@ import { jsx as jsx64 } from "react/jsx-runtime";
|
|
|
3416
3445
|
var Suggestions = function(param) {
|
|
3417
3446
|
var children = param.children;
|
|
3418
3447
|
var latestMessageProps = useLatestMessage();
|
|
3419
|
-
var isDisabled =
|
|
3448
|
+
var isDisabled = useMemo14(function() {
|
|
3420
3449
|
var // @ts-ignore-next-line
|
|
3421
3450
|
_latestMessageProps_latestMessage_metadata, _latestMessageProps_latestMessage;
|
|
3422
3451
|
return (_latestMessageProps_latestMessage = latestMessageProps.latestMessage) === null || _latestMessageProps_latestMessage === void 0 ? void 0 : (_latestMessageProps_latestMessage_metadata = _latestMessageProps_latestMessage.metadata) === null || _latestMessageProps_latestMessage_metadata === void 0 ? void 0 : _latestMessageProps_latestMessage_metadata.isBlocking;
|
|
@@ -3431,14 +3460,14 @@ var Suggestions = function(param) {
|
|
|
3431
3460
|
};
|
|
3432
3461
|
Suggestions.Item = Item;
|
|
3433
3462
|
// src/components/markdown/MarkdownProvider/index.tsx
|
|
3434
|
-
import { useMemo as
|
|
3463
|
+
import { useMemo as useMemo15 } from "react";
|
|
3435
3464
|
import { jsx as jsx65 } from "react/jsx-runtime";
|
|
3436
3465
|
var MarkdownProvider = function(_param) {
|
|
3437
3466
|
var children = _param.children, rest = _object_without_properties(_param, [
|
|
3438
3467
|
"children"
|
|
3439
3468
|
]);
|
|
3440
3469
|
var prevMarkdownContext = useMarkdownContext();
|
|
3441
|
-
var value =
|
|
3470
|
+
var value = useMemo15(function() {
|
|
3442
3471
|
return merge(prevMarkdownContext, rest);
|
|
3443
3472
|
}, [
|
|
3444
3473
|
rest,
|