@superinterface/react 2.17.1 → 2.17.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/index.cjs +159 -80
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +114 -35
- package/dist/index.js.map +1 -1
- package/package.json +1 -2
package/dist/index.d.cts
CHANGED
|
@@ -14,11 +14,11 @@ import * as openai_resources_beta_threads_runs_steps from 'openai/resources/beta
|
|
|
14
14
|
declare const options: {
|
|
15
15
|
get: ({ assistantId, }: {
|
|
16
16
|
assistantId: string;
|
|
17
|
-
}) =>
|
|
17
|
+
}) => any;
|
|
18
18
|
set: ({ assistantId, threadId, }: {
|
|
19
19
|
assistantId: string;
|
|
20
20
|
threadId: string;
|
|
21
|
-
}) =>
|
|
21
|
+
}) => any;
|
|
22
22
|
};
|
|
23
23
|
|
|
24
24
|
type Args$7 = {
|
package/dist/index.d.ts
CHANGED
|
@@ -14,11 +14,11 @@ import * as openai_resources_beta_threads_runs_steps from 'openai/resources/beta
|
|
|
14
14
|
declare const options: {
|
|
15
15
|
get: ({ assistantId, }: {
|
|
16
16
|
assistantId: string;
|
|
17
|
-
}) =>
|
|
17
|
+
}) => any;
|
|
18
18
|
set: ({ assistantId, threadId, }: {
|
|
19
19
|
assistantId: string;
|
|
20
20
|
threadId: string;
|
|
21
|
-
}) =>
|
|
21
|
+
}) => any;
|
|
22
22
|
};
|
|
23
23
|
|
|
24
24
|
type Args$7 = {
|
package/dist/index.js
CHANGED
|
@@ -2664,8 +2664,17 @@ import { Container as RadixContainer, Flex as Flex19 } from "@radix-ui/themes";
|
|
|
2664
2664
|
// src/components/threads/Thread/MessageForm/Field/Control.tsx
|
|
2665
2665
|
import { Flex as Flex16 } from "@radix-ui/themes";
|
|
2666
2666
|
import { useFormContext } from "react-hook-form";
|
|
2667
|
-
|
|
2668
|
-
import {
|
|
2667
|
+
// src/hooks/misc/usePrevious.ts
|
|
2668
|
+
import { useEffect as useEffect3, useRef as useRef4 } from "react";
|
|
2669
|
+
var usePrevious = function(state) {
|
|
2670
|
+
var ref = useRef4();
|
|
2671
|
+
useEffect3(function() {
|
|
2672
|
+
ref.current = state;
|
|
2673
|
+
});
|
|
2674
|
+
return ref.current;
|
|
2675
|
+
};
|
|
2676
|
+
// src/components/threads/Thread/MessageForm/Field/Control.tsx
|
|
2677
|
+
import { useContext as useContext11, useMemo as useMemo9, useRef as useRef5, useEffect as useEffect4 } from "react";
|
|
2669
2678
|
// src/components/textareas/TextareaBase/index.tsx
|
|
2670
2679
|
import { forwardRef as forwardRef3 } from "react";
|
|
2671
2680
|
import TextareaAutosize from "react-textarea-autosize";
|
|
@@ -2713,9 +2722,9 @@ var Input = function() {
|
|
|
2713
2722
|
isLoading
|
|
2714
2723
|
]);
|
|
2715
2724
|
var isDisabledPrevious = usePrevious(isDisabled);
|
|
2716
|
-
var textareaRef =
|
|
2725
|
+
var textareaRef = useRef5(null);
|
|
2717
2726
|
var textareaProps = register("content");
|
|
2718
|
-
|
|
2727
|
+
useEffect4(function() {
|
|
2719
2728
|
if (isDisabled) return;
|
|
2720
2729
|
if (!isDisabledPrevious) return;
|
|
2721
2730
|
if (!textareaRef.current) return;
|
|
@@ -3549,7 +3558,6 @@ ThreadDialog.Root = Root9;
|
|
|
3549
3558
|
ThreadDialog.Trigger = Trigger;
|
|
3550
3559
|
ThreadDialog.Content = Content4;
|
|
3551
3560
|
// src/components/threads/AudioThread/Root/index.tsx
|
|
3552
|
-
import "regenerator-runtime/runtime";
|
|
3553
3561
|
import { Flex as Flex25 } from "@radix-ui/themes";
|
|
3554
3562
|
// src/contexts/threads/AudioThreadContext/index.ts
|
|
3555
3563
|
import { createContext as createContext12 } from "react";
|
|
@@ -3608,8 +3616,58 @@ var AudioThreadContext = createContext12({
|
|
|
3608
3616
|
})
|
|
3609
3617
|
}
|
|
3610
3618
|
});
|
|
3611
|
-
// src/
|
|
3612
|
-
import {
|
|
3619
|
+
// src/hooks/misc/usePermission/index.ts
|
|
3620
|
+
import { useEffect as useEffect5, useState as useState4 } from "react";
|
|
3621
|
+
// src/hooks/misc/usePermission/util.ts
|
|
3622
|
+
var noop = function() {};
|
|
3623
|
+
function on(obj) {
|
|
3624
|
+
for(var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
|
|
3625
|
+
args[_key - 1] = arguments[_key];
|
|
3626
|
+
}
|
|
3627
|
+
if (obj && obj.addEventListener) {
|
|
3628
|
+
var _obj;
|
|
3629
|
+
(_obj = obj).addEventListener.apply(_obj, _to_consumable_array(args));
|
|
3630
|
+
}
|
|
3631
|
+
}
|
|
3632
|
+
function off(obj) {
|
|
3633
|
+
for(var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
|
|
3634
|
+
args[_key - 1] = arguments[_key];
|
|
3635
|
+
}
|
|
3636
|
+
if (obj && obj.removeEventListener) {
|
|
3637
|
+
var _obj;
|
|
3638
|
+
(_obj = obj).removeEventListener.apply(_obj, _to_consumable_array(args));
|
|
3639
|
+
}
|
|
3640
|
+
}
|
|
3641
|
+
// src/hooks/misc/usePermission/index.ts
|
|
3642
|
+
var usePermission = function(permissionDesc) {
|
|
3643
|
+
var _useState4 = _sliced_to_array(useState4(""), 2), state = _useState4[0], setState = _useState4[1];
|
|
3644
|
+
useEffect5(function() {
|
|
3645
|
+
var mounted = true;
|
|
3646
|
+
var permissionStatus = null;
|
|
3647
|
+
var onChange = function() {
|
|
3648
|
+
if (!mounted) {
|
|
3649
|
+
return;
|
|
3650
|
+
}
|
|
3651
|
+
setState(function() {
|
|
3652
|
+
var _permissionStatus_state;
|
|
3653
|
+
return (_permissionStatus_state = permissionStatus === null || permissionStatus === void 0 ? void 0 : permissionStatus.state) !== null && _permissionStatus_state !== void 0 ? _permissionStatus_state : "";
|
|
3654
|
+
});
|
|
3655
|
+
};
|
|
3656
|
+
navigator.permissions.query(permissionDesc).then(function(status) {
|
|
3657
|
+
permissionStatus = status;
|
|
3658
|
+
on(permissionStatus, "change", onChange);
|
|
3659
|
+
onChange();
|
|
3660
|
+
}).catch(noop);
|
|
3661
|
+
return function() {
|
|
3662
|
+
permissionStatus && off(permissionStatus, "change", onChange);
|
|
3663
|
+
mounted = false;
|
|
3664
|
+
permissionStatus = null;
|
|
3665
|
+
};
|
|
3666
|
+
}, [
|
|
3667
|
+
permissionDesc
|
|
3668
|
+
]);
|
|
3669
|
+
return state;
|
|
3670
|
+
};
|
|
3613
3671
|
// src/components/threads/AudioThread/Root/lib/blobToData.ts
|
|
3614
3672
|
var blobToData = function(blob) {
|
|
3615
3673
|
return new Promise(function(resolve) {
|
|
@@ -3649,19 +3707,40 @@ var useStatus = function(param) {
|
|
|
3649
3707
|
// src/hooks/audioThreads/useRecorder/index.ts
|
|
3650
3708
|
import dayjs3 from "dayjs";
|
|
3651
3709
|
import { useAudioCapture } from "use-audio-capture";
|
|
3652
|
-
import { useMemo as useMemo11, useRef as
|
|
3710
|
+
import { useMemo as useMemo11, useRef as useRef7, useState as useState5, useCallback as useCallback4, useEffect as useEffect7 } from "react";
|
|
3653
3711
|
import { useAudioPlayer } from "react-use-audio-player";
|
|
3654
|
-
|
|
3712
|
+
// src/hooks/misc/useInterval.ts
|
|
3713
|
+
import { useEffect as useEffect6, useRef as useRef6 } from "react";
|
|
3714
|
+
var useInterval = function(callback, delay) {
|
|
3715
|
+
var savedCallback = useRef6(function() {});
|
|
3716
|
+
useEffect6(function() {
|
|
3717
|
+
savedCallback.current = callback;
|
|
3718
|
+
});
|
|
3719
|
+
useEffect6(function() {
|
|
3720
|
+
if (delay !== null) {
|
|
3721
|
+
var interval = setInterval(function() {
|
|
3722
|
+
return savedCallback.current();
|
|
3723
|
+
}, delay || 0);
|
|
3724
|
+
return function() {
|
|
3725
|
+
return clearInterval(interval);
|
|
3726
|
+
};
|
|
3727
|
+
}
|
|
3728
|
+
return void 0;
|
|
3729
|
+
}, [
|
|
3730
|
+
delay
|
|
3731
|
+
]);
|
|
3732
|
+
};
|
|
3733
|
+
// src/hooks/audioThreads/useRecorder/index.ts
|
|
3655
3734
|
var useRecorder = function(param) {
|
|
3656
3735
|
var isStopOnSilence = param.isStopOnSilence, onStart = param.onStart, onStop = param.onStop;
|
|
3657
|
-
var
|
|
3658
|
-
var
|
|
3659
|
-
var
|
|
3660
|
-
var
|
|
3736
|
+
var _useState5 = _sliced_to_array(useState5(null), 2), silenceStart = _useState5[0], setSilenceStart = _useState5[1];
|
|
3737
|
+
var _useState51 = _sliced_to_array(useState5(null), 2), noiseStart = _useState51[0], setNoiseStart = _useState51[1];
|
|
3738
|
+
var _useState52 = _sliced_to_array(useState5(null), 2), mediaStream = _useState52[0], setMediaStream = _useState52[1];
|
|
3739
|
+
var _useState53 = _sliced_to_array(useState5("idle"), 2), status = _useState53[0], setStatus = _useState53[1];
|
|
3661
3740
|
var startAudioPlayer = useAudioPlayer();
|
|
3662
3741
|
var endAudioPlayer = useAudioPlayer();
|
|
3663
|
-
var
|
|
3664
|
-
|
|
3742
|
+
var _useState54 = _sliced_to_array(useState5(false), 2), isLoaded = _useState54[0], setIsLoaded = _useState54[1];
|
|
3743
|
+
useEffect7(function() {
|
|
3665
3744
|
if (isLoaded) return;
|
|
3666
3745
|
setIsLoaded(true);
|
|
3667
3746
|
}, [
|
|
@@ -3719,9 +3798,9 @@ var useRecorder = function(param) {
|
|
|
3719
3798
|
setNoiseStart(null);
|
|
3720
3799
|
}
|
|
3721
3800
|
});
|
|
3722
|
-
var
|
|
3723
|
-
var isInited =
|
|
3724
|
-
|
|
3801
|
+
var _useState55 = _sliced_to_array(useState5(null), 2), audioEngine = _useState55[0], setAudioEngine = _useState55[1];
|
|
3802
|
+
var isInited = useRef7(false);
|
|
3803
|
+
useEffect7(function() {
|
|
3725
3804
|
if (!mediaStream) return;
|
|
3726
3805
|
if (isInited.current) return;
|
|
3727
3806
|
isInited.current = true;
|
|
@@ -3774,7 +3853,7 @@ var useRecorder = function(param) {
|
|
|
3774
3853
|
setNoiseStart,
|
|
3775
3854
|
setSilenceStart
|
|
3776
3855
|
]);
|
|
3777
|
-
|
|
3856
|
+
useEffect7(function() {
|
|
3778
3857
|
if (!isStopOnSilence) return;
|
|
3779
3858
|
requestAnimationFrame(function() {
|
|
3780
3859
|
return handleSilence();
|
|
@@ -3797,7 +3876,7 @@ var useRecorder = function(param) {
|
|
|
3797
3876
|
});
|
|
3798
3877
|
};
|
|
3799
3878
|
// src/hooks/audioThreads/useMessageAudio/index.ts
|
|
3800
|
-
import { useMemo as useMemo12, useRef as
|
|
3879
|
+
import { useMemo as useMemo12, useRef as useRef8, useState as useState6, useEffect as useEffect8 } from "react";
|
|
3801
3880
|
import nlp from "compromise";
|
|
3802
3881
|
import { Howler } from "howler";
|
|
3803
3882
|
import { useAudioPlayer as useAudioPlayer2 } from "react-use-audio-player";
|
|
@@ -3835,13 +3914,13 @@ var getMessageSentences = function(param) {
|
|
|
3835
3914
|
};
|
|
3836
3915
|
var useMessageAudio = function(param) {
|
|
3837
3916
|
var onEnd = param.onEnd;
|
|
3838
|
-
var
|
|
3839
|
-
var
|
|
3840
|
-
var
|
|
3917
|
+
var _useState6 = _sliced_to_array(useState6(false), 2), isAudioPlayed = _useState6[0], setIsAudioPlayed = _useState6[1];
|
|
3918
|
+
var _useState61 = _sliced_to_array(useState6([]), 2), stoppedMessageIds = _useState61[0], setStoppedMessageIds = _useState61[1];
|
|
3919
|
+
var _useState62 = _sliced_to_array(useState6([]), 2), playedMessageSentences = _useState62[0], setPlayedMessageSentences = _useState62[1];
|
|
3841
3920
|
var audioPlayer = useAudioPlayer2();
|
|
3842
3921
|
var nextAudioPlayer = useAudioPlayer2();
|
|
3843
3922
|
var superinterfaceContext = useSuperinterfaceContext();
|
|
3844
|
-
var
|
|
3923
|
+
var _useState63 = _sliced_to_array(useState6(false), 2), isPlaying = _useState63[0], setIsPlaying = _useState63[1];
|
|
3845
3924
|
var latestMessageProps = useLatestMessage();
|
|
3846
3925
|
var unplayedMessageSentences = useMemo12(function() {
|
|
3847
3926
|
if (!latestMessageProps.latestMessage) return [];
|
|
@@ -3864,7 +3943,7 @@ var useMessageAudio = function(param) {
|
|
|
3864
3943
|
latestMessageProps,
|
|
3865
3944
|
playedMessageSentences
|
|
3866
3945
|
]);
|
|
3867
|
-
|
|
3946
|
+
useEffect8(function() {
|
|
3868
3947
|
if (isPlaying) return;
|
|
3869
3948
|
if (audioPlayer.playing) return;
|
|
3870
3949
|
if (!latestMessageProps.latestMessage) return;
|
|
@@ -3932,7 +4011,7 @@ var useMessageAudio = function(param) {
|
|
|
3932
4011
|
playedMessageSentences,
|
|
3933
4012
|
onEnd
|
|
3934
4013
|
]);
|
|
3935
|
-
|
|
4014
|
+
useEffect8(function() {
|
|
3936
4015
|
if (isHtmlAudioSupported) {
|
|
3937
4016
|
var _Howler__howls___sounds_, _Howler__howls_;
|
|
3938
4017
|
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;
|
|
@@ -3941,9 +4020,9 @@ var useMessageAudio = function(param) {
|
|
|
3941
4020
|
}, [
|
|
3942
4021
|
audioPlayer
|
|
3943
4022
|
]);
|
|
3944
|
-
var
|
|
3945
|
-
var isAudioEngineInited =
|
|
3946
|
-
|
|
4023
|
+
var _useState64 = _sliced_to_array(useState6(null), 2), audioEngine = _useState64[0], setAudioEngine = _useState64[1];
|
|
4024
|
+
var isAudioEngineInited = useRef8(false);
|
|
4025
|
+
useEffect8(function() {
|
|
3947
4026
|
if (!audioPlayer.playing) return;
|
|
3948
4027
|
if (isAudioEngineInited.current) return;
|
|
3949
4028
|
isAudioEngineInited.current = true;
|
|
@@ -4060,7 +4139,7 @@ var Root12 = function(param) {
|
|
|
4060
4139
|
});
|
|
4061
4140
|
};
|
|
4062
4141
|
// src/components/threads/AudioThread/Visualization/index.tsx
|
|
4063
|
-
import { useContext as useContext15, useState as
|
|
4142
|
+
import { useContext as useContext15, useState as useState8, useCallback as useCallback6, useEffect as useEffect10 } from "react";
|
|
4064
4143
|
import _9 from "lodash";
|
|
4065
4144
|
import { Flex as Flex27 } from "@radix-ui/themes";
|
|
4066
4145
|
// src/hooks/threads/useAudioThreadContext/index.ts
|
|
@@ -4071,13 +4150,13 @@ var useAudioThreadContext = function() {
|
|
|
4071
4150
|
// src/components/threads/AudioThread/BarsVisualizer/index.tsx
|
|
4072
4151
|
import _8 from "lodash";
|
|
4073
4152
|
import { Flex as Flex26, Grid } from "@radix-ui/themes";
|
|
4074
|
-
import { useState as
|
|
4153
|
+
import { useState as useState7, useEffect as useEffect9, useCallback as useCallback5 } from "react";
|
|
4075
4154
|
import { cluster } from "radash";
|
|
4076
4155
|
import { jsx as jsx67 } from "react/jsx-runtime";
|
|
4077
4156
|
var barCount = 4;
|
|
4078
4157
|
var BarsVisualizer = function(param) {
|
|
4079
4158
|
var visualizationAnalyser = param.visualizationAnalyser, backgroundColor = param.backgroundColor, height = param.height, barWidth = param.barWidth;
|
|
4080
|
-
var
|
|
4159
|
+
var _useState7 = _sliced_to_array(useState7([]), 2), barHeights = _useState7[0], setBarHeights = _useState7[1];
|
|
4081
4160
|
var draw = useCallback5(function(param) {
|
|
4082
4161
|
var visualizationAnalyser2 = param.visualizationAnalyser;
|
|
4083
4162
|
if (!visualizationAnalyser2) {
|
|
@@ -4096,7 +4175,7 @@ var BarsVisualizer = function(param) {
|
|
|
4096
4175
|
});
|
|
4097
4176
|
});
|
|
4098
4177
|
}, []);
|
|
4099
|
-
|
|
4178
|
+
useEffect9(function() {
|
|
4100
4179
|
draw({
|
|
4101
4180
|
visualizationAnalyser: visualizationAnalyser
|
|
4102
4181
|
});
|
|
@@ -4137,7 +4216,7 @@ import { jsx as jsx68, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
|
4137
4216
|
var Visualization = function() {
|
|
4138
4217
|
var audioThreadContext = useAudioThreadContext();
|
|
4139
4218
|
var assistantNameContext = useContext15(AssistantNameContext);
|
|
4140
|
-
var
|
|
4219
|
+
var _useState8 = _sliced_to_array(useState8(0), 2), scale = _useState8[0], setScale = _useState8[1];
|
|
4141
4220
|
var draw = useCallback6(function(param) {
|
|
4142
4221
|
var visualizationAnalyser = param.visualizationAnalyser;
|
|
4143
4222
|
if (!visualizationAnalyser) {
|
|
@@ -4153,7 +4232,7 @@ var Visualization = function() {
|
|
|
4153
4232
|
});
|
|
4154
4233
|
});
|
|
4155
4234
|
}, []);
|
|
4156
|
-
|
|
4235
|
+
useEffect10(function() {
|
|
4157
4236
|
draw({
|
|
4158
4237
|
visualizationAnalyser: audioThreadContext.recorderProps.visualizationAnalyser
|
|
4159
4238
|
});
|