@magmamath/students-features 1.3.8-rc.1 → 1.3.8-rc.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/commonjs/features/voice/constants.js +2 -2
- package/dist/commonjs/features/voice/constants.js.map +1 -1
- package/dist/commonjs/features/voice/recording/components/VoiceRecord.js +8 -10
- package/dist/commonjs/features/voice/recording/components/VoiceRecord.js.map +1 -1
- package/dist/commonjs/features/voice/recording/components/VoiceRecordButton.js +5 -3
- package/dist/commonjs/features/voice/recording/components/VoiceRecordButton.js.map +1 -1
- package/dist/commonjs/features/voice/recording/hooks/useVoiceRecorderAnimation.js +3 -3
- package/dist/commonjs/features/voice/recording/hooks/useVoiceRecorderAnimation.js.map +1 -1
- package/dist/commonjs/features/voice/recording/model/VoiceRecord.model.js +0 -5
- package/dist/commonjs/features/voice/recording/model/VoiceRecord.model.js.map +1 -1
- package/dist/module/features/voice/constants.js +1 -1
- package/dist/module/features/voice/constants.js.map +1 -1
- package/dist/module/features/voice/recording/components/VoiceRecord.js +9 -11
- package/dist/module/features/voice/recording/components/VoiceRecord.js.map +1 -1
- package/dist/module/features/voice/recording/components/VoiceRecordButton.js +6 -4
- package/dist/module/features/voice/recording/components/VoiceRecordButton.js.map +1 -1
- package/dist/module/features/voice/recording/hooks/useVoiceRecorderAnimation.js +3 -3
- package/dist/module/features/voice/recording/hooks/useVoiceRecorderAnimation.js.map +1 -1
- package/dist/module/features/voice/recording/model/VoiceRecord.model.js +0 -5
- package/dist/module/features/voice/recording/model/VoiceRecord.model.js.map +1 -1
- package/dist/typescript/commonjs/features/voice/constants.d.ts +1 -1
- package/dist/typescript/commonjs/features/voice/recording/components/VoiceRecord.d.ts +3 -1
- package/dist/typescript/commonjs/features/voice/recording/components/VoiceRecord.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voice/recording/components/VoiceRecordButton.d.ts +3 -1
- package/dist/typescript/commonjs/features/voice/recording/components/VoiceRecordButton.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voice/recording/hooks/useVoiceRecorderAnimation.d.ts +1 -1
- package/dist/typescript/commonjs/features/voice/recording/hooks/useVoiceRecorderAnimation.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voice/recording/model/VoiceRecord.model.d.ts +1 -3
- package/dist/typescript/commonjs/features/voice/recording/model/VoiceRecord.model.d.ts.map +1 -1
- package/dist/typescript/module/features/voice/constants.d.ts +1 -1
- package/dist/typescript/module/features/voice/recording/components/VoiceRecord.d.ts +3 -1
- package/dist/typescript/module/features/voice/recording/components/VoiceRecord.d.ts.map +1 -1
- package/dist/typescript/module/features/voice/recording/components/VoiceRecordButton.d.ts +3 -1
- package/dist/typescript/module/features/voice/recording/components/VoiceRecordButton.d.ts.map +1 -1
- package/dist/typescript/module/features/voice/recording/hooks/useVoiceRecorderAnimation.d.ts +1 -1
- package/dist/typescript/module/features/voice/recording/hooks/useVoiceRecorderAnimation.d.ts.map +1 -1
- package/dist/typescript/module/features/voice/recording/model/VoiceRecord.model.d.ts +1 -3
- package/dist/typescript/module/features/voice/recording/model/VoiceRecord.model.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/features/voice/constants.ts +1 -1
- package/src/features/voice/recording/components/VoiceRecord.tsx +8 -11
- package/src/features/voice/recording/components/VoiceRecordButton.tsx +11 -12
- package/src/features/voice/recording/hooks/useVoiceRecorderAnimation.ts +4 -4
- package/src/features/voice/recording/model/VoiceRecord.model.ts +0 -7
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.VoiceRecorderState = exports.
|
|
6
|
+
exports.VoiceRecorderState = exports.VOICE_RECORD_SHADOWS = exports.VOICE_RECORDER_MIN_DURATION_MS = exports.VOICE_RECORDER_MAX_DURATION_MS = exports.VOICE_RECORDER_CONTAINER_SIZES = exports.TRANSCRIPT_RETRY_INTERVAL_MS = exports.TRANSCRIPT_MAX_RETRIES = exports.NO_AUDIO_BE_MESSAGE = exports.DROPDOWN_MAX_CONTENT_HEIGHT = void 0;
|
|
7
7
|
const VOICE_RECORDER_CONTAINER_SIZES = exports.VOICE_RECORDER_CONTAINER_SIZES = {
|
|
8
8
|
COLLAPSED: {
|
|
9
9
|
default: 61,
|
|
@@ -28,7 +28,7 @@ const TRANSCRIPT_MAX_RETRIES = exports.TRANSCRIPT_MAX_RETRIES = 15;
|
|
|
28
28
|
const NO_AUDIO_BE_MESSAGE = exports.NO_AUDIO_BE_MESSAGE = 'No audio';
|
|
29
29
|
|
|
30
30
|
//todo: remove native shadows from rn-ui and set from WEB for both platforms
|
|
31
|
-
const
|
|
31
|
+
const VOICE_RECORD_SHADOWS = exports.VOICE_RECORD_SHADOWS = {
|
|
32
32
|
default: '0 1px 3px 0 rgba(51, 51, 51, 0.10), 0 0 1px 0 rgba(51, 51, 51, 0.40)',
|
|
33
33
|
advanced: '0 0 1px 0 rgba(51, 51, 51, 0.20), 0 3px 10px 0 rgba(51, 51, 51, 0.16)'
|
|
34
34
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["VOICE_RECORDER_CONTAINER_SIZES","exports","COLLAPSED","default","advanced","EXPANDED","VOICE_RECORDER_MAX_DURATION_MS","VOICE_RECORDER_MIN_DURATION_MS","VoiceRecorderState","DROPDOWN_MAX_CONTENT_HEIGHT","TRANSCRIPT_RETRY_INTERVAL_MS","TRANSCRIPT_MAX_RETRIES","NO_AUDIO_BE_MESSAGE","
|
|
1
|
+
{"version":3,"names":["VOICE_RECORDER_CONTAINER_SIZES","exports","COLLAPSED","default","advanced","EXPANDED","VOICE_RECORDER_MAX_DURATION_MS","VOICE_RECORDER_MIN_DURATION_MS","VoiceRecorderState","DROPDOWN_MAX_CONTENT_HEIGHT","TRANSCRIPT_RETRY_INTERVAL_MS","TRANSCRIPT_MAX_RETRIES","NO_AUDIO_BE_MESSAGE","VOICE_RECORD_SHADOWS"],"sourceRoot":"../../../../src","sources":["features/voice/constants.ts"],"mappings":";;;;;;AAAO,MAAMA,8BAA8B,GAAAC,OAAA,CAAAD,8BAAA,GAAG;EAC5CE,SAAS,EAAE;IACTC,OAAO,EAAE,EAAE;IACXC,QAAQ,EAAE;EACZ,CAAC;EACDC,QAAQ,EAAE;IACRF,OAAO,EAAE,GAAG;IACZC,QAAQ,EAAE;EACZ;AACF,CAAC;AACM,MAAME,8BAA8B,GAAAL,OAAA,CAAAK,8BAAA,GAAG,KAAK,EAAC;AAC7C,MAAMC,8BAA8B,GAAAN,OAAA,CAAAM,8BAAA,GAAG,GAAG;AAAA,IACrCC,kBAAkB,GAAAP,OAAA,CAAAO,kBAAA,0BAAlBA,kBAAkB;EAAlBA,kBAAkB,CAAlBA,kBAAkB;EAAlBA,kBAAkB,CAAlBA,kBAAkB;EAAlBA,kBAAkB,CAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA;AAKvB,MAAMC,2BAA2B,GAAAR,OAAA,CAAAQ,2BAAA,GAAG,GAAG;AACvC,MAAMC,4BAA4B,GAAAT,OAAA,CAAAS,4BAAA,GAAG,IAAI;AACzC,MAAMC,sBAAsB,GAAAV,OAAA,CAAAU,sBAAA,GAAG,EAAE;AACjC,MAAMC,mBAAmB,GAAAX,OAAA,CAAAW,mBAAA,GAAG,UAAU;;AAE7C;AACO,MAAMC,oBAAoB,GAAAZ,OAAA,CAAAY,oBAAA,GAAG;EAClCV,OAAO,EAAE,sEAAsE;EAC/EC,QAAQ,EAAE;AACZ,CAAC","ignoreList":[]}
|
|
@@ -22,33 +22,34 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
|
|
|
22
22
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
23
23
|
const VoiceRecord = ({
|
|
24
24
|
style,
|
|
25
|
-
model
|
|
25
|
+
model,
|
|
26
|
+
buttonVariant
|
|
26
27
|
}) => {
|
|
27
28
|
const {
|
|
28
29
|
recorderState
|
|
29
30
|
} = (0, _useVoiceRecorder.useVoiceRecorder)(model);
|
|
30
31
|
const [isExpanded, isDisabled] = (0, _effectorReact.useUnit)([model.$isExpanded, model.$isButtonDisabled]);
|
|
31
|
-
const recordButtonVariant = model.recordButtonVariant;
|
|
32
32
|
const {
|
|
33
33
|
containerAnimatedStyle
|
|
34
|
-
} = (0, _useVoiceRecorderAnimation.useVoiceRecorderAnimation)(isExpanded,
|
|
34
|
+
} = (0, _useVoiceRecorderAnimation.useVoiceRecorderAnimation)(isExpanded, buttonVariant);
|
|
35
35
|
(0, _react.useEffect)(() => {
|
|
36
36
|
return () => {
|
|
37
37
|
model.cleanup();
|
|
38
38
|
};
|
|
39
39
|
}, [model]);
|
|
40
40
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeReanimated.default.View, {
|
|
41
|
-
style: [styles.container,
|
|
42
|
-
boxShadow: _constants.
|
|
41
|
+
style: [styles.container, buttonVariant === _types.RecordButtonVariant.ADVANCED && styles.advancedVariantContainer, {
|
|
42
|
+
boxShadow: _constants.VOICE_RECORD_SHADOWS[buttonVariant]
|
|
43
43
|
}, style, containerAnimatedStyle],
|
|
44
44
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_VoiceRecordButton.VoiceRecordButton, {
|
|
45
|
-
model: model
|
|
45
|
+
model: model,
|
|
46
|
+
buttonVariant: buttonVariant
|
|
46
47
|
}), isExpanded && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeReanimated.default.View, {
|
|
47
48
|
entering: _reactNativeReanimated.FadeIn,
|
|
48
49
|
exiting: _reactNativeReanimated.FadeOut,
|
|
49
50
|
style: styles.expendedContainer,
|
|
50
51
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_VoiceRecordTimer.VoiceRecordTimer, {
|
|
51
|
-
style: [styles.timer,
|
|
52
|
+
style: [styles.timer, buttonVariant === _types.RecordButtonVariant.ADVANCED && styles.advancedVariantTimer],
|
|
52
53
|
model: model,
|
|
53
54
|
recordingFileDurationMs: recorderState.durationMillis
|
|
54
55
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_VoiceRecordDivider.VoiceRecordDivider, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_VoiceRecordDeleteButton.VoiceRecordDeleteButton, {
|
|
@@ -75,9 +76,6 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
75
76
|
timer: {
|
|
76
77
|
marginTop: _reactNativeUi.SPACING[400]
|
|
77
78
|
},
|
|
78
|
-
defaultTimer: {
|
|
79
|
-
marginTop: _reactNativeUi.SPACING[300]
|
|
80
|
-
},
|
|
81
79
|
advancedVariantTimer: {
|
|
82
80
|
marginTop: _reactNativeUi.SPACING[150]
|
|
83
81
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_VoiceRecordButton","_react","_interopRequireWildcard","_reactNativeUi","_VoiceRecordDeleteButton","_VoiceRecordDivider","_VoiceRecordTimer","_reactNativeReanimated","_useVoiceRecorder","_useVoiceRecorderAnimation","_effectorReact","_types","_constants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","VoiceRecord","style","model","recorderState","useVoiceRecorder","isExpanded","isDisabled","useUnit","$isExpanded","$isButtonDisabled","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_VoiceRecordButton","_react","_interopRequireWildcard","_reactNativeUi","_VoiceRecordDeleteButton","_VoiceRecordDivider","_VoiceRecordTimer","_reactNativeReanimated","_useVoiceRecorder","_useVoiceRecorderAnimation","_effectorReact","_types","_constants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","VoiceRecord","style","model","buttonVariant","recorderState","useVoiceRecorder","isExpanded","isDisabled","useUnit","$isExpanded","$isButtonDisabled","containerAnimatedStyle","useVoiceRecorderAnimation","useEffect","cleanup","jsxs","View","styles","container","RecordButtonVariant","ADVANCED","advancedVariantContainer","boxShadow","VOICE_RECORD_SHADOWS","children","jsx","VoiceRecordButton","entering","FadeIn","exiting","FadeOut","expendedContainer","VoiceRecordTimer","timer","advancedVariantTimer","recordingFileDurationMs","durationMillis","VoiceRecordDivider","VoiceRecordDeleteButton","onPress","events","deleteRecord","exports","StyleSheet","create","alignItems","padding","paddingBottom","backgroundColor","COLORS","NEUTRAL_3","borderRadius","BORDER_RADIUS","overflow","marginTop","SPACING"],"sourceRoot":"../../../../../../src","sources":["features/voice/recording/components/VoiceRecord.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -20,7 +20,8 @@ const defaultButtonStyles = {
|
|
|
20
20
|
}
|
|
21
21
|
};
|
|
22
22
|
const VoiceRecordButton = ({
|
|
23
|
-
model
|
|
23
|
+
model,
|
|
24
|
+
buttonVariant
|
|
24
25
|
}) => {
|
|
25
26
|
const t = (0, _index.useText)();
|
|
26
27
|
const availableInputs = (0, _effectorReact.useUnit)(model.recorderModel.$availableInputs);
|
|
@@ -38,7 +39,7 @@ const VoiceRecordButton = ({
|
|
|
38
39
|
},
|
|
39
40
|
pointerEvents: !hasInputs || isInitializing ? 'box-only' : 'auto',
|
|
40
41
|
style: [isButtonDisabled ? styles.disabledCursor : undefined],
|
|
41
|
-
children:
|
|
42
|
+
children: buttonVariant === _types.RecordButtonVariant.ADVANCED ? /*#__PURE__*/(0, _jsxRuntime.jsx)(AdvancedButton, {
|
|
42
43
|
isRecording: isRecording,
|
|
43
44
|
isIdle: isIdle,
|
|
44
45
|
disabled: isButtonDisabled,
|
|
@@ -87,7 +88,7 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
87
88
|
alignItems: 'center',
|
|
88
89
|
justifyContent: 'center',
|
|
89
90
|
borderRadius: _reactNativeUi.BORDER_RADIUS[300],
|
|
90
|
-
boxShadow: _constants.
|
|
91
|
+
boxShadow: _constants.VOICE_RECORD_SHADOWS[_types.RecordButtonVariant.ADVANCED]
|
|
91
92
|
},
|
|
92
93
|
advancedIconContainer: {
|
|
93
94
|
width: 36,
|
|
@@ -97,6 +98,7 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
97
98
|
alignItems: 'center'
|
|
98
99
|
},
|
|
99
100
|
disabledCursor: {
|
|
101
|
+
// @ts-expect-error web-only property
|
|
100
102
|
cursor: 'not-allowed'
|
|
101
103
|
},
|
|
102
104
|
microphoneIconWeb: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNativeUi","_reactNative","_effectorReact","_constants","_index","_types","_jsxRuntime","e","__esModule","default","defaultButtonStyles","button","width","height","VoiceRecordButton","model","t","useText","availableInputs","useUnit","recorderModel","$availableInputs","voiceRecordState","$voiceRecordState","isButtonDisabled","$isButtonDisabled","isInitializing","initializeRecording","pending","isRecording","VoiceRecorderState","RECORDING","isIdle","IDLE","hasInputs","length","jsx","Pressable","onPressIn","preventDefault","notification","warning","pointerEvents","style","styles","disabledCursor","undefined","children","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNativeUi","_reactNative","_effectorReact","_constants","_index","_types","_jsxRuntime","e","__esModule","default","defaultButtonStyles","button","width","height","VoiceRecordButton","model","buttonVariant","t","useText","availableInputs","useUnit","recorderModel","$availableInputs","voiceRecordState","$voiceRecordState","isButtonDisabled","$isButtonDisabled","isInitializing","initializeRecording","pending","isRecording","VoiceRecorderState","RECORDING","isIdle","IDLE","hasInputs","length","jsx","Pressable","onPressIn","preventDefault","notification","warning","pointerEvents","style","styles","disabledCursor","undefined","children","RecordButtonVariant","ADVANCED","AdvancedButton","disabled","recorderButtonHandler","Button","size","ButtonSize","LARGE","variant","ButtonVariant","SECONDARY","colorScheme","ButtonColor","WHITE","icon","CheckIcon","MicrophoneIcon","IS_WEB","microphoneIconWeb","microphoneIconNative","exports","advancedButtonContainer","View","advancedIconContainer","advancedIconContainerActive","color","COLORS","NEUTRAL_1","advancedMicrophoneIcon","NEUTRAL_5","NEUTRAL_9","StyleSheet","create","backgroundColor","alignItems","justifyContent","borderRadius","BORDER_RADIUS","boxShadow","VOICE_RECORD_SHADOWS","cursor","minWidth","minHeight","PRIMARY_BLUE"],"sourceRoot":"../../../../../../src","sources":["features/voice/recording/components/VoiceRecordButton.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,14 +6,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.useVoiceRecorderAnimation = void 0;
|
|
7
7
|
var _reactNativeReanimated = require("react-native-reanimated");
|
|
8
8
|
var _constants = require("../../constants.js");
|
|
9
|
-
const useVoiceRecorderAnimation = (isExpanded,
|
|
9
|
+
const useVoiceRecorderAnimation = (isExpanded, buttonVariant) => {
|
|
10
10
|
const containerAnimatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
|
|
11
11
|
return {
|
|
12
|
-
height: (0, _reactNativeReanimated.withTiming)(isExpanded ? _constants.VOICE_RECORDER_CONTAINER_SIZES.EXPANDED[
|
|
12
|
+
height: (0, _reactNativeReanimated.withTiming)(isExpanded ? _constants.VOICE_RECORDER_CONTAINER_SIZES.EXPANDED[buttonVariant] : _constants.VOICE_RECORDER_CONTAINER_SIZES.COLLAPSED[buttonVariant], {
|
|
13
13
|
duration: 280
|
|
14
14
|
})
|
|
15
15
|
};
|
|
16
|
-
}, [isExpanded,
|
|
16
|
+
}, [isExpanded, buttonVariant]);
|
|
17
17
|
return {
|
|
18
18
|
containerAnimatedStyle
|
|
19
19
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeReanimated","require","_constants","useVoiceRecorderAnimation","isExpanded","
|
|
1
|
+
{"version":3,"names":["_reactNativeReanimated","require","_constants","useVoiceRecorderAnimation","isExpanded","buttonVariant","containerAnimatedStyle","useAnimatedStyle","height","withTiming","VOICE_RECORDER_CONTAINER_SIZES","EXPANDED","COLLAPSED","duration","exports"],"sourceRoot":"../../../../../../src","sources":["features/voice/recording/hooks/useVoiceRecorderAnimation.ts"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAGO,MAAME,yBAAyB,GAAGA,CACvCC,UAAmB,EACnBC,aAAkC,KAC/B;EACH,MAAMC,sBAAsB,GAAG,IAAAC,uCAAgB,EAAC,MAAM;IACpD,OAAO;MACLC,MAAM,EAAE,IAAAC,iCAAU,EAChBL,UAAU,GACNM,yCAA8B,CAACC,QAAQ,CAACN,aAAa,CAAC,GACtDK,yCAA8B,CAACE,SAAS,CAACP,aAAa,CAAC,EAC3D;QACEQ,QAAQ,EAAE;MACZ,CACF;IACF,CAAC;EACH,CAAC,EAAE,CAACT,UAAU,EAAEC,aAAa,CAAC,CAAC;EAE/B,OAAO;IAAEC;EAAuB,CAAC;AACnC,CAAC;AAAAQ,OAAA,CAAAX,yBAAA,GAAAA,yBAAA","ignoreList":[]}
|
|
@@ -9,7 +9,6 @@ var _RecorderModel = require("./Recorder.model.js");
|
|
|
9
9
|
var _VoiceRecordCollection = require("./VoiceRecordCollection.js");
|
|
10
10
|
var _UploaderModel = require("./Uploader.model.js");
|
|
11
11
|
var _constants = require("../../constants.js");
|
|
12
|
-
var _types = require("../../types.js");
|
|
13
12
|
var _helpers = require("../../helpers.js");
|
|
14
13
|
var _index = require("../../../../shared/translation/index.js");
|
|
15
14
|
class VoiceRecordModel {
|
|
@@ -17,7 +16,6 @@ class VoiceRecordModel {
|
|
|
17
16
|
collection = new _VoiceRecordCollection.VoiceRecordsCollection();
|
|
18
17
|
uploader = new _UploaderModel.UploaderModel();
|
|
19
18
|
shouldDiscardRecording = false;
|
|
20
|
-
recordButtonVariant = _types.RecordButtonVariant.DEFAULT;
|
|
21
19
|
setCurrentKey = (0, _effector.createEvent)();
|
|
22
20
|
setCurrentRecord = (0, _effector.createEvent)();
|
|
23
21
|
reset = (0, _effector.createEvent)();
|
|
@@ -33,9 +31,6 @@ class VoiceRecordModel {
|
|
|
33
31
|
deleteAudioRecord = (0, _effector.createEffect)(async audioFileId => {
|
|
34
32
|
await this.api.deleteAudioFile(audioFileId);
|
|
35
33
|
});
|
|
36
|
-
setRecordButtonVariant = (0, _effector.createEffect)(variant => {
|
|
37
|
-
this.recordButtonVariant = variant;
|
|
38
|
-
});
|
|
39
34
|
deleteCurrentRecording = (0, _effector.attach)({
|
|
40
35
|
source: this.$currentKey,
|
|
41
36
|
mapParams: (props, currentKey) => ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_effector","require","_RecorderModel","_VoiceRecordCollection","_UploaderModel","_constants","
|
|
1
|
+
{"version":3,"names":["_effector","require","_RecorderModel","_VoiceRecordCollection","_UploaderModel","_constants","_helpers","_index","VoiceRecordModel","recorderModel","RecorderModel","collection","VoiceRecordsCollection","uploader","UploaderModel","shouldDiscardRecording","setCurrentKey","createEvent","setCurrentRecord","reset","setIsButtonDisabled","startAudioUpload","$currentKey","restore","$currentRecord","$isButtonDisabled","$isExpanded","combine","$voiceRecordState","recorderState","currentRecord","VoiceRecorderState","IDLE","deleteAudioRecord","createEffect","audioFileId","api","deleteAudioFile","deleteCurrentRecording","attach","source","mapParams","props","currentKey","notification","effect","recordingItem","get","id","abortUploadIfInProgress","resetRecordingState","success","t","initializeRecording","hasPermissions","ensureRecordingPermissions","error","inputs","getAvailableInputs","recorder","setAvailableInputs","length","start","catch","name","stop","clearStopResolver","cleanup","getStatus","isRecording","recordingStatusUpdate","status","isFinished","url","getRecordingItem","key","RECORDING","stopAndAwaitResult","console","undefined","controller","abortUpload","delete","handleAudioUpload","uri","durationMs","collectionItem","uploadPromise","upload","fileName","add","resolveRecord","then","data","update","setupUploadHandler","sample","clock","$lastKnownDurationMs","filter","fn","target","setupCurrentRecordSync","recorderButtonHandler","isInitializing","pending","lastKnownDurationMs","VOICE_RECORDER_MIN_DURATION_MS","warn","events","undoRecord","constructor","setApi","exports"],"sourceRoot":"../../../../../../src","sources":["features/voice/recording/model/VoiceRecord.model.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -24,7 +24,7 @@ export const TRANSCRIPT_MAX_RETRIES = 15;
|
|
|
24
24
|
export const NO_AUDIO_BE_MESSAGE = 'No audio';
|
|
25
25
|
|
|
26
26
|
//todo: remove native shadows from rn-ui and set from WEB for both platforms
|
|
27
|
-
export const
|
|
27
|
+
export const VOICE_RECORD_SHADOWS = {
|
|
28
28
|
default: '0 1px 3px 0 rgba(51, 51, 51, 0.10), 0 0 1px 0 rgba(51, 51, 51, 0.40)',
|
|
29
29
|
advanced: '0 0 1px 0 rgba(51, 51, 51, 0.20), 0 3px 10px 0 rgba(51, 51, 51, 0.16)'
|
|
30
30
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["VOICE_RECORDER_CONTAINER_SIZES","COLLAPSED","default","advanced","EXPANDED","VOICE_RECORDER_MAX_DURATION_MS","VOICE_RECORDER_MIN_DURATION_MS","VoiceRecorderState","DROPDOWN_MAX_CONTENT_HEIGHT","TRANSCRIPT_RETRY_INTERVAL_MS","TRANSCRIPT_MAX_RETRIES","NO_AUDIO_BE_MESSAGE","
|
|
1
|
+
{"version":3,"names":["VOICE_RECORDER_CONTAINER_SIZES","COLLAPSED","default","advanced","EXPANDED","VOICE_RECORDER_MAX_DURATION_MS","VOICE_RECORDER_MIN_DURATION_MS","VoiceRecorderState","DROPDOWN_MAX_CONTENT_HEIGHT","TRANSCRIPT_RETRY_INTERVAL_MS","TRANSCRIPT_MAX_RETRIES","NO_AUDIO_BE_MESSAGE","VOICE_RECORD_SHADOWS"],"sourceRoot":"../../../../src","sources":["features/voice/constants.ts"],"mappings":";;AAAA,OAAO,MAAMA,8BAA8B,GAAG;EAC5CC,SAAS,EAAE;IACTC,OAAO,EAAE,EAAE;IACXC,QAAQ,EAAE;EACZ,CAAC;EACDC,QAAQ,EAAE;IACRF,OAAO,EAAE,GAAG;IACZC,QAAQ,EAAE;EACZ;AACF,CAAC;AACD,OAAO,MAAME,8BAA8B,GAAG,KAAK,EAAC;AACpD,OAAO,MAAMC,8BAA8B,GAAG,GAAG;AACjD,WAAYC,kBAAkB,0BAAlBA,kBAAkB;EAAlBA,kBAAkB,CAAlBA,kBAAkB;EAAlBA,kBAAkB,CAAlBA,kBAAkB;EAAlBA,kBAAkB,CAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA;AAK9B,OAAO,MAAMC,2BAA2B,GAAG,GAAG;AAC9C,OAAO,MAAMC,4BAA4B,GAAG,IAAI;AAChD,OAAO,MAAMC,sBAAsB,GAAG,EAAE;AACxC,OAAO,MAAMC,mBAAmB,GAAG,UAAU;;AAE7C;AACA,OAAO,MAAMC,oBAAoB,GAAG;EAClCV,OAAO,EAAE,sEAAsE;EAC/EC,QAAQ,EAAE;AACZ,CAAC","ignoreList":[]}
|
|
@@ -12,37 +12,38 @@ import { useVoiceRecorder } from "../hooks/useVoiceRecorder.js";
|
|
|
12
12
|
import { useVoiceRecorderAnimation } from "../hooks/useVoiceRecorderAnimation.js";
|
|
13
13
|
import { useUnit } from 'effector-react';
|
|
14
14
|
import { RecordButtonVariant } from "../../types.js";
|
|
15
|
-
import {
|
|
15
|
+
import { VOICE_RECORD_SHADOWS } from "../../constants.js";
|
|
16
16
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
17
17
|
export const VoiceRecord = ({
|
|
18
18
|
style,
|
|
19
|
-
model
|
|
19
|
+
model,
|
|
20
|
+
buttonVariant
|
|
20
21
|
}) => {
|
|
21
22
|
const {
|
|
22
23
|
recorderState
|
|
23
24
|
} = useVoiceRecorder(model);
|
|
24
25
|
const [isExpanded, isDisabled] = useUnit([model.$isExpanded, model.$isButtonDisabled]);
|
|
25
|
-
const recordButtonVariant = model.recordButtonVariant;
|
|
26
26
|
const {
|
|
27
27
|
containerAnimatedStyle
|
|
28
|
-
} = useVoiceRecorderAnimation(isExpanded,
|
|
28
|
+
} = useVoiceRecorderAnimation(isExpanded, buttonVariant);
|
|
29
29
|
useEffect(() => {
|
|
30
30
|
return () => {
|
|
31
31
|
model.cleanup();
|
|
32
32
|
};
|
|
33
33
|
}, [model]);
|
|
34
34
|
return /*#__PURE__*/_jsxs(Animated.View, {
|
|
35
|
-
style: [styles.container,
|
|
36
|
-
boxShadow:
|
|
35
|
+
style: [styles.container, buttonVariant === RecordButtonVariant.ADVANCED && styles.advancedVariantContainer, {
|
|
36
|
+
boxShadow: VOICE_RECORD_SHADOWS[buttonVariant]
|
|
37
37
|
}, style, containerAnimatedStyle],
|
|
38
38
|
children: [/*#__PURE__*/_jsx(VoiceRecordButton, {
|
|
39
|
-
model: model
|
|
39
|
+
model: model,
|
|
40
|
+
buttonVariant: buttonVariant
|
|
40
41
|
}), isExpanded && /*#__PURE__*/_jsxs(Animated.View, {
|
|
41
42
|
entering: FadeIn,
|
|
42
43
|
exiting: FadeOut,
|
|
43
44
|
style: styles.expendedContainer,
|
|
44
45
|
children: [/*#__PURE__*/_jsx(VoiceRecordTimer, {
|
|
45
|
-
style: [styles.timer,
|
|
46
|
+
style: [styles.timer, buttonVariant === RecordButtonVariant.ADVANCED && styles.advancedVariantTimer],
|
|
46
47
|
model: model,
|
|
47
48
|
recordingFileDurationMs: recorderState.durationMillis
|
|
48
49
|
}), /*#__PURE__*/_jsx(VoiceRecordDivider, {}), /*#__PURE__*/_jsx(VoiceRecordDeleteButton, {
|
|
@@ -68,9 +69,6 @@ const styles = StyleSheet.create({
|
|
|
68
69
|
timer: {
|
|
69
70
|
marginTop: SPACING[400]
|
|
70
71
|
},
|
|
71
|
-
defaultTimer: {
|
|
72
|
-
marginTop: SPACING[300]
|
|
73
|
-
},
|
|
74
72
|
advancedVariantTimer: {
|
|
75
73
|
marginTop: SPACING[150]
|
|
76
74
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StyleSheet","VoiceRecordButton","React","useEffect","BORDER_RADIUS","COLORS","SPACING","VoiceRecordDeleteButton","VoiceRecordDivider","VoiceRecordTimer","Animated","FadeIn","FadeOut","useVoiceRecorder","useVoiceRecorderAnimation","useUnit","RecordButtonVariant","
|
|
1
|
+
{"version":3,"names":["StyleSheet","VoiceRecordButton","React","useEffect","BORDER_RADIUS","COLORS","SPACING","VoiceRecordDeleteButton","VoiceRecordDivider","VoiceRecordTimer","Animated","FadeIn","FadeOut","useVoiceRecorder","useVoiceRecorderAnimation","useUnit","RecordButtonVariant","VOICE_RECORD_SHADOWS","jsx","_jsx","jsxs","_jsxs","VoiceRecord","style","model","buttonVariant","recorderState","isExpanded","isDisabled","$isExpanded","$isButtonDisabled","containerAnimatedStyle","cleanup","View","styles","container","ADVANCED","advancedVariantContainer","boxShadow","children","entering","exiting","expendedContainer","timer","advancedVariantTimer","recordingFileDurationMs","durationMillis","onPress","events","deleteRecord","create","alignItems","padding","paddingBottom","backgroundColor","NEUTRAL_3","borderRadius","overflow","marginTop"],"sourceRoot":"../../../../../../src","sources":["features/voice/recording/components/VoiceRecord.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,7 @@ import React from 'react';
|
|
|
4
4
|
import { BORDER_RADIUS, Button, ButtonColor, ButtonSize, ButtonVariant, CheckIcon, COLORS, IS_WEB, MicrophoneIcon } from '@magmamath/react-native-ui';
|
|
5
5
|
import { Pressable, StyleSheet, View } from 'react-native';
|
|
6
6
|
import { useUnit } from 'effector-react';
|
|
7
|
-
import {
|
|
7
|
+
import { VOICE_RECORD_SHADOWS, VoiceRecorderState } from "../../constants.js";
|
|
8
8
|
import { useText } from "../../../../shared/translation/index.js";
|
|
9
9
|
import { RecordButtonVariant } from "../../types.js";
|
|
10
10
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -15,7 +15,8 @@ const defaultButtonStyles = {
|
|
|
15
15
|
}
|
|
16
16
|
};
|
|
17
17
|
export const VoiceRecordButton = ({
|
|
18
|
-
model
|
|
18
|
+
model,
|
|
19
|
+
buttonVariant
|
|
19
20
|
}) => {
|
|
20
21
|
const t = useText();
|
|
21
22
|
const availableInputs = useUnit(model.recorderModel.$availableInputs);
|
|
@@ -33,7 +34,7 @@ export const VoiceRecordButton = ({
|
|
|
33
34
|
},
|
|
34
35
|
pointerEvents: !hasInputs || isInitializing ? 'box-only' : 'auto',
|
|
35
36
|
style: [isButtonDisabled ? styles.disabledCursor : undefined],
|
|
36
|
-
children:
|
|
37
|
+
children: buttonVariant === RecordButtonVariant.ADVANCED ? /*#__PURE__*/_jsx(AdvancedButton, {
|
|
37
38
|
isRecording: isRecording,
|
|
38
39
|
isIdle: isIdle,
|
|
39
40
|
disabled: isButtonDisabled,
|
|
@@ -81,7 +82,7 @@ const styles = StyleSheet.create({
|
|
|
81
82
|
alignItems: 'center',
|
|
82
83
|
justifyContent: 'center',
|
|
83
84
|
borderRadius: BORDER_RADIUS[300],
|
|
84
|
-
boxShadow:
|
|
85
|
+
boxShadow: VOICE_RECORD_SHADOWS[RecordButtonVariant.ADVANCED]
|
|
85
86
|
},
|
|
86
87
|
advancedIconContainer: {
|
|
87
88
|
width: 36,
|
|
@@ -91,6 +92,7 @@ const styles = StyleSheet.create({
|
|
|
91
92
|
alignItems: 'center'
|
|
92
93
|
},
|
|
93
94
|
disabledCursor: {
|
|
95
|
+
// @ts-expect-error web-only property
|
|
94
96
|
cursor: 'not-allowed'
|
|
95
97
|
},
|
|
96
98
|
microphoneIconWeb: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","BORDER_RADIUS","Button","ButtonColor","ButtonSize","ButtonVariant","CheckIcon","COLORS","IS_WEB","MicrophoneIcon","Pressable","StyleSheet","View","useUnit","
|
|
1
|
+
{"version":3,"names":["React","BORDER_RADIUS","Button","ButtonColor","ButtonSize","ButtonVariant","CheckIcon","COLORS","IS_WEB","MicrophoneIcon","Pressable","StyleSheet","View","useUnit","VOICE_RECORD_SHADOWS","VoiceRecorderState","useText","RecordButtonVariant","jsx","_jsx","defaultButtonStyles","button","width","height","VoiceRecordButton","model","buttonVariant","t","availableInputs","recorderModel","$availableInputs","voiceRecordState","$voiceRecordState","isButtonDisabled","$isButtonDisabled","isInitializing","initializeRecording","pending","isRecording","RECORDING","isIdle","IDLE","hasInputs","length","onPressIn","e","preventDefault","notification","warning","pointerEvents","style","styles","disabledCursor","undefined","children","ADVANCED","AdvancedButton","disabled","recorderButtonHandler","size","LARGE","variant","SECONDARY","colorScheme","WHITE","icon","microphoneIconWeb","microphoneIconNative","advancedButtonContainer","advancedIconContainer","advancedIconContainerActive","color","NEUTRAL_1","advancedMicrophoneIcon","NEUTRAL_5","NEUTRAL_9","create","backgroundColor","alignItems","justifyContent","borderRadius","boxShadow","cursor","minWidth","minHeight","PRIMARY_BLUE"],"sourceRoot":"../../../../../../src","sources":["features/voice/recording/components/VoiceRecordButton.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
import { useAnimatedStyle, withTiming } from 'react-native-reanimated';
|
|
4
4
|
import { VOICE_RECORDER_CONTAINER_SIZES } from "../../constants.js";
|
|
5
|
-
export const useVoiceRecorderAnimation = (isExpanded,
|
|
5
|
+
export const useVoiceRecorderAnimation = (isExpanded, buttonVariant) => {
|
|
6
6
|
const containerAnimatedStyle = useAnimatedStyle(() => {
|
|
7
7
|
return {
|
|
8
|
-
height: withTiming(isExpanded ? VOICE_RECORDER_CONTAINER_SIZES.EXPANDED[
|
|
8
|
+
height: withTiming(isExpanded ? VOICE_RECORDER_CONTAINER_SIZES.EXPANDED[buttonVariant] : VOICE_RECORDER_CONTAINER_SIZES.COLLAPSED[buttonVariant], {
|
|
9
9
|
duration: 280
|
|
10
10
|
})
|
|
11
11
|
};
|
|
12
|
-
}, [isExpanded,
|
|
12
|
+
}, [isExpanded, buttonVariant]);
|
|
13
13
|
return {
|
|
14
14
|
containerAnimatedStyle
|
|
15
15
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useAnimatedStyle","withTiming","VOICE_RECORDER_CONTAINER_SIZES","useVoiceRecorderAnimation","isExpanded","
|
|
1
|
+
{"version":3,"names":["useAnimatedStyle","withTiming","VOICE_RECORDER_CONTAINER_SIZES","useVoiceRecorderAnimation","isExpanded","buttonVariant","containerAnimatedStyle","height","EXPANDED","COLLAPSED","duration"],"sourceRoot":"../../../../../../src","sources":["features/voice/recording/hooks/useVoiceRecorderAnimation.ts"],"mappings":";;AAAA,SAASA,gBAAgB,EAAEC,UAAU,QAAQ,yBAAyB;AACtE,SAASC,8BAA8B,QAAQ,oBAAiB;AAGhE,OAAO,MAAMC,yBAAyB,GAAGA,CACvCC,UAAmB,EACnBC,aAAkC,KAC/B;EACH,MAAMC,sBAAsB,GAAGN,gBAAgB,CAAC,MAAM;IACpD,OAAO;MACLO,MAAM,EAAEN,UAAU,CAChBG,UAAU,GACNF,8BAA8B,CAACM,QAAQ,CAACH,aAAa,CAAC,GACtDH,8BAA8B,CAACO,SAAS,CAACJ,aAAa,CAAC,EAC3D;QACEK,QAAQ,EAAE;MACZ,CACF;IACF,CAAC;EACH,CAAC,EAAE,CAACN,UAAU,EAAEC,aAAa,CAAC,CAAC;EAE/B,OAAO;IAAEC;EAAuB,CAAC;AACnC,CAAC","ignoreList":[]}
|
|
@@ -5,7 +5,6 @@ import { RecorderModel } from "./Recorder.model.js";
|
|
|
5
5
|
import { VoiceRecordsCollection } from "./VoiceRecordCollection.js";
|
|
6
6
|
import { UploaderModel } from "./Uploader.model.js";
|
|
7
7
|
import { VoiceRecorderState } from "../../constants.js";
|
|
8
|
-
import { RecordButtonVariant } from "../../types.js";
|
|
9
8
|
import { ensureRecordingPermissions, getAvailableInputs } from "../../helpers.js";
|
|
10
9
|
import { VOICE_RECORDER_MIN_DURATION_MS } from "../../constants.js";
|
|
11
10
|
import { t } from "../../../../shared/translation/index.js";
|
|
@@ -14,7 +13,6 @@ export class VoiceRecordModel {
|
|
|
14
13
|
collection = new VoiceRecordsCollection();
|
|
15
14
|
uploader = new UploaderModel();
|
|
16
15
|
shouldDiscardRecording = false;
|
|
17
|
-
recordButtonVariant = RecordButtonVariant.DEFAULT;
|
|
18
16
|
setCurrentKey = createEvent();
|
|
19
17
|
setCurrentRecord = createEvent();
|
|
20
18
|
reset = createEvent();
|
|
@@ -30,9 +28,6 @@ export class VoiceRecordModel {
|
|
|
30
28
|
deleteAudioRecord = createEffect(async audioFileId => {
|
|
31
29
|
await this.api.deleteAudioFile(audioFileId);
|
|
32
30
|
});
|
|
33
|
-
setRecordButtonVariant = createEffect(variant => {
|
|
34
|
-
this.recordButtonVariant = variant;
|
|
35
|
-
});
|
|
36
31
|
deleteCurrentRecording = attach({
|
|
37
32
|
source: this.$currentKey,
|
|
38
33
|
mapParams: (props, currentKey) => ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["attach","combine","createEffect","createEvent","restore","sample","RecorderModel","VoiceRecordsCollection","UploaderModel","VoiceRecorderState","
|
|
1
|
+
{"version":3,"names":["attach","combine","createEffect","createEvent","restore","sample","RecorderModel","VoiceRecordsCollection","UploaderModel","VoiceRecorderState","ensureRecordingPermissions","getAvailableInputs","VOICE_RECORDER_MIN_DURATION_MS","t","VoiceRecordModel","recorderModel","collection","uploader","shouldDiscardRecording","setCurrentKey","setCurrentRecord","reset","setIsButtonDisabled","startAudioUpload","$currentKey","$currentRecord","$isButtonDisabled","$isExpanded","$voiceRecordState","recorderState","currentRecord","IDLE","deleteAudioRecord","audioFileId","api","deleteAudioFile","deleteCurrentRecording","source","mapParams","props","currentKey","notification","effect","recordingItem","get","id","abortUploadIfInProgress","resetRecordingState","success","initializeRecording","hasPermissions","error","inputs","recorder","setAvailableInputs","length","start","catch","name","stop","clearStopResolver","cleanup","getStatus","isRecording","recordingStatusUpdate","status","isFinished","url","getRecordingItem","key","RECORDING","stopAndAwaitResult","console","undefined","controller","abortUpload","delete","handleAudioUpload","uri","durationMs","collectionItem","uploadPromise","upload","fileName","add","resolveRecord","then","data","update","setupUploadHandler","clock","$lastKnownDurationMs","filter","fn","target","setupCurrentRecordSync","recorderButtonHandler","isInitializing","pending","lastKnownDurationMs","warn","events","undoRecord","constructor","setApi"],"sourceRoot":"../../../../../../src","sources":["features/voice/recording/model/VoiceRecord.model.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -19,7 +19,7 @@ export declare const DROPDOWN_MAX_CONTENT_HEIGHT = 330;
|
|
|
19
19
|
export declare const TRANSCRIPT_RETRY_INTERVAL_MS = 4000;
|
|
20
20
|
export declare const TRANSCRIPT_MAX_RETRIES = 15;
|
|
21
21
|
export declare const NO_AUDIO_BE_MESSAGE = "No audio";
|
|
22
|
-
export declare const
|
|
22
|
+
export declare const VOICE_RECORD_SHADOWS: {
|
|
23
23
|
default: string;
|
|
24
24
|
advanced: string;
|
|
25
25
|
};
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { StyleProp, ViewStyle } from 'react-native';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { VoiceRecordModel } from '../model/VoiceRecord.model';
|
|
4
|
+
import { RecordButtonVariant } from '../../types';
|
|
4
5
|
type VoiceRecordProps = {
|
|
5
6
|
style?: StyleProp<ViewStyle>;
|
|
6
7
|
model: VoiceRecordModel;
|
|
8
|
+
buttonVariant: RecordButtonVariant;
|
|
7
9
|
};
|
|
8
|
-
export declare const VoiceRecord: ({ style, model }: VoiceRecordProps) => React.JSX.Element;
|
|
10
|
+
export declare const VoiceRecord: ({ style, model, buttonVariant }: VoiceRecordProps) => React.JSX.Element;
|
|
9
11
|
export {};
|
|
10
12
|
//# sourceMappingURL=VoiceRecord.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceRecord.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/components/VoiceRecord.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAc,MAAM,cAAc,CAAA;AAE/D,OAAO,KAAoB,MAAM,OAAO,CAAA;AAMxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"VoiceRecord.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/components/VoiceRecord.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAc,MAAM,cAAc,CAAA;AAE/D,OAAO,KAAoB,MAAM,OAAO,CAAA;AAMxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAI7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAGjD,KAAK,gBAAgB,GAAG;IACtB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IAC5B,KAAK,EAAE,gBAAgB,CAAA;IACvB,aAAa,EAAE,mBAAmB,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,WAAW,oCAAqC,gBAAgB,sBAuC5E,CAAA"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { VoiceRecordModel } from '../model/VoiceRecord.model';
|
|
3
|
+
import { RecordButtonVariant } from '../../types';
|
|
3
4
|
type VoiceRecordButtonProps = {
|
|
4
5
|
model: VoiceRecordModel;
|
|
6
|
+
buttonVariant: RecordButtonVariant;
|
|
5
7
|
};
|
|
6
|
-
export declare const VoiceRecordButton: ({ model }: VoiceRecordButtonProps) => React.JSX.Element;
|
|
8
|
+
export declare const VoiceRecordButton: ({ model, buttonVariant }: VoiceRecordButtonProps) => React.JSX.Element;
|
|
7
9
|
export {};
|
|
8
10
|
//# sourceMappingURL=VoiceRecordButton.d.ts.map
|
package/dist/typescript/commonjs/features/voice/recording/components/VoiceRecordButton.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceRecordButton.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/components/VoiceRecordButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAczB,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"VoiceRecordButton.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/components/VoiceRecordButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAczB,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAI7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD,KAAK,sBAAsB,GAAG;IAC5B,KAAK,EAAE,gBAAgB,CAAA;IACvB,aAAa,EAAE,mBAAmB,CAAA;CACnC,CAAA;AASD,eAAO,MAAM,iBAAiB,6BAA8B,sBAAsB,sBAkDjF,CAAA"}
|
package/dist/typescript/commonjs/features/voice/recording/hooks/useVoiceRecorderAnimation.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { RecordButtonVariant } from '../../types';
|
|
2
|
-
export declare const useVoiceRecorderAnimation: (isExpanded: boolean,
|
|
2
|
+
export declare const useVoiceRecorderAnimation: (isExpanded: boolean, buttonVariant: RecordButtonVariant) => {
|
|
3
3
|
containerAnimatedStyle: {
|
|
4
4
|
height: number;
|
|
5
5
|
};
|
package/dist/typescript/commonjs/features/voice/recording/hooks/useVoiceRecorderAnimation.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useVoiceRecorderAnimation.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/hooks/useVoiceRecorderAnimation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD,eAAO,MAAM,yBAAyB,eACxB,OAAO,
|
|
1
|
+
{"version":3,"file":"useVoiceRecorderAnimation.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/hooks/useVoiceRecorderAnimation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD,eAAO,MAAM,yBAAyB,eACxB,OAAO,iBACJ,mBAAmB;;;;CAgBnC,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { RecorderModel } from './Recorder.model';
|
|
2
2
|
import { VoiceRecordsCollection } from './VoiceRecordCollection';
|
|
3
3
|
import { UploaderModel } from './Uploader.model';
|
|
4
|
-
import {
|
|
4
|
+
import { VoiceRecordCollectionItem, VoiceRecorderApi, VoiceRecordNotificationTypes } from '../../types';
|
|
5
5
|
type VoiceRecordModelParams = {
|
|
6
6
|
api: VoiceRecorderApi;
|
|
7
7
|
notification: VoiceRecordNotificationTypes;
|
|
@@ -22,7 +22,6 @@ export declare class VoiceRecordModel {
|
|
|
22
22
|
readonly notification: VoiceRecordNotificationTypes;
|
|
23
23
|
readonly events: VoiceRecordEvents;
|
|
24
24
|
private shouldDiscardRecording;
|
|
25
|
-
recordButtonVariant: RecordButtonVariant;
|
|
26
25
|
readonly setCurrentKey: import("effector").EventCallable<string>;
|
|
27
26
|
readonly setCurrentRecord: import("effector").EventCallable<any>;
|
|
28
27
|
readonly reset: import("effector").EventCallable<void>;
|
|
@@ -33,7 +32,6 @@ export declare class VoiceRecordModel {
|
|
|
33
32
|
readonly $isButtonDisabled: import("effector").StoreWritable<boolean>;
|
|
34
33
|
readonly $isExpanded: import("effector").Store<boolean>;
|
|
35
34
|
readonly deleteAudioRecord: import("effector").Effect<string, void, Error>;
|
|
36
|
-
readonly setRecordButtonVariant: import("effector").Effect<RecordButtonVariant, void, Error>;
|
|
37
35
|
readonly deleteCurrentRecording: import("effector").Effect<void | DeleteCurrentRecordingProps, void, Error>;
|
|
38
36
|
readonly initializeRecording: import("effector").Effect<void, void, Error>;
|
|
39
37
|
readonly stop: import("effector").Effect<void, void, Error>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceRecord.model.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/model/VoiceRecord.model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"VoiceRecord.model.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/model/VoiceRecord.model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,OAAO,EACL,yBAAyB,EACzB,gBAAgB,EAChB,4BAA4B,EAC7B,MAAM,aAAa,CAAA;AAKpB,KAAK,sBAAsB,GAAG;IAC5B,GAAG,EAAE,gBAAgB,CAAA;IACrB,YAAY,EAAE,4BAA4B,CAAA;IAC1C,MAAM,EAAE,iBAAiB,CAAA;CAC1B,CAAA;AAYD,KAAK,iBAAiB,GAAG;IACvB,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,UAAU,EAAE,MAAM,IAAI,CAAA;CACvB,CAAA;AAED,KAAK,2BAA2B,GAAG;IACjC,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAcD,qBAAa,gBAAgB;IAC3B,SAAgB,aAAa,2CAAiD;IAC9E,SAAgB,UAAU,yBAA+B;IACzD,SAAgB,QAAQ,gBAAsB;IAC9C,SAAgB,GAAG,EAAE,gBAAgB,CAAA;IACrC,SAAgB,YAAY,EAAE,4BAA4B,CAAA;IAC1D,SAAgB,MAAM,EAAE,iBAAiB,CAAA;IACzC,OAAO,CAAC,sBAAsB,CAAQ;IAEtC,SAAgB,aAAa,2CAAwB;IACrD,SAAgB,gBAAgB,wCAAqB;IACrD,SAAgB,KAAK,yCAAgB;IACrC,SAAgB,mBAAmB,4CAAyB;IAC5D,SAAgB,gBAAgB,2CAAwB;IAExD,SAAgB,WAAW,2CAAkC;IAC7D,SAAgB,cAAc,wCAAyD;IAEvF,SAAgB,iBAAiB,4CAA2C;IAE5E,SAAgB,WAAW,oCAO1B;IAED,SAAgB,iBAAiB,iDAE/B;IAEF,SAAgB,sBAAsB,6EAqBpC;IAEF,SAAgB,mBAAmB,+CA2BjC;IAEF,SAAgB,IAAI,+CAKlB;IAEF,SAAgB,OAAO,sBAKtB;IAED,SAAgB,qBAAqB,WAAY,GAAG,UAanD;IAED,SAAgB,gBAAgB,kFAkB9B;IAEF,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,iBAAiB,CA2BxB;IAED,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,sBAAsB;IAe9B,SAAgB,qBAAqB,+CAoCnC;gBAEU,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,sBAAsB;CASlE"}
|
|
@@ -19,7 +19,7 @@ export declare const DROPDOWN_MAX_CONTENT_HEIGHT = 330;
|
|
|
19
19
|
export declare const TRANSCRIPT_RETRY_INTERVAL_MS = 4000;
|
|
20
20
|
export declare const TRANSCRIPT_MAX_RETRIES = 15;
|
|
21
21
|
export declare const NO_AUDIO_BE_MESSAGE = "No audio";
|
|
22
|
-
export declare const
|
|
22
|
+
export declare const VOICE_RECORD_SHADOWS: {
|
|
23
23
|
default: string;
|
|
24
24
|
advanced: string;
|
|
25
25
|
};
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { StyleProp, ViewStyle } from 'react-native';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { VoiceRecordModel } from '../model/VoiceRecord.model';
|
|
4
|
+
import { RecordButtonVariant } from '../../types';
|
|
4
5
|
type VoiceRecordProps = {
|
|
5
6
|
style?: StyleProp<ViewStyle>;
|
|
6
7
|
model: VoiceRecordModel;
|
|
8
|
+
buttonVariant: RecordButtonVariant;
|
|
7
9
|
};
|
|
8
|
-
export declare const VoiceRecord: ({ style, model }: VoiceRecordProps) => React.JSX.Element;
|
|
10
|
+
export declare const VoiceRecord: ({ style, model, buttonVariant }: VoiceRecordProps) => React.JSX.Element;
|
|
9
11
|
export {};
|
|
10
12
|
//# sourceMappingURL=VoiceRecord.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceRecord.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/components/VoiceRecord.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAc,MAAM,cAAc,CAAA;AAE/D,OAAO,KAAoB,MAAM,OAAO,CAAA;AAMxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"VoiceRecord.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/components/VoiceRecord.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAc,MAAM,cAAc,CAAA;AAE/D,OAAO,KAAoB,MAAM,OAAO,CAAA;AAMxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAI7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAGjD,KAAK,gBAAgB,GAAG;IACtB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IAC5B,KAAK,EAAE,gBAAgB,CAAA;IACvB,aAAa,EAAE,mBAAmB,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,WAAW,oCAAqC,gBAAgB,sBAuC5E,CAAA"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { VoiceRecordModel } from '../model/VoiceRecord.model';
|
|
3
|
+
import { RecordButtonVariant } from '../../types';
|
|
3
4
|
type VoiceRecordButtonProps = {
|
|
4
5
|
model: VoiceRecordModel;
|
|
6
|
+
buttonVariant: RecordButtonVariant;
|
|
5
7
|
};
|
|
6
|
-
export declare const VoiceRecordButton: ({ model }: VoiceRecordButtonProps) => React.JSX.Element;
|
|
8
|
+
export declare const VoiceRecordButton: ({ model, buttonVariant }: VoiceRecordButtonProps) => React.JSX.Element;
|
|
7
9
|
export {};
|
|
8
10
|
//# sourceMappingURL=VoiceRecordButton.d.ts.map
|
package/dist/typescript/module/features/voice/recording/components/VoiceRecordButton.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceRecordButton.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/components/VoiceRecordButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAczB,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"VoiceRecordButton.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/components/VoiceRecordButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAczB,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAI7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD,KAAK,sBAAsB,GAAG;IAC5B,KAAK,EAAE,gBAAgB,CAAA;IACvB,aAAa,EAAE,mBAAmB,CAAA;CACnC,CAAA;AASD,eAAO,MAAM,iBAAiB,6BAA8B,sBAAsB,sBAkDjF,CAAA"}
|
package/dist/typescript/module/features/voice/recording/hooks/useVoiceRecorderAnimation.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { RecordButtonVariant } from '../../types';
|
|
2
|
-
export declare const useVoiceRecorderAnimation: (isExpanded: boolean,
|
|
2
|
+
export declare const useVoiceRecorderAnimation: (isExpanded: boolean, buttonVariant: RecordButtonVariant) => {
|
|
3
3
|
containerAnimatedStyle: {
|
|
4
4
|
height: number;
|
|
5
5
|
};
|
package/dist/typescript/module/features/voice/recording/hooks/useVoiceRecorderAnimation.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useVoiceRecorderAnimation.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/hooks/useVoiceRecorderAnimation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD,eAAO,MAAM,yBAAyB,eACxB,OAAO,
|
|
1
|
+
{"version":3,"file":"useVoiceRecorderAnimation.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/hooks/useVoiceRecorderAnimation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD,eAAO,MAAM,yBAAyB,eACxB,OAAO,iBACJ,mBAAmB;;;;CAgBnC,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { RecorderModel } from './Recorder.model';
|
|
2
2
|
import { VoiceRecordsCollection } from './VoiceRecordCollection';
|
|
3
3
|
import { UploaderModel } from './Uploader.model';
|
|
4
|
-
import {
|
|
4
|
+
import { VoiceRecordCollectionItem, VoiceRecorderApi, VoiceRecordNotificationTypes } from '../../types';
|
|
5
5
|
type VoiceRecordModelParams = {
|
|
6
6
|
api: VoiceRecorderApi;
|
|
7
7
|
notification: VoiceRecordNotificationTypes;
|
|
@@ -22,7 +22,6 @@ export declare class VoiceRecordModel {
|
|
|
22
22
|
readonly notification: VoiceRecordNotificationTypes;
|
|
23
23
|
readonly events: VoiceRecordEvents;
|
|
24
24
|
private shouldDiscardRecording;
|
|
25
|
-
recordButtonVariant: RecordButtonVariant;
|
|
26
25
|
readonly setCurrentKey: import("effector").EventCallable<string>;
|
|
27
26
|
readonly setCurrentRecord: import("effector").EventCallable<any>;
|
|
28
27
|
readonly reset: import("effector").EventCallable<void>;
|
|
@@ -33,7 +32,6 @@ export declare class VoiceRecordModel {
|
|
|
33
32
|
readonly $isButtonDisabled: import("effector").StoreWritable<boolean>;
|
|
34
33
|
readonly $isExpanded: import("effector").Store<boolean>;
|
|
35
34
|
readonly deleteAudioRecord: import("effector").Effect<string, void, Error>;
|
|
36
|
-
readonly setRecordButtonVariant: import("effector").Effect<RecordButtonVariant, void, Error>;
|
|
37
35
|
readonly deleteCurrentRecording: import("effector").Effect<void | DeleteCurrentRecordingProps, void, Error>;
|
|
38
36
|
readonly initializeRecording: import("effector").Effect<void, void, Error>;
|
|
39
37
|
readonly stop: import("effector").Effect<void, void, Error>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceRecord.model.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/model/VoiceRecord.model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"VoiceRecord.model.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/model/VoiceRecord.model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,OAAO,EACL,yBAAyB,EACzB,gBAAgB,EAChB,4BAA4B,EAC7B,MAAM,aAAa,CAAA;AAKpB,KAAK,sBAAsB,GAAG;IAC5B,GAAG,EAAE,gBAAgB,CAAA;IACrB,YAAY,EAAE,4BAA4B,CAAA;IAC1C,MAAM,EAAE,iBAAiB,CAAA;CAC1B,CAAA;AAYD,KAAK,iBAAiB,GAAG;IACvB,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,UAAU,EAAE,MAAM,IAAI,CAAA;CACvB,CAAA;AAED,KAAK,2BAA2B,GAAG;IACjC,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAcD,qBAAa,gBAAgB;IAC3B,SAAgB,aAAa,2CAAiD;IAC9E,SAAgB,UAAU,yBAA+B;IACzD,SAAgB,QAAQ,gBAAsB;IAC9C,SAAgB,GAAG,EAAE,gBAAgB,CAAA;IACrC,SAAgB,YAAY,EAAE,4BAA4B,CAAA;IAC1D,SAAgB,MAAM,EAAE,iBAAiB,CAAA;IACzC,OAAO,CAAC,sBAAsB,CAAQ;IAEtC,SAAgB,aAAa,2CAAwB;IACrD,SAAgB,gBAAgB,wCAAqB;IACrD,SAAgB,KAAK,yCAAgB;IACrC,SAAgB,mBAAmB,4CAAyB;IAC5D,SAAgB,gBAAgB,2CAAwB;IAExD,SAAgB,WAAW,2CAAkC;IAC7D,SAAgB,cAAc,wCAAyD;IAEvF,SAAgB,iBAAiB,4CAA2C;IAE5E,SAAgB,WAAW,oCAO1B;IAED,SAAgB,iBAAiB,iDAE/B;IAEF,SAAgB,sBAAsB,6EAqBpC;IAEF,SAAgB,mBAAmB,+CA2BjC;IAEF,SAAgB,IAAI,+CAKlB;IAEF,SAAgB,OAAO,sBAKtB;IAED,SAAgB,qBAAqB,WAAY,GAAG,UAanD;IAED,SAAgB,gBAAgB,kFAkB9B;IAEF,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,iBAAiB,CA2BxB;IAED,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,sBAAsB;IAe9B,SAAgB,qBAAqB,+CAoCnC;gBAEU,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,sBAAsB;CASlE"}
|
package/package.json
CHANGED
|
@@ -21,7 +21,7 @@ export const TRANSCRIPT_MAX_RETRIES = 15
|
|
|
21
21
|
export const NO_AUDIO_BE_MESSAGE = 'No audio'
|
|
22
22
|
|
|
23
23
|
//todo: remove native shadows from rn-ui and set from WEB for both platforms
|
|
24
|
-
export const
|
|
24
|
+
export const VOICE_RECORD_SHADOWS = {
|
|
25
25
|
default: '0 1px 3px 0 rgba(51, 51, 51, 0.10), 0 0 1px 0 rgba(51, 51, 51, 0.40)',
|
|
26
26
|
advanced: '0 0 1px 0 rgba(51, 51, 51, 0.20), 0 3px 10px 0 rgba(51, 51, 51, 0.16)',
|
|
27
27
|
}
|
|
@@ -11,19 +11,19 @@ import { useVoiceRecorder } from '../hooks/useVoiceRecorder'
|
|
|
11
11
|
import { useVoiceRecorderAnimation } from '../hooks/useVoiceRecorderAnimation'
|
|
12
12
|
import { useUnit } from 'effector-react'
|
|
13
13
|
import { RecordButtonVariant } from '../../types'
|
|
14
|
-
import {
|
|
14
|
+
import { VOICE_RECORD_SHADOWS } from '../../constants'
|
|
15
15
|
|
|
16
16
|
type VoiceRecordProps = {
|
|
17
17
|
style?: StyleProp<ViewStyle>
|
|
18
18
|
model: VoiceRecordModel
|
|
19
|
+
buttonVariant: RecordButtonVariant
|
|
19
20
|
}
|
|
20
21
|
|
|
21
|
-
export const VoiceRecord = ({ style, model }: VoiceRecordProps) => {
|
|
22
|
+
export const VoiceRecord = ({ style, model, buttonVariant }: VoiceRecordProps) => {
|
|
22
23
|
const { recorderState } = useVoiceRecorder(model)
|
|
23
24
|
const [isExpanded, isDisabled] = useUnit([model.$isExpanded, model.$isButtonDisabled])
|
|
24
25
|
|
|
25
|
-
const
|
|
26
|
-
const { containerAnimatedStyle } = useVoiceRecorderAnimation(isExpanded, recordButtonVariant)
|
|
26
|
+
const { containerAnimatedStyle } = useVoiceRecorderAnimation(isExpanded, buttonVariant)
|
|
27
27
|
|
|
28
28
|
useEffect(() => {
|
|
29
29
|
return () => {
|
|
@@ -35,19 +35,19 @@ export const VoiceRecord = ({ style, model }: VoiceRecordProps) => {
|
|
|
35
35
|
<Animated.View
|
|
36
36
|
style={[
|
|
37
37
|
styles.container,
|
|
38
|
-
|
|
39
|
-
{ boxShadow:
|
|
38
|
+
buttonVariant === RecordButtonVariant.ADVANCED && styles.advancedVariantContainer,
|
|
39
|
+
{ boxShadow: VOICE_RECORD_SHADOWS[buttonVariant] },
|
|
40
40
|
style,
|
|
41
41
|
containerAnimatedStyle,
|
|
42
42
|
]}
|
|
43
43
|
>
|
|
44
|
-
<VoiceRecordButton model={model} />
|
|
44
|
+
<VoiceRecordButton model={model} buttonVariant={buttonVariant} />
|
|
45
45
|
{isExpanded && (
|
|
46
46
|
<Animated.View entering={FadeIn} exiting={FadeOut} style={styles.expendedContainer}>
|
|
47
47
|
<VoiceRecordTimer
|
|
48
48
|
style={[
|
|
49
49
|
styles.timer,
|
|
50
|
-
|
|
50
|
+
buttonVariant === RecordButtonVariant.ADVANCED && styles.advancedVariantTimer,
|
|
51
51
|
]}
|
|
52
52
|
model={model}
|
|
53
53
|
recordingFileDurationMs={recorderState.durationMillis}
|
|
@@ -76,9 +76,6 @@ const styles = StyleSheet.create({
|
|
|
76
76
|
timer: {
|
|
77
77
|
marginTop: SPACING[400],
|
|
78
78
|
},
|
|
79
|
-
defaultTimer: {
|
|
80
|
-
marginTop: SPACING[300],
|
|
81
|
-
},
|
|
82
79
|
advancedVariantTimer: {
|
|
83
80
|
marginTop: SPACING[150],
|
|
84
81
|
},
|
|
@@ -14,12 +14,13 @@ import {
|
|
|
14
14
|
import { Pressable, StyleSheet, View } from 'react-native'
|
|
15
15
|
import { VoiceRecordModel } from '../model/VoiceRecord.model'
|
|
16
16
|
import { useUnit } from 'effector-react'
|
|
17
|
-
import {
|
|
17
|
+
import { VOICE_RECORD_SHADOWS, VoiceRecorderState } from '../../constants'
|
|
18
18
|
import { useText } from '../../../../shared/translation'
|
|
19
19
|
import { RecordButtonVariant } from '../../types'
|
|
20
20
|
|
|
21
21
|
type VoiceRecordButtonProps = {
|
|
22
22
|
model: VoiceRecordModel
|
|
23
|
+
buttonVariant: RecordButtonVariant
|
|
23
24
|
}
|
|
24
25
|
|
|
25
26
|
const defaultButtonStyles: ButtonStyle = {
|
|
@@ -29,7 +30,7 @@ const defaultButtonStyles: ButtonStyle = {
|
|
|
29
30
|
},
|
|
30
31
|
}
|
|
31
32
|
|
|
32
|
-
export const VoiceRecordButton = ({ model }: VoiceRecordButtonProps) => {
|
|
33
|
+
export const VoiceRecordButton = ({ model, buttonVariant }: VoiceRecordButtonProps) => {
|
|
33
34
|
const t = useText()
|
|
34
35
|
|
|
35
36
|
const availableInputs = useUnit(model.recorderModel.$availableInputs)
|
|
@@ -51,7 +52,7 @@ export const VoiceRecordButton = ({ model }: VoiceRecordButtonProps) => {
|
|
|
51
52
|
pointerEvents={!hasInputs || isInitializing ? 'box-only' : 'auto'}
|
|
52
53
|
style={[isButtonDisabled ? styles.disabledCursor : undefined]}
|
|
53
54
|
>
|
|
54
|
-
{
|
|
55
|
+
{buttonVariant === RecordButtonVariant.ADVANCED ? (
|
|
55
56
|
<AdvancedButton
|
|
56
57
|
isRecording={isRecording}
|
|
57
58
|
isIdle={isIdle}
|
|
@@ -70,7 +71,9 @@ export const VoiceRecordButton = ({ model }: VoiceRecordButtonProps) => {
|
|
|
70
71
|
isRecording ? (
|
|
71
72
|
<CheckIcon size={25} />
|
|
72
73
|
) : (
|
|
73
|
-
<MicrophoneIcon
|
|
74
|
+
<MicrophoneIcon
|
|
75
|
+
style={IS_WEB ? styles.microphoneIconWeb : styles.microphoneIconNative}
|
|
76
|
+
/>
|
|
74
77
|
)
|
|
75
78
|
}
|
|
76
79
|
/>
|
|
@@ -92,12 +95,7 @@ const AdvancedButton = ({ isRecording, isIdle, disabled, onPressIn }: AdvancedBu
|
|
|
92
95
|
onPressIn={onPressIn}
|
|
93
96
|
disabled={disabled}
|
|
94
97
|
>
|
|
95
|
-
<View
|
|
96
|
-
style={[
|
|
97
|
-
styles.advancedIconContainer,
|
|
98
|
-
!isIdle && styles.advancedIconContainerActive,
|
|
99
|
-
]}
|
|
100
|
-
>
|
|
98
|
+
<View style={[styles.advancedIconContainer, !isIdle && styles.advancedIconContainerActive]}>
|
|
101
99
|
{isRecording ? (
|
|
102
100
|
<CheckIcon size={18} color={COLORS.NEUTRAL_1} />
|
|
103
101
|
) : (
|
|
@@ -118,7 +116,7 @@ const styles = StyleSheet.create({
|
|
|
118
116
|
alignItems: 'center',
|
|
119
117
|
justifyContent: 'center',
|
|
120
118
|
borderRadius: BORDER_RADIUS[300],
|
|
121
|
-
boxShadow:
|
|
119
|
+
boxShadow: VOICE_RECORD_SHADOWS[RecordButtonVariant.ADVANCED],
|
|
122
120
|
},
|
|
123
121
|
advancedIconContainer: {
|
|
124
122
|
width: 36,
|
|
@@ -128,7 +126,8 @@ const styles = StyleSheet.create({
|
|
|
128
126
|
alignItems: 'center',
|
|
129
127
|
},
|
|
130
128
|
disabledCursor: {
|
|
131
|
-
|
|
129
|
+
// @ts-expect-error web-only property
|
|
130
|
+
cursor: 'not-allowed',
|
|
132
131
|
},
|
|
133
132
|
microphoneIconWeb: {
|
|
134
133
|
width: 19,
|
|
@@ -4,20 +4,20 @@ import { RecordButtonVariant } from '../../types'
|
|
|
4
4
|
|
|
5
5
|
export const useVoiceRecorderAnimation = (
|
|
6
6
|
isExpanded: boolean,
|
|
7
|
-
|
|
7
|
+
buttonVariant: RecordButtonVariant,
|
|
8
8
|
) => {
|
|
9
9
|
const containerAnimatedStyle = useAnimatedStyle(() => {
|
|
10
10
|
return {
|
|
11
11
|
height: withTiming(
|
|
12
12
|
isExpanded
|
|
13
|
-
? VOICE_RECORDER_CONTAINER_SIZES.EXPANDED[
|
|
14
|
-
: VOICE_RECORDER_CONTAINER_SIZES.COLLAPSED[
|
|
13
|
+
? VOICE_RECORDER_CONTAINER_SIZES.EXPANDED[buttonVariant]
|
|
14
|
+
: VOICE_RECORDER_CONTAINER_SIZES.COLLAPSED[buttonVariant],
|
|
15
15
|
{
|
|
16
16
|
duration: 280,
|
|
17
17
|
},
|
|
18
18
|
),
|
|
19
19
|
}
|
|
20
|
-
}, [isExpanded,
|
|
20
|
+
}, [isExpanded, buttonVariant])
|
|
21
21
|
|
|
22
22
|
return { containerAnimatedStyle }
|
|
23
23
|
}
|
|
@@ -4,7 +4,6 @@ import { VoiceRecordsCollection } from './VoiceRecordCollection'
|
|
|
4
4
|
import { UploaderModel } from './Uploader.model'
|
|
5
5
|
import { VoiceRecorderState } from '../../constants'
|
|
6
6
|
import {
|
|
7
|
-
RecordButtonVariant,
|
|
8
7
|
VoiceRecordCollectionItem,
|
|
9
8
|
VoiceRecorderApi,
|
|
10
9
|
VoiceRecordNotificationTypes,
|
|
@@ -59,8 +58,6 @@ export class VoiceRecordModel {
|
|
|
59
58
|
public readonly events: VoiceRecordEvents
|
|
60
59
|
private shouldDiscardRecording = false
|
|
61
60
|
|
|
62
|
-
public recordButtonVariant = RecordButtonVariant.DEFAULT
|
|
63
|
-
|
|
64
61
|
public readonly setCurrentKey = createEvent<string>()
|
|
65
62
|
public readonly setCurrentRecord = createEvent<any>()
|
|
66
63
|
public readonly reset = createEvent()
|
|
@@ -85,10 +82,6 @@ export class VoiceRecordModel {
|
|
|
85
82
|
await this.api.deleteAudioFile(audioFileId)
|
|
86
83
|
})
|
|
87
84
|
|
|
88
|
-
public readonly setRecordButtonVariant = createEffect((variant: RecordButtonVariant) => {
|
|
89
|
-
this.recordButtonVariant = variant
|
|
90
|
-
})
|
|
91
|
-
|
|
92
85
|
public readonly deleteCurrentRecording = attach({
|
|
93
86
|
source: this.$currentKey,
|
|
94
87
|
mapParams: (props: DeleteCurrentRecordingProps | void, currentKey) => ({
|