@magmamath/students-features 0.9.107-rc.21 → 0.9.107-rc.23
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/voiceRecord/components/VoiceRecordTimer.js +3 -1
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordTimer.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/modal/VoiceRecordDeleteModal.js +18 -4
- package/dist/commonjs/features/voiceRecord/modal/VoiceRecordDeleteModal.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/modal/VoiceRecordUndoModal.js +6 -0
- package/dist/commonjs/features/voiceRecord/modal/VoiceRecordUndoModal.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/model/Recorder.model.js +2 -2
- package/dist/commonjs/features/voiceRecord/model/Recorder.model.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/model/VoiceRecord.model.js +2 -8
- package/dist/commonjs/features/voiceRecord/model/VoiceRecord.model.js.map +1 -1
- package/dist/commonjs/shared/translation/localization/ca.json +3 -3
- package/dist/commonjs/shared/translation/localization/de.json +3 -3
- package/dist/commonjs/shared/translation/localization/en.json +3 -3
- package/dist/commonjs/shared/translation/localization/gb.json +3 -3
- package/dist/commonjs/shared/translation/localization/sct.json +3 -3
- package/dist/commonjs/shared/translation/localization/sw.json +6 -6
- package/dist/module/features/voiceRecord/components/VoiceRecordTimer.js +3 -1
- package/dist/module/features/voiceRecord/components/VoiceRecordTimer.js.map +1 -1
- package/dist/module/features/voiceRecord/modal/VoiceRecordDeleteModal.js +18 -4
- package/dist/module/features/voiceRecord/modal/VoiceRecordDeleteModal.js.map +1 -1
- package/dist/module/features/voiceRecord/modal/VoiceRecordUndoModal.js +6 -0
- package/dist/module/features/voiceRecord/modal/VoiceRecordUndoModal.js.map +1 -1
- package/dist/module/features/voiceRecord/model/Recorder.model.js +2 -2
- package/dist/module/features/voiceRecord/model/Recorder.model.js.map +1 -1
- package/dist/module/features/voiceRecord/model/VoiceRecord.model.js +3 -9
- package/dist/module/features/voiceRecord/model/VoiceRecord.model.js.map +1 -1
- package/dist/module/shared/translation/localization/ca.json +3 -3
- package/dist/module/shared/translation/localization/de.json +3 -3
- package/dist/module/shared/translation/localization/en.json +3 -3
- package/dist/module/shared/translation/localization/gb.json +3 -3
- package/dist/module/shared/translation/localization/sct.json +3 -3
- package/dist/module/shared/translation/localization/sw.json +6 -6
- package/dist/typescript/commonjs/features/voiceRecord/modal/VoiceRecordDeleteModal.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/modal/VoiceRecordUndoModal.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/model/VoiceRecord.model.d.ts +0 -1
- package/dist/typescript/commonjs/features/voiceRecord/model/VoiceRecord.model.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/modal/VoiceRecordDeleteModal.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/modal/VoiceRecordUndoModal.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/model/VoiceRecord.model.d.ts +0 -1
- package/dist/typescript/module/features/voiceRecord/model/VoiceRecord.model.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/features/voiceRecord/components/VoiceRecordTimer.tsx +2 -1
- package/src/features/voiceRecord/modal/VoiceRecordDeleteModal.tsx +18 -4
- package/src/features/voiceRecord/modal/VoiceRecordUndoModal.tsx +6 -0
- package/src/features/voiceRecord/model/Recorder.model.ts +2 -2
- package/src/features/voiceRecord/model/VoiceRecord.model.ts +2 -10
- package/src/shared/translation/localization/ca.json +3 -3
- package/src/shared/translation/localization/de.json +3 -3
- package/src/shared/translation/localization/en.json +3 -3
- package/src/shared/translation/localization/gb.json +3 -3
- package/src/shared/translation/localization/sct.json +3 -3
- package/src/shared/translation/localization/sw.json +6 -6
|
@@ -21,6 +21,7 @@ const VoiceRecordTimer = ({
|
|
|
21
21
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
22
22
|
style: [styles.container, style],
|
|
23
23
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
|
|
24
|
+
variant: "h9",
|
|
24
25
|
style: styles.text,
|
|
25
26
|
children: displayDurationMs ? (0, _helpers.formatDuration)(displayDurationMs) : '0:00'
|
|
26
27
|
})
|
|
@@ -36,7 +37,8 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
36
37
|
alignItems: 'center',
|
|
37
38
|
borderWidth: 0.5,
|
|
38
39
|
borderColor: _reactNativeUi.COLORS.NEUTRAL_4,
|
|
39
|
-
borderRadius: 18
|
|
40
|
+
borderRadius: 18,
|
|
41
|
+
minWidth: 45
|
|
40
42
|
},
|
|
41
43
|
text: {
|
|
42
44
|
color: _reactNativeUi.COLORS.NEUTRAL_10,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_reactNativeUi","_react","_interopRequireDefault","_effectorReact","_helpers","_jsxRuntime","e","__esModule","default","VoiceRecordTimer","style","model","recordingFileDurationMs","savedAudioFileDurationMs","useUnit","recorderModel","$audioFileDurationMs","displayDurationMs","jsx","View","styles","container","children","Typography","text","formatDuration","exports","_default","StyleSheet","create","backgroundColor","COLORS","NEUTRAL_1","paddingHorizontal","paddingVertical","alignItems","borderWidth","borderColor","NEUTRAL_4","borderRadius","color","NEUTRAL_10","fontSize","fontWeight","lineHeight","textTransform"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecordTimer.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAC,sBAAA,CAAAH,OAAA;AAEA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AAA2C,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAG,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAQpC,MAAMG,gBAAgB,GAAGA,CAAC;EAC/BC,KAAK;EACLC,KAAK;EACLC;AACqB,CAAC,KAAK;EAC3B,MAAMC,wBAAwB,GAAG,IAAAC,sBAAO,EAACH,KAAK,CAACI,aAAa,CAACC,oBAAoB,CAAC;EAElF,MAAMC,iBAAiB,GAAGL,uBAAuB,GAC7CA,uBAAuB,GACvBC,wBAAwB;EAE5B,oBACE,IAAAR,WAAA,CAAAa,GAAA,EAACpB,YAAA,CAAAqB,IAAI;IAACT,KAAK,EAAE,CAACU,MAAM,CAACC,SAAS,EAAEX,KAAK,CAAE;IAAAY,QAAA,eACrC,IAAAjB,WAAA,CAAAa,GAAA,EAAClB,cAAA,CAAAuB,UAAU;
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_reactNativeUi","_react","_interopRequireDefault","_effectorReact","_helpers","_jsxRuntime","e","__esModule","default","VoiceRecordTimer","style","model","recordingFileDurationMs","savedAudioFileDurationMs","useUnit","recorderModel","$audioFileDurationMs","displayDurationMs","jsx","View","styles","container","children","Typography","variant","text","formatDuration","exports","_default","StyleSheet","create","backgroundColor","COLORS","NEUTRAL_1","paddingHorizontal","paddingVertical","alignItems","borderWidth","borderColor","NEUTRAL_4","borderRadius","minWidth","color","NEUTRAL_10","fontSize","fontWeight","lineHeight","textTransform"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecordTimer.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAC,sBAAA,CAAAH,OAAA;AAEA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AAA2C,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAG,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAQpC,MAAMG,gBAAgB,GAAGA,CAAC;EAC/BC,KAAK;EACLC,KAAK;EACLC;AACqB,CAAC,KAAK;EAC3B,MAAMC,wBAAwB,GAAG,IAAAC,sBAAO,EAACH,KAAK,CAACI,aAAa,CAACC,oBAAoB,CAAC;EAElF,MAAMC,iBAAiB,GAAGL,uBAAuB,GAC7CA,uBAAuB,GACvBC,wBAAwB;EAE5B,oBACE,IAAAR,WAAA,CAAAa,GAAA,EAACpB,YAAA,CAAAqB,IAAI;IAACT,KAAK,EAAE,CAACU,MAAM,CAACC,SAAS,EAAEX,KAAK,CAAE;IAAAY,QAAA,eACrC,IAAAjB,WAAA,CAAAa,GAAA,EAAClB,cAAA,CAAAuB,UAAU;MAACC,OAAO,EAAC,IAAI;MAACd,KAAK,EAAEU,MAAM,CAACK,IAAK;MAAAH,QAAA,EACzCL,iBAAiB,GAAG,IAAAS,uBAAc,EAACT,iBAAiB,CAAC,GAAG;IAAM,CACrD;EAAC,CACT,CAAC;AAEX,CAAC;AAAAU,OAAA,CAAAlB,gBAAA,GAAAA,gBAAA;AAAA,IAAAmB,QAAA,GAAAD,OAAA,CAAAnB,OAAA,GAEcC,gBAAgB;AAE/B,MAAMW,MAAM,GAAGS,uBAAU,CAACC,MAAM,CAAC;EAC/BT,SAAS,EAAE;IACTU,eAAe,EAAEC,qBAAM,CAACC,SAAS;IACjCC,iBAAiB,EAAE,CAAC;IACpBC,eAAe,EAAE,CAAC;IAClBC,UAAU,EAAE,QAAQ;IACpBC,WAAW,EAAE,GAAG;IAChBC,WAAW,EAAEN,qBAAM,CAACO,SAAS;IAC7BC,YAAY,EAAE,EAAE;IAChBC,QAAQ,EAAE;EACZ,CAAC;EACDhB,IAAI,EAAE;IACJiB,KAAK,EAAEV,qBAAM,CAACW,UAAU;IACxBC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,UAAU,EAAE,EAAE;IACdC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -30,6 +30,9 @@ const FooterButtons = ({
|
|
|
30
30
|
variant: _reactNativeUi.ButtonVariant.PRIMARY,
|
|
31
31
|
size: _reactNativeUi.ButtonSize.LARGE,
|
|
32
32
|
onPress: onDelete,
|
|
33
|
+
style: {
|
|
34
|
+
text: styles.buttonLabel
|
|
35
|
+
},
|
|
33
36
|
children: t('voiceRecorder.delete')
|
|
34
37
|
})]
|
|
35
38
|
});
|
|
@@ -45,11 +48,19 @@ const VoiceRecordDeleteModal = ({
|
|
|
45
48
|
model
|
|
46
49
|
} = params;
|
|
47
50
|
const recorderState = (0, _effectorReact.useUnit)(model.recorderModel.$voiceRecordState);
|
|
48
|
-
const handleDelete =
|
|
49
|
-
if (recorderState === _constants.VoiceRecorderState.
|
|
50
|
-
|
|
51
|
+
const handleDelete = () => {
|
|
52
|
+
if (recorderState === _constants.VoiceRecorderState.PAUSED) {
|
|
53
|
+
// if recording is paused, we need to start it again to ensure the recorder is in a consistent state before deletion
|
|
54
|
+
// without .record() browser still will use microphone
|
|
55
|
+
model.recorderModel.recorder.record();
|
|
56
|
+
setTimeout(() => {
|
|
57
|
+
model.stopAndDiscard();
|
|
58
|
+
model.deleteCurrentRecording();
|
|
59
|
+
}, 50);
|
|
60
|
+
closeModal();
|
|
61
|
+
return;
|
|
51
62
|
}
|
|
52
|
-
|
|
63
|
+
model.deleteCurrentRecording();
|
|
53
64
|
closeModal();
|
|
54
65
|
};
|
|
55
66
|
(0, _react.useEffect)(() => {
|
|
@@ -88,6 +99,9 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
88
99
|
flexDirection: 'row',
|
|
89
100
|
alignItems: 'center',
|
|
90
101
|
gap: _reactNativeUi.SPACING[200]
|
|
102
|
+
},
|
|
103
|
+
buttonLabel: {
|
|
104
|
+
textTransform: 'uppercase'
|
|
91
105
|
}
|
|
92
106
|
});
|
|
93
107
|
//# sourceMappingURL=VoiceRecordDeleteModal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeUi","_reactNative","_effectorReact","_constants","_index","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","FooterButtons","onClose","onDelete","useText","jsxs","View","style","styles","footerContainer","children","jsx","Button","variant","ButtonVariant","TERTIARY","size","ButtonSize","LARGE","onPress","colorScheme","ButtonColor","RED","PRIMARY","VoiceRecordDeleteModal","modal","closeModal","params","model","recorderState","useUnit","recorderModel","$voiceRecordState","handleDelete","VoiceRecorderState","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeUi","_reactNative","_effectorReact","_constants","_index","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","FooterButtons","onClose","onDelete","useText","jsxs","View","style","styles","footerContainer","children","jsx","Button","variant","ButtonVariant","TERTIARY","size","ButtonSize","LARGE","onPress","colorScheme","ButtonColor","RED","PRIMARY","text","buttonLabel","VoiceRecordDeleteModal","modal","closeModal","params","model","recorderState","useUnit","recorderModel","$voiceRecordState","handleDelete","VoiceRecorderState","PAUSED","recorder","record","setTimeout","stopAndDiscard","deleteCurrentRecording","useEffect","RECORDING","pause","getState","error","console","BaseModal","container","modalContainer","header","content","footer","exports","StyleSheet","create","width","height","flexDirection","alignItems","gap","SPACING","textTransform"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/modal/VoiceRecordDeleteModal.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -27,6 +27,9 @@ const FooterButtons = ({
|
|
|
27
27
|
variant: _reactNativeUi.ButtonVariant.PRIMARY,
|
|
28
28
|
size: _reactNativeUi.ButtonSize.LARGE,
|
|
29
29
|
onPress: onRedo,
|
|
30
|
+
style: {
|
|
31
|
+
text: styles.buttonLabel
|
|
32
|
+
},
|
|
30
33
|
children: t('voiceRecorder.redo')
|
|
31
34
|
})]
|
|
32
35
|
});
|
|
@@ -70,6 +73,9 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
70
73
|
flexDirection: 'row',
|
|
71
74
|
alignItems: 'center',
|
|
72
75
|
gap: _reactNativeUi.SPACING[200]
|
|
76
|
+
},
|
|
77
|
+
buttonLabel: {
|
|
78
|
+
textTransform: 'uppercase'
|
|
73
79
|
}
|
|
74
80
|
});
|
|
75
81
|
//# sourceMappingURL=VoiceRecordUndoModal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNativeUi","_reactNative","_index","_jsxRuntime","e","__esModule","default","FooterButtons","onClose","onRedo","t","useText","jsxs","View","style","styles","footerContainer","children","jsx","Button","variant","ButtonVariant","TERTIARY","size","ButtonSize","LARGE","onPress","colorScheme","ButtonColor","BLUE","PRIMARY","VoiceRecordUndoModal","modal","closeModal","params","model","handleRedo","deleteCurrentRecording","notification","initializeRecording","BaseModal","container","modalStyle","header","content","footer","exports","StyleSheet","create","width","height","flexDirection","alignItems","gap","SPACING"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/modal/VoiceRecordUndoModal.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAQA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAAqD,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAiBrD,MAAMG,aAAa,GAAGA,CAAC;EAAEC,OAAO;EAAEC;AAA2B,CAAC,KAAK;EACjE,MAAMC,CAAC,GAAG,IAAAC,cAAO,EAAC,CAAC;EAEnB,oBACE,IAAAR,WAAA,CAAAS,IAAA,EAACX,YAAA,CAAAY,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,eAAgB;IAAAC,QAAA,gBAClC,IAAAd,WAAA,CAAAe,GAAA,EAAClB,cAAA,CAAAmB,MAAM;MAACC,OAAO,EAAEC,4BAAa,CAACC,QAAS;MAACC,IAAI,EAAEC,yBAAU,CAACC,KAAM;MAACC,OAAO,EAAElB,OAAQ;MAAAS,QAAA,EAC/EP,CAAC,CAAC,sBAAsB;IAAC,CACpB,CAAC,eACT,IAAAP,WAAA,CAAAe,GAAA,EAAClB,cAAA,CAAAmB,MAAM;MACLQ,WAAW,EAAEC,0BAAW,CAACC,IAAK;MAC9BT,OAAO,EAAEC,4BAAa,CAACS,OAAQ;MAC/BP,IAAI,EAAEC,yBAAU,CAACC,KAAM;MACvBC,OAAO,EAAEjB,MAAO;
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNativeUi","_reactNative","_index","_jsxRuntime","e","__esModule","default","FooterButtons","onClose","onRedo","t","useText","jsxs","View","style","styles","footerContainer","children","jsx","Button","variant","ButtonVariant","TERTIARY","size","ButtonSize","LARGE","onPress","colorScheme","ButtonColor","BLUE","PRIMARY","text","buttonLabel","VoiceRecordUndoModal","modal","closeModal","params","model","handleRedo","deleteCurrentRecording","notification","initializeRecording","BaseModal","container","modalStyle","header","content","footer","exports","StyleSheet","create","width","height","flexDirection","alignItems","gap","SPACING","textTransform"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/modal/VoiceRecordUndoModal.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAQA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAAqD,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAiBrD,MAAMG,aAAa,GAAGA,CAAC;EAAEC,OAAO;EAAEC;AAA2B,CAAC,KAAK;EACjE,MAAMC,CAAC,GAAG,IAAAC,cAAO,EAAC,CAAC;EAEnB,oBACE,IAAAR,WAAA,CAAAS,IAAA,EAACX,YAAA,CAAAY,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,eAAgB;IAAAC,QAAA,gBAClC,IAAAd,WAAA,CAAAe,GAAA,EAAClB,cAAA,CAAAmB,MAAM;MAACC,OAAO,EAAEC,4BAAa,CAACC,QAAS;MAACC,IAAI,EAAEC,yBAAU,CAACC,KAAM;MAACC,OAAO,EAAElB,OAAQ;MAAAS,QAAA,EAC/EP,CAAC,CAAC,sBAAsB;IAAC,CACpB,CAAC,eACT,IAAAP,WAAA,CAAAe,GAAA,EAAClB,cAAA,CAAAmB,MAAM;MACLQ,WAAW,EAAEC,0BAAW,CAACC,IAAK;MAC9BT,OAAO,EAAEC,4BAAa,CAACS,OAAQ;MAC/BP,IAAI,EAAEC,yBAAU,CAACC,KAAM;MACvBC,OAAO,EAAEjB,MAAO;MAChBK,KAAK,EAAE;QACLiB,IAAI,EAAEhB,MAAM,CAACiB;MACf,CAAE;MAAAf,QAAA,EAEDP,CAAC,CAAC,oBAAoB;IAAC,CAClB,CAAC;EAAA,CACL,CAAC;AAEX,CAAC;AAEM,MAAMuB,oBAAoB,GAAGA,CAAC;EACnCC,KAAK,EAAE;IAAEC,UAAU;IAAEC;EAAO;AACH,CAAC,KAAK;EAC/B,MAAM1B,CAAC,GAAG,IAAAC,cAAO,EAAC,CAAC;EACnB,MAAM;IAAE0B;EAAM,CAAC,GAAGD,MAAM;EAExB,MAAME,UAAU,GAAGA,CAAA,KAAM;IACvBD,KAAK,CAACE,sBAAsB,CAAC;MAAEC,YAAY,EAAE;IAAM,CAAC,CAAC;IACrDL,UAAU,CAAC,CAAC;IACZE,KAAK,CAACI,mBAAmB,CAAC,CAAC;EAC7B,CAAC;EAED,oBACE,IAAAtC,WAAA,CAAAe,GAAA,EAAClB,cAAA,CAAA0C,SAAS;IACR5B,KAAK,EAAE;MACL6B,SAAS,EAAE5B,MAAM,CAAC6B;IACpB,CAAE;IACFC,MAAM,EAAEnC,CAAC,CAAC,6BAA6B,CAAE;IACzCoC,OAAO,EAAEpC,CAAC,CAAC,uCAAuC,CAAE;IACpDqC,MAAM,eAAE,IAAA5C,WAAA,CAAAe,GAAA,EAACX,aAAa;MAACC,OAAO,EAAE2B,UAAW;MAAC1B,MAAM,EAAE6B;IAAW,CAAE;EAAE,CACpE,CAAC;AAEN,CAAC;AAAAU,OAAA,CAAAf,oBAAA,GAAAA,oBAAA;AAED,MAAMlB,MAAM,GAAGkC,uBAAU,CAACC,MAAM,CAAC;EAC/BN,UAAU,EAAE;IACVO,KAAK,EAAE,GAAG;IACVC,MAAM,EAAE;EACV,CAAC;EACDpC,eAAe,EAAE;IACfqC,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAEC,sBAAO,CAAC,GAAG;EAClB,CAAC;EACDxB,WAAW,EAAE;IACXyB,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -31,13 +31,13 @@ class RecorderModel {
|
|
|
31
31
|
}
|
|
32
32
|
});
|
|
33
33
|
stop = (0, _effector.createEffect)(() => {
|
|
34
|
-
if (!this.recorder.isRecording) return Promise.resolve();
|
|
34
|
+
if (!this.recorder.getStatus().isRecording) return Promise.resolve();
|
|
35
35
|
return this.recorder.stop();
|
|
36
36
|
});
|
|
37
37
|
stopAndGetCollectionItem() {
|
|
38
38
|
return new Promise(resolve => {
|
|
39
39
|
this.stopResolver = resolve;
|
|
40
|
-
this.recorder.isRecording && this.recorder.stop();
|
|
40
|
+
this.recorder.getStatus().isRecording && this.recorder.stop();
|
|
41
41
|
});
|
|
42
42
|
}
|
|
43
43
|
resolveStopWithCollectionItem(item) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_effector","require","_expoAudio","_constants","AUDIO_MODE_CONFIG","playsInSilentMode","allowsRecording","RecorderModel","stopResolver","reset","createEvent","setAudioFileDurationMs","setVoiceRecordState","setAvailableInputs","$audioFileDurationMs","restore","$voiceRecordState","VoiceRecorderState","IDLE","$availableInputs","start","createEffect","setAudioModeAsync","recorder","prepareToRecordAsync","record","error","console","stop","isRecording","Promise","resolve","stopAndGetCollectionItem","resolveStopWithCollectionItem","item","clearStopResolver","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/model/Recorder.model.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAGA,MAAMG,iBAAiB,GAAG;EACxBC,iBAAiB,EAAE,IAAI;EACvBC,eAAe,EAAE;AACnB,CAAU;AAIH,MAAMC,aAAa,CAAC;EAEjBC,YAAY,GAAwB,IAAI;EAEhCC,KAAK,GAAG,IAAAC,qBAAW,EAAC,CAAC;EACrBC,sBAAsB,GAAG,IAAAD,qBAAW,EAAS,CAAC;EAC9CE,mBAAmB,GAAG,IAAAF,qBAAW,EAAqB,CAAC;EACvDG,kBAAkB,GAAG,IAAAH,qBAAW,EAAuB,CAAC;EAExDI,oBAAoB,GAAG,IAAAC,iBAAO,EAAC,IAAI,CAACJ,sBAAsB,EAAE,CAAC,CAAC,CAACF,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EAChFO,iBAAiB,GAAG,IAAAD,iBAAO,EACzC,IAAI,CAACH,mBAAmB,EACxBK,6BAAkB,CAACC,IACrB,CAAC,CAACT,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EACHU,gBAAgB,GAAG,IAAAJ,iBAAO,EAAC,IAAI,CAACF,kBAAkB,EAAE,EAAE,CAAC;EAEvDO,KAAK,GAAG,IAAAC,sBAAY,EAAC,YAAY;IAC/C,IAAI;MACF,MAAM,IAAAC,4BAAiB,EAAClB,iBAAiB,CAAC;MAC1C,MAAM,IAAI,CAACmB,QAAQ,CAACC,oBAAoB,CAAC,CAAC;MAC1C,IAAI,CAACD,QAAQ,CAACE,MAAM,CAAC,CAAC;IACxB,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,2BAA2B,EAAEA,KAAK,CAAC;MACjD,MAAMA,KAAK;IACb;EACF,CAAC,CAAC;EAEcE,IAAI,GAAG,IAAAP,sBAAY,EAAC,MAAM;IACxC,IAAI,CAAC,IAAI,CAACE,QAAQ,CAACM,WAAW,EAAE,OAAOC,OAAO,CAACC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"names":["_effector","require","_expoAudio","_constants","AUDIO_MODE_CONFIG","playsInSilentMode","allowsRecording","RecorderModel","stopResolver","reset","createEvent","setAudioFileDurationMs","setVoiceRecordState","setAvailableInputs","$audioFileDurationMs","restore","$voiceRecordState","VoiceRecorderState","IDLE","$availableInputs","start","createEffect","setAudioModeAsync","recorder","prepareToRecordAsync","record","error","console","stop","getStatus","isRecording","Promise","resolve","stopAndGetCollectionItem","resolveStopWithCollectionItem","item","clearStopResolver","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/model/Recorder.model.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAGA,MAAMG,iBAAiB,GAAG;EACxBC,iBAAiB,EAAE,IAAI;EACvBC,eAAe,EAAE;AACnB,CAAU;AAIH,MAAMC,aAAa,CAAC;EAEjBC,YAAY,GAAwB,IAAI;EAEhCC,KAAK,GAAG,IAAAC,qBAAW,EAAC,CAAC;EACrBC,sBAAsB,GAAG,IAAAD,qBAAW,EAAS,CAAC;EAC9CE,mBAAmB,GAAG,IAAAF,qBAAW,EAAqB,CAAC;EACvDG,kBAAkB,GAAG,IAAAH,qBAAW,EAAuB,CAAC;EAExDI,oBAAoB,GAAG,IAAAC,iBAAO,EAAC,IAAI,CAACJ,sBAAsB,EAAE,CAAC,CAAC,CAACF,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EAChFO,iBAAiB,GAAG,IAAAD,iBAAO,EACzC,IAAI,CAACH,mBAAmB,EACxBK,6BAAkB,CAACC,IACrB,CAAC,CAACT,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EACHU,gBAAgB,GAAG,IAAAJ,iBAAO,EAAC,IAAI,CAACF,kBAAkB,EAAE,EAAE,CAAC;EAEvDO,KAAK,GAAG,IAAAC,sBAAY,EAAC,YAAY;IAC/C,IAAI;MACF,MAAM,IAAAC,4BAAiB,EAAClB,iBAAiB,CAAC;MAC1C,MAAM,IAAI,CAACmB,QAAQ,CAACC,oBAAoB,CAAC,CAAC;MAC1C,IAAI,CAACD,QAAQ,CAACE,MAAM,CAAC,CAAC;IACxB,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,2BAA2B,EAAEA,KAAK,CAAC;MACjD,MAAMA,KAAK;IACb;EACF,CAAC,CAAC;EAEcE,IAAI,GAAG,IAAAP,sBAAY,EAAC,MAAM;IACxC,IAAI,CAAC,IAAI,CAACE,QAAQ,CAACM,SAAS,CAAC,CAAC,CAACC,WAAW,EAAE,OAAOC,OAAO,CAACC,OAAO,CAAC,CAAC;IACpE,OAAO,IAAI,CAACT,QAAQ,CAACK,IAAI,CAAC,CAAC;EAC7B,CAAC,CAAC;EAEKK,wBAAwBA,CAAA,EAAuC;IACpE,OAAO,IAAIF,OAAO,CAAEC,OAAO,IAAK;MAC9B,IAAI,CAACxB,YAAY,GAAGwB,OAAO;MAC3B,IAAI,CAACT,QAAQ,CAACM,SAAS,CAAC,CAAC,CAACC,WAAW,IAAI,IAAI,CAACP,QAAQ,CAACK,IAAI,CAAC,CAAC;IAC/D,CAAC,CAAC;EACJ;EAEOM,6BAA6BA,CAACC,IAA+B,EAAQ;IAC1E,IAAI,IAAI,CAAC3B,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAAC2B,IAAI,CAAC;MACvB,IAAI,CAAC3B,YAAY,GAAG,IAAI;IAC1B;EACF;EAEO4B,iBAAiBA,CAAA,EAAS;IAC/B,IAAI,CAAC5B,YAAY,GAAG,IAAI;EAC1B;AACF;AAAC6B,OAAA,CAAA9B,aAAA,GAAAA,aAAA","ignoreList":[]}
|
|
@@ -30,6 +30,7 @@ class VoiceRecordModel {
|
|
|
30
30
|
currentKey,
|
|
31
31
|
notification
|
|
32
32
|
}) => {
|
|
33
|
+
console.log('Deleting recording with key:', currentKey);
|
|
33
34
|
const recordingItem = this.collection.get(currentKey);
|
|
34
35
|
this.abortUploadIfInProgress(recordingItem);
|
|
35
36
|
this.resetRecordingState(currentKey);
|
|
@@ -39,6 +40,7 @@ class VoiceRecordModel {
|
|
|
39
40
|
})
|
|
40
41
|
});
|
|
41
42
|
initializeRecording = (0, _effector.createEffect)(async () => {
|
|
43
|
+
console.log('Initializing new recording');
|
|
42
44
|
this.deleteCurrentRecording({
|
|
43
45
|
notification: false
|
|
44
46
|
});
|
|
@@ -87,7 +89,6 @@ class VoiceRecordModel {
|
|
|
87
89
|
this.collection = new _VoiceRecordCollection.VoiceRecordsCollection();
|
|
88
90
|
this.setupUploadHandler();
|
|
89
91
|
this.setupCurrentRecordSync();
|
|
90
|
-
this.setupUriSync();
|
|
91
92
|
}
|
|
92
93
|
abortUploadIfInProgress(recordingItem) {
|
|
93
94
|
if (!recordingItem?.id && recordingItem?.controller) {
|
|
@@ -153,13 +154,6 @@ class VoiceRecordModel {
|
|
|
153
154
|
}))
|
|
154
155
|
});
|
|
155
156
|
}
|
|
156
|
-
setupUriSync() {
|
|
157
|
-
(0, _effector.sample)({
|
|
158
|
-
source: this.$currentRecord,
|
|
159
|
-
fn: record => record?.uri || '',
|
|
160
|
-
target: (0, _effector.createStore)('').reset(this.reset)
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
157
|
setupCurrentRecordSync() {
|
|
164
158
|
(0, _effector.sample)({
|
|
165
159
|
source: this.$currentKey,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_effector","require","_helpers","_index","_RecorderModel","_VoiceRecordCollection","VoiceRecordModel","shouldDiscardRecording","setCurrentKey","createEvent","setCurrentRecord","reset","setIsDisabled","startAudioUpload","$currentKey","restore","$currentRecord","$isDisabled","deleteCurrentRecording","attach","source","mapParams","props","currentKey","notification","effect","createEffect","recordingItem","collection","get","abortUploadIfInProgress","resetRecordingState","info","t","initializeRecording","hasPermissions","ensureRecordingPermissions","error","inputs","getAvailableInputs","recorderModel","recorder","setAvailableInputs","length","start","stopAndDiscard","stop","clearStopResolver","recordingStatusUpdate","status","isFinished","url","constructor","api","events","RecorderModel","VoiceRecordsCollection","setupUploadHandler","setupCurrentRecordSync","
|
|
1
|
+
{"version":3,"names":["_effector","require","_helpers","_index","_RecorderModel","_VoiceRecordCollection","VoiceRecordModel","shouldDiscardRecording","setCurrentKey","createEvent","setCurrentRecord","reset","setIsDisabled","startAudioUpload","$currentKey","restore","$currentRecord","$isDisabled","deleteCurrentRecording","attach","source","mapParams","props","currentKey","notification","effect","createEffect","console","log","recordingItem","collection","get","abortUploadIfInProgress","resetRecordingState","info","t","initializeRecording","hasPermissions","ensureRecordingPermissions","error","inputs","getAvailableInputs","recorderModel","recorder","setAvailableInputs","length","start","stopAndDiscard","stop","clearStopResolver","recordingStatusUpdate","status","isFinished","url","constructor","api","events","RecorderModel","VoiceRecordsCollection","setupUploadHandler","setupCurrentRecordSync","id","controller","abort","delete","handleAudioUpload","uri","durationMs","getAudioDurationMs","formData","generateAudioFormData","audioFileUri","uploadAudio","uploadAudioFileRequestGenerator","audioUploadPromise","then","data","update","catch","name","collectionItem","add","resolveStopWithCollectionItem","sample","clock","filter","fn","target","setAudioFileDurationMs","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/model/VoiceRecord.model.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Delete recording?",
|
|
45
45
|
"youWontBeAbleToRecover": "You won't be able to recover this file once it's gone.",
|
|
46
|
-
"recordingDeleted": "Recording successfully deleted",
|
|
46
|
+
"recordingDeleted": "Recording successfully deleted.",
|
|
47
47
|
"delete": "Delete",
|
|
48
48
|
"cancel": "Cancel",
|
|
49
|
-
"noMicrophoneAccess": "No microphone access",
|
|
50
|
-
"noMicrophoneFound": "No microphone found",
|
|
49
|
+
"noMicrophoneAccess": "No microphone access.",
|
|
50
|
+
"noMicrophoneFound": "No microphone found.",
|
|
51
51
|
"uploadFailed": "Upload failed. Please try again.",
|
|
52
52
|
"redoRecording": "Redo recording?",
|
|
53
53
|
"redo": "Redo",
|
|
@@ -49,8 +49,8 @@
|
|
|
49
49
|
"noMicrophoneAccess": "Kein Mikrofon-Zugriff.",
|
|
50
50
|
"noMicrophoneFound": "Kein Mikrofon gefunden.",
|
|
51
51
|
"uploadFailed": "Hochladen fehlgeschlagen. Bitte versuche es erneut.",
|
|
52
|
-
"redoRecording": "
|
|
53
|
-
"redo": "
|
|
54
|
-
"thisWillRemoveRecording": "
|
|
52
|
+
"redoRecording": "Aufnahme erneut aufnehmen?",
|
|
53
|
+
"redo": "Wiederholen",
|
|
54
|
+
"thisWillRemoveRecording": "Dadurch wird die Aufnahme entfernt."
|
|
55
55
|
}
|
|
56
56
|
}
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Delete recording?",
|
|
45
45
|
"youWontBeAbleToRecover": "You won't be able to recover this file once it's gone.",
|
|
46
|
-
"recordingDeleted": "Recording successfully deleted",
|
|
46
|
+
"recordingDeleted": "Recording successfully deleted.",
|
|
47
47
|
"delete": "Delete",
|
|
48
48
|
"cancel": "Cancel",
|
|
49
|
-
"noMicrophoneAccess": "No microphone access",
|
|
50
|
-
"noMicrophoneFound": "No microphone found",
|
|
49
|
+
"noMicrophoneAccess": "No microphone access.",
|
|
50
|
+
"noMicrophoneFound": "No microphone found.",
|
|
51
51
|
"uploadFailed": "Upload failed. Please try again.",
|
|
52
52
|
"redoRecording": "Redo recording?",
|
|
53
53
|
"redo": "Redo",
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Delete recording?",
|
|
45
45
|
"youWontBeAbleToRecover": "You won't be able to recover this file once it's gone.",
|
|
46
|
-
"recordingDeleted": "Recording successfully deleted",
|
|
46
|
+
"recordingDeleted": "Recording successfully deleted.",
|
|
47
47
|
"delete": "Delete",
|
|
48
48
|
"cancel": "Cancel",
|
|
49
|
-
"noMicrophoneAccess": "No microphone access",
|
|
50
|
-
"noMicrophoneFound": "No microphone found",
|
|
49
|
+
"noMicrophoneAccess": "No microphone access.",
|
|
50
|
+
"noMicrophoneFound": "No microphone found.",
|
|
51
51
|
"uploadFailed": "Upload failed. Please try again.",
|
|
52
52
|
"redoRecording": "Redo recording?",
|
|
53
53
|
"redo": "Redo",
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Delete recording?",
|
|
45
45
|
"youWontBeAbleToRecover": "You won't be able to recover this file once it's gone.",
|
|
46
|
-
"recordingDeleted": "Recording successfully deleted",
|
|
46
|
+
"recordingDeleted": "Recording successfully deleted.",
|
|
47
47
|
"delete": "Delete",
|
|
48
48
|
"cancel": "Cancel",
|
|
49
|
-
"noMicrophoneAccess": "No microphone access",
|
|
50
|
-
"noMicrophoneFound": "No microphone found",
|
|
49
|
+
"noMicrophoneAccess": "No microphone access.",
|
|
50
|
+
"noMicrophoneFound": "No microphone found.",
|
|
51
51
|
"uploadFailed": "Upload failed. Please try again.",
|
|
52
52
|
"redoRecording": "Redo recording?",
|
|
53
53
|
"redo": "Redo",
|
|
@@ -43,14 +43,14 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Radera inspelningen?",
|
|
45
45
|
"youWontBeAbleToRecover": "Du kommer inte att kunna återställa filen när den väl är borta.",
|
|
46
|
-
"recordingDeleted": "
|
|
46
|
+
"recordingDeleted": "Inspelningen raderad.",
|
|
47
47
|
"delete": "Radera",
|
|
48
48
|
"cancel": "Avbryt",
|
|
49
|
-
"noMicrophoneAccess": "Ingen mikrofonåtkomst",
|
|
50
|
-
"noMicrophoneFound": "Ingen mikrofon hittades",
|
|
49
|
+
"noMicrophoneAccess": "Ingen mikrofonåtkomst.",
|
|
50
|
+
"noMicrophoneFound": "Ingen mikrofon hittades.",
|
|
51
51
|
"uploadFailed": "Uppladdning misslyckades. Försök igen.",
|
|
52
|
-
"redoRecording": "
|
|
53
|
-
"redo": "
|
|
54
|
-
"thisWillRemoveRecording": "
|
|
52
|
+
"redoRecording": "Spela in igen?",
|
|
53
|
+
"redo": "Gör om",
|
|
54
|
+
"thisWillRemoveRecording": "Detta tar bort inspelningen."
|
|
55
55
|
}
|
|
56
56
|
}
|
|
@@ -16,6 +16,7 @@ export const VoiceRecordTimer = ({
|
|
|
16
16
|
return /*#__PURE__*/_jsx(View, {
|
|
17
17
|
style: [styles.container, style],
|
|
18
18
|
children: /*#__PURE__*/_jsx(Typography, {
|
|
19
|
+
variant: "h9",
|
|
19
20
|
style: styles.text,
|
|
20
21
|
children: displayDurationMs ? formatDuration(displayDurationMs) : '0:00'
|
|
21
22
|
})
|
|
@@ -30,7 +31,8 @@ const styles = StyleSheet.create({
|
|
|
30
31
|
alignItems: 'center',
|
|
31
32
|
borderWidth: 0.5,
|
|
32
33
|
borderColor: COLORS.NEUTRAL_4,
|
|
33
|
-
borderRadius: 18
|
|
34
|
+
borderRadius: 18,
|
|
35
|
+
minWidth: 45
|
|
34
36
|
},
|
|
35
37
|
text: {
|
|
36
38
|
color: COLORS.NEUTRAL_10,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StyleSheet","View","COLORS","Typography","React","useUnit","formatDuration","jsx","_jsx","VoiceRecordTimer","style","model","recordingFileDurationMs","savedAudioFileDurationMs","recorderModel","$audioFileDurationMs","displayDurationMs","styles","container","children","text","create","backgroundColor","NEUTRAL_1","paddingHorizontal","paddingVertical","alignItems","borderWidth","borderColor","NEUTRAL_4","borderRadius","color","NEUTRAL_10","fontSize","fontWeight","lineHeight","textTransform"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecordTimer.tsx"],"mappings":";;AAAA,SAAoBA,UAAU,EAAEC,IAAI,QAAmB,cAAc;AACrE,SAASC,MAAM,EAAEC,UAAU,QAAQ,4BAA4B;AAC/D,OAAOC,KAAK,MAAM,OAAO;AAEzB,SAASC,OAAO,QAAQ,gBAAgB;AACxC,SAASC,cAAc,QAAQ,eAAY;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAQ3C,OAAO,MAAMC,gBAAgB,GAAGA,CAAC;EAC/BC,KAAK;EACLC,KAAK;EACLC;AACqB,CAAC,KAAK;EAC3B,MAAMC,wBAAwB,GAAGR,OAAO,CAACM,KAAK,CAACG,aAAa,CAACC,oBAAoB,CAAC;EAElF,MAAMC,iBAAiB,GAAGJ,uBAAuB,GAC7CA,uBAAuB,GACvBC,wBAAwB;EAE5B,oBACEL,IAAA,CAACP,IAAI;IAACS,KAAK,EAAE,CAACO,MAAM,CAACC,SAAS,EAAER,KAAK,CAAE;IAAAS,QAAA,eACrCX,IAAA,CAACL,UAAU;
|
|
1
|
+
{"version":3,"names":["StyleSheet","View","COLORS","Typography","React","useUnit","formatDuration","jsx","_jsx","VoiceRecordTimer","style","model","recordingFileDurationMs","savedAudioFileDurationMs","recorderModel","$audioFileDurationMs","displayDurationMs","styles","container","children","variant","text","create","backgroundColor","NEUTRAL_1","paddingHorizontal","paddingVertical","alignItems","borderWidth","borderColor","NEUTRAL_4","borderRadius","minWidth","color","NEUTRAL_10","fontSize","fontWeight","lineHeight","textTransform"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecordTimer.tsx"],"mappings":";;AAAA,SAAoBA,UAAU,EAAEC,IAAI,QAAmB,cAAc;AACrE,SAASC,MAAM,EAAEC,UAAU,QAAQ,4BAA4B;AAC/D,OAAOC,KAAK,MAAM,OAAO;AAEzB,SAASC,OAAO,QAAQ,gBAAgB;AACxC,SAASC,cAAc,QAAQ,eAAY;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAQ3C,OAAO,MAAMC,gBAAgB,GAAGA,CAAC;EAC/BC,KAAK;EACLC,KAAK;EACLC;AACqB,CAAC,KAAK;EAC3B,MAAMC,wBAAwB,GAAGR,OAAO,CAACM,KAAK,CAACG,aAAa,CAACC,oBAAoB,CAAC;EAElF,MAAMC,iBAAiB,GAAGJ,uBAAuB,GAC7CA,uBAAuB,GACvBC,wBAAwB;EAE5B,oBACEL,IAAA,CAACP,IAAI;IAACS,KAAK,EAAE,CAACO,MAAM,CAACC,SAAS,EAAER,KAAK,CAAE;IAAAS,QAAA,eACrCX,IAAA,CAACL,UAAU;MAACiB,OAAO,EAAC,IAAI;MAACV,KAAK,EAAEO,MAAM,CAACI,IAAK;MAAAF,QAAA,EACzCH,iBAAiB,GAAGV,cAAc,CAACU,iBAAiB,CAAC,GAAG;IAAM,CACrD;EAAC,CACT,CAAC;AAEX,CAAC;AAED,eAAeP,gBAAgB;AAE/B,MAAMQ,MAAM,GAAGjB,UAAU,CAACsB,MAAM,CAAC;EAC/BJ,SAAS,EAAE;IACTK,eAAe,EAAErB,MAAM,CAACsB,SAAS;IACjCC,iBAAiB,EAAE,CAAC;IACpBC,eAAe,EAAE,CAAC;IAClBC,UAAU,EAAE,QAAQ;IACpBC,WAAW,EAAE,GAAG;IAChBC,WAAW,EAAE3B,MAAM,CAAC4B,SAAS;IAC7BC,YAAY,EAAE,EAAE;IAChBC,QAAQ,EAAE;EACZ,CAAC;EACDX,IAAI,EAAE;IACJY,KAAK,EAAE/B,MAAM,CAACgC,UAAU;IACxBC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,UAAU,EAAE,EAAE;IACdC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -24,6 +24,9 @@ const FooterButtons = ({
|
|
|
24
24
|
variant: ButtonVariant.PRIMARY,
|
|
25
25
|
size: ButtonSize.LARGE,
|
|
26
26
|
onPress: onDelete,
|
|
27
|
+
style: {
|
|
28
|
+
text: styles.buttonLabel
|
|
29
|
+
},
|
|
27
30
|
children: t('voiceRecorder.delete')
|
|
28
31
|
})]
|
|
29
32
|
});
|
|
@@ -39,11 +42,19 @@ export const VoiceRecordDeleteModal = ({
|
|
|
39
42
|
model
|
|
40
43
|
} = params;
|
|
41
44
|
const recorderState = useUnit(model.recorderModel.$voiceRecordState);
|
|
42
|
-
const handleDelete =
|
|
43
|
-
if (recorderState === VoiceRecorderState.
|
|
44
|
-
|
|
45
|
+
const handleDelete = () => {
|
|
46
|
+
if (recorderState === VoiceRecorderState.PAUSED) {
|
|
47
|
+
// if recording is paused, we need to start it again to ensure the recorder is in a consistent state before deletion
|
|
48
|
+
// without .record() browser still will use microphone
|
|
49
|
+
model.recorderModel.recorder.record();
|
|
50
|
+
setTimeout(() => {
|
|
51
|
+
model.stopAndDiscard();
|
|
52
|
+
model.deleteCurrentRecording();
|
|
53
|
+
}, 50);
|
|
54
|
+
closeModal();
|
|
55
|
+
return;
|
|
45
56
|
}
|
|
46
|
-
|
|
57
|
+
model.deleteCurrentRecording();
|
|
47
58
|
closeModal();
|
|
48
59
|
};
|
|
49
60
|
useEffect(() => {
|
|
@@ -81,6 +92,9 @@ const styles = StyleSheet.create({
|
|
|
81
92
|
flexDirection: 'row',
|
|
82
93
|
alignItems: 'center',
|
|
83
94
|
gap: SPACING[200]
|
|
95
|
+
},
|
|
96
|
+
buttonLabel: {
|
|
97
|
+
textTransform: 'uppercase'
|
|
84
98
|
}
|
|
85
99
|
});
|
|
86
100
|
//# sourceMappingURL=VoiceRecordDeleteModal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","BaseModal","Button","ButtonColor","ButtonSize","ButtonVariant","SPACING","View","StyleSheet","useUnit","VoiceRecorderState","useText","jsx","_jsx","jsxs","_jsxs","FooterButtons","onClose","onDelete","t","style","styles","footerContainer","children","variant","TERTIARY","size","LARGE","onPress","colorScheme","RED","PRIMARY","VoiceRecordDeleteModal","modal","closeModal","params","model","recorderState","recorderModel","$voiceRecordState","handleDelete","
|
|
1
|
+
{"version":3,"names":["React","useEffect","BaseModal","Button","ButtonColor","ButtonSize","ButtonVariant","SPACING","View","StyleSheet","useUnit","VoiceRecorderState","useText","jsx","_jsx","jsxs","_jsxs","FooterButtons","onClose","onDelete","t","style","styles","footerContainer","children","variant","TERTIARY","size","LARGE","onPress","colorScheme","RED","PRIMARY","text","buttonLabel","VoiceRecordDeleteModal","modal","closeModal","params","model","recorderState","recorderModel","$voiceRecordState","handleDelete","PAUSED","recorder","record","setTimeout","stopAndDiscard","deleteCurrentRecording","RECORDING","pause","getState","error","console","container","modalContainer","header","content","footer","create","width","height","flexDirection","alignItems","gap","textTransform"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/modal/VoiceRecordDeleteModal.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -22,6 +22,9 @@ const FooterButtons = ({
|
|
|
22
22
|
variant: ButtonVariant.PRIMARY,
|
|
23
23
|
size: ButtonSize.LARGE,
|
|
24
24
|
onPress: onRedo,
|
|
25
|
+
style: {
|
|
26
|
+
text: styles.buttonLabel
|
|
27
|
+
},
|
|
25
28
|
children: t('voiceRecorder.redo')
|
|
26
29
|
})]
|
|
27
30
|
});
|
|
@@ -64,6 +67,9 @@ const styles = StyleSheet.create({
|
|
|
64
67
|
flexDirection: 'row',
|
|
65
68
|
alignItems: 'center',
|
|
66
69
|
gap: SPACING[200]
|
|
70
|
+
},
|
|
71
|
+
buttonLabel: {
|
|
72
|
+
textTransform: 'uppercase'
|
|
67
73
|
}
|
|
68
74
|
});
|
|
69
75
|
//# sourceMappingURL=VoiceRecordUndoModal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","BaseModal","Button","ButtonColor","ButtonSize","ButtonVariant","SPACING","StyleSheet","View","useText","jsx","_jsx","jsxs","_jsxs","FooterButtons","onClose","onRedo","t","style","styles","footerContainer","children","variant","TERTIARY","size","LARGE","onPress","colorScheme","BLUE","PRIMARY","VoiceRecordUndoModal","modal","closeModal","params","model","handleRedo","deleteCurrentRecording","notification","initializeRecording","container","modalStyle","header","content","footer","create","width","height","flexDirection","alignItems","gap"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/modal/VoiceRecordUndoModal.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SACEC,SAAS,EACTC,MAAM,EACNC,WAAW,EACXC,UAAU,EACVC,aAAa,EACbC,OAAO,QACF,4BAA4B;AACnC,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,OAAO,QAAQ,sCAA6B;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAiBrD,MAAMC,aAAa,GAAGA,CAAC;EAAEC,OAAO;EAAEC;AAA2B,CAAC,KAAK;EACjE,MAAMC,CAAC,GAAGR,OAAO,CAAC,CAAC;EAEnB,oBACEI,KAAA,CAACL,IAAI;IAACU,KAAK,EAAEC,MAAM,CAACC,eAAgB;IAAAC,QAAA,gBAClCV,IAAA,CAACT,MAAM;MAACoB,OAAO,EAAEjB,aAAa,CAACkB,QAAS;MAACC,IAAI,EAAEpB,UAAU,CAACqB,KAAM;MAACC,OAAO,EAAEX,OAAQ;MAAAM,QAAA,EAC/EJ,CAAC,CAAC,sBAAsB;IAAC,CACpB,CAAC,eACTN,IAAA,CAACT,MAAM;MACLyB,WAAW,EAAExB,WAAW,CAACyB,IAAK;MAC9BN,OAAO,EAAEjB,aAAa,CAACwB,OAAQ;MAC/BL,IAAI,EAAEpB,UAAU,CAACqB,KAAM;MACvBC,OAAO,EAAEV,MAAO;
|
|
1
|
+
{"version":3,"names":["React","BaseModal","Button","ButtonColor","ButtonSize","ButtonVariant","SPACING","StyleSheet","View","useText","jsx","_jsx","jsxs","_jsxs","FooterButtons","onClose","onRedo","t","style","styles","footerContainer","children","variant","TERTIARY","size","LARGE","onPress","colorScheme","BLUE","PRIMARY","text","buttonLabel","VoiceRecordUndoModal","modal","closeModal","params","model","handleRedo","deleteCurrentRecording","notification","initializeRecording","container","modalStyle","header","content","footer","create","width","height","flexDirection","alignItems","gap","textTransform"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/modal/VoiceRecordUndoModal.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SACEC,SAAS,EACTC,MAAM,EACNC,WAAW,EACXC,UAAU,EACVC,aAAa,EACbC,OAAO,QACF,4BAA4B;AACnC,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,OAAO,QAAQ,sCAA6B;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAiBrD,MAAMC,aAAa,GAAGA,CAAC;EAAEC,OAAO;EAAEC;AAA2B,CAAC,KAAK;EACjE,MAAMC,CAAC,GAAGR,OAAO,CAAC,CAAC;EAEnB,oBACEI,KAAA,CAACL,IAAI;IAACU,KAAK,EAAEC,MAAM,CAACC,eAAgB;IAAAC,QAAA,gBAClCV,IAAA,CAACT,MAAM;MAACoB,OAAO,EAAEjB,aAAa,CAACkB,QAAS;MAACC,IAAI,EAAEpB,UAAU,CAACqB,KAAM;MAACC,OAAO,EAAEX,OAAQ;MAAAM,QAAA,EAC/EJ,CAAC,CAAC,sBAAsB;IAAC,CACpB,CAAC,eACTN,IAAA,CAACT,MAAM;MACLyB,WAAW,EAAExB,WAAW,CAACyB,IAAK;MAC9BN,OAAO,EAAEjB,aAAa,CAACwB,OAAQ;MAC/BL,IAAI,EAAEpB,UAAU,CAACqB,KAAM;MACvBC,OAAO,EAAEV,MAAO;MAChBE,KAAK,EAAE;QACLY,IAAI,EAAEX,MAAM,CAACY;MACf,CAAE;MAAAV,QAAA,EAEDJ,CAAC,CAAC,oBAAoB;IAAC,CAClB,CAAC;EAAA,CACL,CAAC;AAEX,CAAC;AAED,OAAO,MAAMe,oBAAoB,GAAGA,CAAC;EACnCC,KAAK,EAAE;IAAEC,UAAU;IAAEC;EAAO;AACH,CAAC,KAAK;EAC/B,MAAMlB,CAAC,GAAGR,OAAO,CAAC,CAAC;EACnB,MAAM;IAAE2B;EAAM,CAAC,GAAGD,MAAM;EAExB,MAAME,UAAU,GAAGA,CAAA,KAAM;IACvBD,KAAK,CAACE,sBAAsB,CAAC;MAAEC,YAAY,EAAE;IAAM,CAAC,CAAC;IACrDL,UAAU,CAAC,CAAC;IACZE,KAAK,CAACI,mBAAmB,CAAC,CAAC;EAC7B,CAAC;EAED,oBACE7B,IAAA,CAACV,SAAS;IACRiB,KAAK,EAAE;MACLuB,SAAS,EAAEtB,MAAM,CAACuB;IACpB,CAAE;IACFC,MAAM,EAAE1B,CAAC,CAAC,6BAA6B,CAAE;IACzC2B,OAAO,EAAE3B,CAAC,CAAC,uCAAuC,CAAE;IACpD4B,MAAM,eAAElC,IAAA,CAACG,aAAa;MAACC,OAAO,EAAEmB,UAAW;MAAClB,MAAM,EAAEqB;IAAW,CAAE;EAAE,CACpE,CAAC;AAEN,CAAC;AAED,MAAMlB,MAAM,GAAGZ,UAAU,CAACuC,MAAM,CAAC;EAC/BJ,UAAU,EAAE;IACVK,KAAK,EAAE,GAAG;IACVC,MAAM,EAAE;EACV,CAAC;EACD5B,eAAe,EAAE;IACf6B,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE7C,OAAO,CAAC,GAAG;EAClB,CAAC;EACDyB,WAAW,EAAE;IACXqB,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -27,13 +27,13 @@ export class RecorderModel {
|
|
|
27
27
|
}
|
|
28
28
|
});
|
|
29
29
|
stop = createEffect(() => {
|
|
30
|
-
if (!this.recorder.isRecording) return Promise.resolve();
|
|
30
|
+
if (!this.recorder.getStatus().isRecording) return Promise.resolve();
|
|
31
31
|
return this.recorder.stop();
|
|
32
32
|
});
|
|
33
33
|
stopAndGetCollectionItem() {
|
|
34
34
|
return new Promise(resolve => {
|
|
35
35
|
this.stopResolver = resolve;
|
|
36
|
-
this.recorder.isRecording && this.recorder.stop();
|
|
36
|
+
this.recorder.getStatus().isRecording && this.recorder.stop();
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
39
|
resolveStopWithCollectionItem(item) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createEffect","createEvent","restore","setAudioModeAsync","VoiceRecorderState","AUDIO_MODE_CONFIG","playsInSilentMode","allowsRecording","RecorderModel","stopResolver","reset","setAudioFileDurationMs","setVoiceRecordState","setAvailableInputs","$audioFileDurationMs","$voiceRecordState","IDLE","$availableInputs","start","recorder","prepareToRecordAsync","record","error","console","stop","isRecording","Promise","resolve","stopAndGetCollectionItem","resolveStopWithCollectionItem","item","clearStopResolver"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/model/Recorder.model.ts"],"mappings":";;AAAA,SAASA,YAAY,EAAEC,WAAW,EAAEC,OAAO,QAAQ,UAAU;AAC7D,SAAwBC,iBAAiB,QAAQ,YAAY;AAC7D,SAASC,kBAAkB,QAAQ,iBAAc;AAGjD,MAAMC,iBAAiB,GAAG;EACxBC,iBAAiB,EAAE,IAAI;EACvBC,eAAe,EAAE;AACnB,CAAU;AAIV,OAAO,MAAMC,aAAa,CAAC;EAEjBC,YAAY,GAAwB,IAAI;EAEhCC,KAAK,GAAGT,WAAW,CAAC,CAAC;EACrBU,sBAAsB,GAAGV,WAAW,CAAS,CAAC;EAC9CW,mBAAmB,GAAGX,WAAW,CAAqB,CAAC;EACvDY,kBAAkB,GAAGZ,WAAW,CAAuB,CAAC;EAExDa,oBAAoB,GAAGZ,OAAO,CAAC,IAAI,CAACS,sBAAsB,EAAE,CAAC,CAAC,CAACD,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EAChFK,iBAAiB,GAAGb,OAAO,CACzC,IAAI,CAACU,mBAAmB,EACxBR,kBAAkB,CAACY,IACrB,CAAC,CAACN,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EACHO,gBAAgB,GAAGf,OAAO,CAAC,IAAI,CAACW,kBAAkB,EAAE,EAAE,CAAC;EAEvDK,KAAK,GAAGlB,YAAY,CAAC,YAAY;IAC/C,IAAI;MACF,MAAMG,iBAAiB,CAACE,iBAAiB,CAAC;MAC1C,MAAM,IAAI,CAACc,QAAQ,CAACC,oBAAoB,CAAC,CAAC;MAC1C,IAAI,CAACD,QAAQ,CAACE,MAAM,CAAC,CAAC;IACxB,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,2BAA2B,EAAEA,KAAK,CAAC;MACjD,MAAMA,KAAK;IACb;EACF,CAAC,CAAC;EAEcE,IAAI,GAAGxB,YAAY,CAAC,MAAM;IACxC,IAAI,CAAC,IAAI,CAACmB,QAAQ,CAACM,WAAW,EAAE,OAAOC,OAAO,CAACC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"names":["createEffect","createEvent","restore","setAudioModeAsync","VoiceRecorderState","AUDIO_MODE_CONFIG","playsInSilentMode","allowsRecording","RecorderModel","stopResolver","reset","setAudioFileDurationMs","setVoiceRecordState","setAvailableInputs","$audioFileDurationMs","$voiceRecordState","IDLE","$availableInputs","start","recorder","prepareToRecordAsync","record","error","console","stop","getStatus","isRecording","Promise","resolve","stopAndGetCollectionItem","resolveStopWithCollectionItem","item","clearStopResolver"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/model/Recorder.model.ts"],"mappings":";;AAAA,SAASA,YAAY,EAAEC,WAAW,EAAEC,OAAO,QAAQ,UAAU;AAC7D,SAAwBC,iBAAiB,QAAQ,YAAY;AAC7D,SAASC,kBAAkB,QAAQ,iBAAc;AAGjD,MAAMC,iBAAiB,GAAG;EACxBC,iBAAiB,EAAE,IAAI;EACvBC,eAAe,EAAE;AACnB,CAAU;AAIV,OAAO,MAAMC,aAAa,CAAC;EAEjBC,YAAY,GAAwB,IAAI;EAEhCC,KAAK,GAAGT,WAAW,CAAC,CAAC;EACrBU,sBAAsB,GAAGV,WAAW,CAAS,CAAC;EAC9CW,mBAAmB,GAAGX,WAAW,CAAqB,CAAC;EACvDY,kBAAkB,GAAGZ,WAAW,CAAuB,CAAC;EAExDa,oBAAoB,GAAGZ,OAAO,CAAC,IAAI,CAACS,sBAAsB,EAAE,CAAC,CAAC,CAACD,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EAChFK,iBAAiB,GAAGb,OAAO,CACzC,IAAI,CAACU,mBAAmB,EACxBR,kBAAkB,CAACY,IACrB,CAAC,CAACN,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EACHO,gBAAgB,GAAGf,OAAO,CAAC,IAAI,CAACW,kBAAkB,EAAE,EAAE,CAAC;EAEvDK,KAAK,GAAGlB,YAAY,CAAC,YAAY;IAC/C,IAAI;MACF,MAAMG,iBAAiB,CAACE,iBAAiB,CAAC;MAC1C,MAAM,IAAI,CAACc,QAAQ,CAACC,oBAAoB,CAAC,CAAC;MAC1C,IAAI,CAACD,QAAQ,CAACE,MAAM,CAAC,CAAC;IACxB,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,2BAA2B,EAAEA,KAAK,CAAC;MACjD,MAAMA,KAAK;IACb;EACF,CAAC,CAAC;EAEcE,IAAI,GAAGxB,YAAY,CAAC,MAAM;IACxC,IAAI,CAAC,IAAI,CAACmB,QAAQ,CAACM,SAAS,CAAC,CAAC,CAACC,WAAW,EAAE,OAAOC,OAAO,CAACC,OAAO,CAAC,CAAC;IACpE,OAAO,IAAI,CAACT,QAAQ,CAACK,IAAI,CAAC,CAAC;EAC7B,CAAC,CAAC;EAEKK,wBAAwBA,CAAA,EAAuC;IACpE,OAAO,IAAIF,OAAO,CAAEC,OAAO,IAAK;MAC9B,IAAI,CAACnB,YAAY,GAAGmB,OAAO;MAC3B,IAAI,CAACT,QAAQ,CAACM,SAAS,CAAC,CAAC,CAACC,WAAW,IAAI,IAAI,CAACP,QAAQ,CAACK,IAAI,CAAC,CAAC;IAC/D,CAAC,CAAC;EACJ;EAEOM,6BAA6BA,CAACC,IAA+B,EAAQ;IAC1E,IAAI,IAAI,CAACtB,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACsB,IAAI,CAAC;MACvB,IAAI,CAACtB,YAAY,GAAG,IAAI;IAC1B;EACF;EAEOuB,iBAAiBA,CAAA,EAAS;IAC/B,IAAI,CAACvB,YAAY,GAAG,IAAI;EAC1B;AACF","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { attach, createEffect, createEvent,
|
|
3
|
+
import { attach, createEffect, createEvent, restore, sample } from 'effector';
|
|
4
4
|
import { ensureRecordingPermissions, generateAudioFormData, getAudioDurationMs, getAvailableInputs, uploadAudioFileRequestGenerator } from "../helpers.js";
|
|
5
5
|
import { t } from "../../../shared/translation/index.js";
|
|
6
6
|
import { RecorderModel } from "./Recorder.model.js";
|
|
@@ -26,6 +26,7 @@ export class VoiceRecordModel {
|
|
|
26
26
|
currentKey,
|
|
27
27
|
notification
|
|
28
28
|
}) => {
|
|
29
|
+
console.log('Deleting recording with key:', currentKey);
|
|
29
30
|
const recordingItem = this.collection.get(currentKey);
|
|
30
31
|
this.abortUploadIfInProgress(recordingItem);
|
|
31
32
|
this.resetRecordingState(currentKey);
|
|
@@ -35,6 +36,7 @@ export class VoiceRecordModel {
|
|
|
35
36
|
})
|
|
36
37
|
});
|
|
37
38
|
initializeRecording = createEffect(async () => {
|
|
39
|
+
console.log('Initializing new recording');
|
|
38
40
|
this.deleteCurrentRecording({
|
|
39
41
|
notification: false
|
|
40
42
|
});
|
|
@@ -83,7 +85,6 @@ export class VoiceRecordModel {
|
|
|
83
85
|
this.collection = new VoiceRecordsCollection();
|
|
84
86
|
this.setupUploadHandler();
|
|
85
87
|
this.setupCurrentRecordSync();
|
|
86
|
-
this.setupUriSync();
|
|
87
88
|
}
|
|
88
89
|
abortUploadIfInProgress(recordingItem) {
|
|
89
90
|
if (!recordingItem?.id && recordingItem?.controller) {
|
|
@@ -149,13 +150,6 @@ export class VoiceRecordModel {
|
|
|
149
150
|
}))
|
|
150
151
|
});
|
|
151
152
|
}
|
|
152
|
-
setupUriSync() {
|
|
153
|
-
sample({
|
|
154
|
-
source: this.$currentRecord,
|
|
155
|
-
fn: record => record?.uri || '',
|
|
156
|
-
target: createStore('').reset(this.reset)
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
153
|
setupCurrentRecordSync() {
|
|
160
154
|
sample({
|
|
161
155
|
source: this.$currentKey,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["attach","createEffect","createEvent","
|
|
1
|
+
{"version":3,"names":["attach","createEffect","createEvent","restore","sample","ensureRecordingPermissions","generateAudioFormData","getAudioDurationMs","getAvailableInputs","uploadAudioFileRequestGenerator","t","RecorderModel","VoiceRecordsCollection","VoiceRecordModel","shouldDiscardRecording","setCurrentKey","setCurrentRecord","reset","setIsDisabled","startAudioUpload","$currentKey","$currentRecord","$isDisabled","deleteCurrentRecording","source","mapParams","props","currentKey","notification","effect","console","log","recordingItem","collection","get","abortUploadIfInProgress","resetRecordingState","info","initializeRecording","hasPermissions","error","inputs","recorderModel","recorder","setAvailableInputs","length","start","stopAndDiscard","stop","clearStopResolver","recordingStatusUpdate","status","isFinished","url","constructor","api","events","setupUploadHandler","setupCurrentRecordSync","id","controller","abort","delete","handleAudioUpload","uri","durationMs","formData","audioFileUri","uploadAudio","audioUploadPromise","then","data","update","catch","name","collectionItem","add","resolveStopWithCollectionItem","clock","filter","fn","target","setAudioFileDurationMs"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/model/VoiceRecord.model.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Delete recording?",
|
|
45
45
|
"youWontBeAbleToRecover": "You won't be able to recover this file once it's gone.",
|
|
46
|
-
"recordingDeleted": "Recording successfully deleted",
|
|
46
|
+
"recordingDeleted": "Recording successfully deleted.",
|
|
47
47
|
"delete": "Delete",
|
|
48
48
|
"cancel": "Cancel",
|
|
49
|
-
"noMicrophoneAccess": "No microphone access",
|
|
50
|
-
"noMicrophoneFound": "No microphone found",
|
|
49
|
+
"noMicrophoneAccess": "No microphone access.",
|
|
50
|
+
"noMicrophoneFound": "No microphone found.",
|
|
51
51
|
"uploadFailed": "Upload failed. Please try again.",
|
|
52
52
|
"redoRecording": "Redo recording?",
|
|
53
53
|
"redo": "Redo",
|
|
@@ -49,8 +49,8 @@
|
|
|
49
49
|
"noMicrophoneAccess": "Kein Mikrofon-Zugriff.",
|
|
50
50
|
"noMicrophoneFound": "Kein Mikrofon gefunden.",
|
|
51
51
|
"uploadFailed": "Hochladen fehlgeschlagen. Bitte versuche es erneut.",
|
|
52
|
-
"redoRecording": "
|
|
53
|
-
"redo": "
|
|
54
|
-
"thisWillRemoveRecording": "
|
|
52
|
+
"redoRecording": "Aufnahme erneut aufnehmen?",
|
|
53
|
+
"redo": "Wiederholen",
|
|
54
|
+
"thisWillRemoveRecording": "Dadurch wird die Aufnahme entfernt."
|
|
55
55
|
}
|
|
56
56
|
}
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Delete recording?",
|
|
45
45
|
"youWontBeAbleToRecover": "You won't be able to recover this file once it's gone.",
|
|
46
|
-
"recordingDeleted": "Recording successfully deleted",
|
|
46
|
+
"recordingDeleted": "Recording successfully deleted.",
|
|
47
47
|
"delete": "Delete",
|
|
48
48
|
"cancel": "Cancel",
|
|
49
|
-
"noMicrophoneAccess": "No microphone access",
|
|
50
|
-
"noMicrophoneFound": "No microphone found",
|
|
49
|
+
"noMicrophoneAccess": "No microphone access.",
|
|
50
|
+
"noMicrophoneFound": "No microphone found.",
|
|
51
51
|
"uploadFailed": "Upload failed. Please try again.",
|
|
52
52
|
"redoRecording": "Redo recording?",
|
|
53
53
|
"redo": "Redo",
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Delete recording?",
|
|
45
45
|
"youWontBeAbleToRecover": "You won't be able to recover this file once it's gone.",
|
|
46
|
-
"recordingDeleted": "Recording successfully deleted",
|
|
46
|
+
"recordingDeleted": "Recording successfully deleted.",
|
|
47
47
|
"delete": "Delete",
|
|
48
48
|
"cancel": "Cancel",
|
|
49
|
-
"noMicrophoneAccess": "No microphone access",
|
|
50
|
-
"noMicrophoneFound": "No microphone found",
|
|
49
|
+
"noMicrophoneAccess": "No microphone access.",
|
|
50
|
+
"noMicrophoneFound": "No microphone found.",
|
|
51
51
|
"uploadFailed": "Upload failed. Please try again.",
|
|
52
52
|
"redoRecording": "Redo recording?",
|
|
53
53
|
"redo": "Redo",
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Delete recording?",
|
|
45
45
|
"youWontBeAbleToRecover": "You won't be able to recover this file once it's gone.",
|
|
46
|
-
"recordingDeleted": "Recording successfully deleted",
|
|
46
|
+
"recordingDeleted": "Recording successfully deleted.",
|
|
47
47
|
"delete": "Delete",
|
|
48
48
|
"cancel": "Cancel",
|
|
49
|
-
"noMicrophoneAccess": "No microphone access",
|
|
50
|
-
"noMicrophoneFound": "No microphone found",
|
|
49
|
+
"noMicrophoneAccess": "No microphone access.",
|
|
50
|
+
"noMicrophoneFound": "No microphone found.",
|
|
51
51
|
"uploadFailed": "Upload failed. Please try again.",
|
|
52
52
|
"redoRecording": "Redo recording?",
|
|
53
53
|
"redo": "Redo",
|
|
@@ -43,14 +43,14 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Radera inspelningen?",
|
|
45
45
|
"youWontBeAbleToRecover": "Du kommer inte att kunna återställa filen när den väl är borta.",
|
|
46
|
-
"recordingDeleted": "
|
|
46
|
+
"recordingDeleted": "Inspelningen raderad.",
|
|
47
47
|
"delete": "Radera",
|
|
48
48
|
"cancel": "Avbryt",
|
|
49
|
-
"noMicrophoneAccess": "Ingen mikrofonåtkomst",
|
|
50
|
-
"noMicrophoneFound": "Ingen mikrofon hittades",
|
|
49
|
+
"noMicrophoneAccess": "Ingen mikrofonåtkomst.",
|
|
50
|
+
"noMicrophoneFound": "Ingen mikrofon hittades.",
|
|
51
51
|
"uploadFailed": "Uppladdning misslyckades. Försök igen.",
|
|
52
|
-
"redoRecording": "
|
|
53
|
-
"redo": "
|
|
54
|
-
"thisWillRemoveRecording": "
|
|
52
|
+
"redoRecording": "Spela in igen?",
|
|
53
|
+
"redo": "Gör om",
|
|
54
|
+
"thisWillRemoveRecording": "Detta tar bort inspelningen."
|
|
55
55
|
}
|
|
56
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceRecordDeleteModal.d.ts","sourceRoot":"","sources":["../../../../../../src/features/voiceRecord/modal/VoiceRecordDeleteModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAWxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAI7D,KAAK,oCAAoC,GAAG;IAC1C,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,MAAM,EAAE;YACN,KAAK,EAAE,gBAAgB,CAAA;SACxB,CAAA;KACF,CAAA;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"VoiceRecordDeleteModal.d.ts","sourceRoot":"","sources":["../../../../../../src/features/voiceRecord/modal/VoiceRecordDeleteModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAWxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAI7D,KAAK,oCAAoC,GAAG;IAC1C,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,MAAM,EAAE;YACN,KAAK,EAAE,gBAAgB,CAAA;SACxB,CAAA;KACF,CAAA;CACF,CAAA;AA8BD,eAAO,MAAM,sBAAsB,uCAEhC,oCAAoC,sBAiDtC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceRecordUndoModal.d.ts","sourceRoot":"","sources":["../../../../../../src/features/voiceRecord/modal/VoiceRecordUndoModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAWzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAE7D,KAAK,yBAAyB,GAAG;IAC/B,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,MAAM,EAAE;YACN,KAAK,EAAE,gBAAgB,CAAA;SACxB,CAAA;KACF,CAAA;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"VoiceRecordUndoModal.d.ts","sourceRoot":"","sources":["../../../../../../src/features/voiceRecord/modal/VoiceRecordUndoModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAWzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAE7D,KAAK,yBAAyB,GAAG;IAC/B,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,MAAM,EAAE;YACN,KAAK,EAAE,gBAAgB,CAAA;SACxB,CAAA;KACF,CAAA;CACF,CAAA;AA8BD,eAAO,MAAM,oBAAoB,uCAE9B,yBAAyB,sBAoB3B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceRecord.model.d.ts","sourceRoot":"","sources":["../../../../../../src/features/voiceRecord/model/VoiceRecord.model.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,4BAA4B,EAA6B,MAAM,UAAU,CAAA;AAE5F,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"VoiceRecord.model.d.ts","sourceRoot":"","sources":["../../../../../../src/features/voiceRecord/model/VoiceRecord.model.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,4BAA4B,EAA6B,MAAM,UAAU,CAAA;AAE5F,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAEhE,KAAK,sBAAsB,GAAG;IAC5B,GAAG,EAAE,QAAQ,CAAA;IACb,YAAY,EAAE,4BAA4B,CAAA;IAC1C,MAAM,EAAE,iBAAiB,CAAA;CAC1B,CAAA;AAOD,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;AAMD,qBAAa,gBAAgB;IAC3B,SAAgB,aAAa,EAAE,aAAa,CAAA;IAC5C,SAAgB,UAAU,EAAE,sBAAsB,CAAA;IAClD,SAAgB,GAAG,EAAE,QAAQ,CAAA;IAC7B,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,aAAa,4CAAyB;IACtD,SAAgB,gBAAgB,2CAAwB;IAExD,SAAgB,WAAW,2CAAkC;IAC7D,SAAgB,cAAc,wCAAyD;IAEvF,SAAgB,WAAW,4CAAqC;IAEhE,SAAgB,sBAAsB,6EAkBpC;IAEF,SAAgB,mBAAmB,+CAmBjC;IAEF,SAAgB,cAAc,+CAK5B;IAEF,SAAgB,qBAAqB,WAAY,GAAG,UAanD;gBAEW,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,sBAAsB;IAWjE,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,mBAAmB;YAMb,iBAAiB;IAgC/B,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,sBAAsB;CAkB/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceRecordDeleteModal.d.ts","sourceRoot":"","sources":["../../../../../../src/features/voiceRecord/modal/VoiceRecordDeleteModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAWxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAI7D,KAAK,oCAAoC,GAAG;IAC1C,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,MAAM,EAAE;YACN,KAAK,EAAE,gBAAgB,CAAA;SACxB,CAAA;KACF,CAAA;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"VoiceRecordDeleteModal.d.ts","sourceRoot":"","sources":["../../../../../../src/features/voiceRecord/modal/VoiceRecordDeleteModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAWxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAI7D,KAAK,oCAAoC,GAAG;IAC1C,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,MAAM,EAAE;YACN,KAAK,EAAE,gBAAgB,CAAA;SACxB,CAAA;KACF,CAAA;CACF,CAAA;AA8BD,eAAO,MAAM,sBAAsB,uCAEhC,oCAAoC,sBAiDtC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceRecordUndoModal.d.ts","sourceRoot":"","sources":["../../../../../../src/features/voiceRecord/modal/VoiceRecordUndoModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAWzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAE7D,KAAK,yBAAyB,GAAG;IAC/B,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,MAAM,EAAE;YACN,KAAK,EAAE,gBAAgB,CAAA;SACxB,CAAA;KACF,CAAA;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"VoiceRecordUndoModal.d.ts","sourceRoot":"","sources":["../../../../../../src/features/voiceRecord/modal/VoiceRecordUndoModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAWzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAE7D,KAAK,yBAAyB,GAAG;IAC/B,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,MAAM,EAAE;YACN,KAAK,EAAE,gBAAgB,CAAA;SACxB,CAAA;KACF,CAAA;CACF,CAAA;AA8BD,eAAO,MAAM,oBAAoB,uCAE9B,yBAAyB,sBAoB3B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceRecord.model.d.ts","sourceRoot":"","sources":["../../../../../../src/features/voiceRecord/model/VoiceRecord.model.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,4BAA4B,EAA6B,MAAM,UAAU,CAAA;AAE5F,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"VoiceRecord.model.d.ts","sourceRoot":"","sources":["../../../../../../src/features/voiceRecord/model/VoiceRecord.model.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,4BAA4B,EAA6B,MAAM,UAAU,CAAA;AAE5F,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAEhE,KAAK,sBAAsB,GAAG;IAC5B,GAAG,EAAE,QAAQ,CAAA;IACb,YAAY,EAAE,4BAA4B,CAAA;IAC1C,MAAM,EAAE,iBAAiB,CAAA;CAC1B,CAAA;AAOD,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;AAMD,qBAAa,gBAAgB;IAC3B,SAAgB,aAAa,EAAE,aAAa,CAAA;IAC5C,SAAgB,UAAU,EAAE,sBAAsB,CAAA;IAClD,SAAgB,GAAG,EAAE,QAAQ,CAAA;IAC7B,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,aAAa,4CAAyB;IACtD,SAAgB,gBAAgB,2CAAwB;IAExD,SAAgB,WAAW,2CAAkC;IAC7D,SAAgB,cAAc,wCAAyD;IAEvF,SAAgB,WAAW,4CAAqC;IAEhE,SAAgB,sBAAsB,6EAkBpC;IAEF,SAAgB,mBAAmB,+CAmBjC;IAEF,SAAgB,cAAc,+CAK5B;IAEF,SAAgB,qBAAqB,WAAY,GAAG,UAanD;gBAEW,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,sBAAsB;IAWjE,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,mBAAmB;YAMb,iBAAiB;IAgC/B,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,sBAAsB;CAkB/B"}
|
package/package.json
CHANGED
|
@@ -24,7 +24,7 @@ export const VoiceRecordTimer = ({
|
|
|
24
24
|
|
|
25
25
|
return (
|
|
26
26
|
<View style={[styles.container, style]}>
|
|
27
|
-
<Typography style={styles.text}>
|
|
27
|
+
<Typography variant="h9" style={styles.text}>
|
|
28
28
|
{displayDurationMs ? formatDuration(displayDurationMs) : '0:00'}
|
|
29
29
|
</Typography>
|
|
30
30
|
</View>
|
|
@@ -42,6 +42,7 @@ const styles = StyleSheet.create({
|
|
|
42
42
|
borderWidth: 0.5,
|
|
43
43
|
borderColor: COLORS.NEUTRAL_4,
|
|
44
44
|
borderRadius: 18,
|
|
45
|
+
minWidth: 45,
|
|
45
46
|
},
|
|
46
47
|
text: {
|
|
47
48
|
color: COLORS.NEUTRAL_10,
|
|
@@ -40,6 +40,9 @@ const FooterButtons = ({ onClose, onDelete }: FooterButtonsProps) => {
|
|
|
40
40
|
variant={ButtonVariant.PRIMARY}
|
|
41
41
|
size={ButtonSize.LARGE}
|
|
42
42
|
onPress={onDelete}
|
|
43
|
+
style={{
|
|
44
|
+
text: styles.buttonLabel,
|
|
45
|
+
}}
|
|
43
46
|
>
|
|
44
47
|
{t('voiceRecorder.delete')}
|
|
45
48
|
</Button>
|
|
@@ -55,12 +58,20 @@ export const VoiceRecordDeleteModal = ({
|
|
|
55
58
|
|
|
56
59
|
const recorderState = useUnit(model.recorderModel.$voiceRecordState)
|
|
57
60
|
|
|
58
|
-
const handleDelete =
|
|
59
|
-
if (recorderState === VoiceRecorderState.
|
|
60
|
-
|
|
61
|
+
const handleDelete = () => {
|
|
62
|
+
if (recorderState === VoiceRecorderState.PAUSED) {
|
|
63
|
+
// if recording is paused, we need to start it again to ensure the recorder is in a consistent state before deletion
|
|
64
|
+
// without .record() browser still will use microphone
|
|
65
|
+
model.recorderModel.recorder.record()
|
|
66
|
+
setTimeout(() => {
|
|
67
|
+
model.stopAndDiscard()
|
|
68
|
+
model.deleteCurrentRecording()
|
|
69
|
+
}, 50)
|
|
70
|
+
closeModal()
|
|
71
|
+
return
|
|
61
72
|
}
|
|
62
|
-
await model.deleteCurrentRecording()
|
|
63
73
|
|
|
74
|
+
model.deleteCurrentRecording()
|
|
64
75
|
closeModal()
|
|
65
76
|
}
|
|
66
77
|
|
|
@@ -102,4 +113,7 @@ const styles = StyleSheet.create({
|
|
|
102
113
|
alignItems: 'center',
|
|
103
114
|
gap: SPACING[200],
|
|
104
115
|
},
|
|
116
|
+
buttonLabel: {
|
|
117
|
+
textTransform: 'uppercase',
|
|
118
|
+
},
|
|
105
119
|
})
|
|
@@ -38,6 +38,9 @@ const FooterButtons = ({ onClose, onRedo }: FooterButtonsProps) => {
|
|
|
38
38
|
variant={ButtonVariant.PRIMARY}
|
|
39
39
|
size={ButtonSize.LARGE}
|
|
40
40
|
onPress={onRedo}
|
|
41
|
+
style={{
|
|
42
|
+
text: styles.buttonLabel,
|
|
43
|
+
}}
|
|
41
44
|
>
|
|
42
45
|
{t('voiceRecorder.redo')}
|
|
43
46
|
</Button>
|
|
@@ -79,4 +82,7 @@ const styles = StyleSheet.create({
|
|
|
79
82
|
alignItems: 'center',
|
|
80
83
|
gap: SPACING[200],
|
|
81
84
|
},
|
|
85
|
+
buttonLabel: {
|
|
86
|
+
textTransform: 'uppercase',
|
|
87
|
+
},
|
|
82
88
|
})
|
|
@@ -38,14 +38,14 @@ export class RecorderModel {
|
|
|
38
38
|
})
|
|
39
39
|
|
|
40
40
|
public readonly stop = createEffect(() => {
|
|
41
|
-
if (!this.recorder.isRecording) return Promise.resolve()
|
|
41
|
+
if (!this.recorder.getStatus().isRecording) return Promise.resolve()
|
|
42
42
|
return this.recorder.stop()
|
|
43
43
|
})
|
|
44
44
|
|
|
45
45
|
public stopAndGetCollectionItem(): Promise<VoiceRecordCollectionItem> {
|
|
46
46
|
return new Promise((resolve) => {
|
|
47
47
|
this.stopResolver = resolve
|
|
48
|
-
this.recorder.isRecording && this.recorder.stop()
|
|
48
|
+
this.recorder.getStatus().isRecording && this.recorder.stop()
|
|
49
49
|
})
|
|
50
50
|
}
|
|
51
51
|
|
|
@@ -10,7 +10,6 @@ import { AudioApi, VoiceRecordNotificationTypes, VoiceRecordCollectionItem } fro
|
|
|
10
10
|
import { t } from '../../../shared/translation'
|
|
11
11
|
import { RecorderModel } from './Recorder.model'
|
|
12
12
|
import { VoiceRecordsCollection } from './VoiceRecordCollection'
|
|
13
|
-
import { VoiceRecorderState } from '../constants'
|
|
14
13
|
|
|
15
14
|
type VoiceRecordModelParams = {
|
|
16
15
|
api: AudioApi
|
|
@@ -63,6 +62,7 @@ export class VoiceRecordModel {
|
|
|
63
62
|
currentKey,
|
|
64
63
|
}),
|
|
65
64
|
effect: createEffect(({ currentKey, notification }: DeleteCurrentRecordingValues) => {
|
|
65
|
+
console.log('Deleting recording with key:', currentKey)
|
|
66
66
|
const recordingItem = this.collection.get(currentKey)
|
|
67
67
|
|
|
68
68
|
this.abortUploadIfInProgress(recordingItem)
|
|
@@ -75,6 +75,7 @@ export class VoiceRecordModel {
|
|
|
75
75
|
})
|
|
76
76
|
|
|
77
77
|
public readonly initializeRecording = createEffect(async () => {
|
|
78
|
+
console.log('Initializing new recording')
|
|
78
79
|
this.deleteCurrentRecording({ notification: false })
|
|
79
80
|
|
|
80
81
|
const hasPermissions = await ensureRecordingPermissions()
|
|
@@ -125,7 +126,6 @@ export class VoiceRecordModel {
|
|
|
125
126
|
|
|
126
127
|
this.setupUploadHandler()
|
|
127
128
|
this.setupCurrentRecordSync()
|
|
128
|
-
this.setupUriSync()
|
|
129
129
|
}
|
|
130
130
|
|
|
131
131
|
private abortUploadIfInProgress(recordingItem: ReturnType<VoiceRecordsCollection['get']>) {
|
|
@@ -184,14 +184,6 @@ export class VoiceRecordModel {
|
|
|
184
184
|
})
|
|
185
185
|
}
|
|
186
186
|
|
|
187
|
-
private setupUriSync() {
|
|
188
|
-
sample({
|
|
189
|
-
source: this.$currentRecord,
|
|
190
|
-
fn: (record) => record?.uri || '',
|
|
191
|
-
target: createStore<string>('').reset(this.reset),
|
|
192
|
-
})
|
|
193
|
-
}
|
|
194
|
-
|
|
195
187
|
private setupCurrentRecordSync() {
|
|
196
188
|
sample({
|
|
197
189
|
source: this.$currentKey,
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Delete recording?",
|
|
45
45
|
"youWontBeAbleToRecover": "You won't be able to recover this file once it's gone.",
|
|
46
|
-
"recordingDeleted": "Recording successfully deleted",
|
|
46
|
+
"recordingDeleted": "Recording successfully deleted.",
|
|
47
47
|
"delete": "Delete",
|
|
48
48
|
"cancel": "Cancel",
|
|
49
|
-
"noMicrophoneAccess": "No microphone access",
|
|
50
|
-
"noMicrophoneFound": "No microphone found",
|
|
49
|
+
"noMicrophoneAccess": "No microphone access.",
|
|
50
|
+
"noMicrophoneFound": "No microphone found.",
|
|
51
51
|
"uploadFailed": "Upload failed. Please try again.",
|
|
52
52
|
"redoRecording": "Redo recording?",
|
|
53
53
|
"redo": "Redo",
|
|
@@ -49,8 +49,8 @@
|
|
|
49
49
|
"noMicrophoneAccess": "Kein Mikrofon-Zugriff.",
|
|
50
50
|
"noMicrophoneFound": "Kein Mikrofon gefunden.",
|
|
51
51
|
"uploadFailed": "Hochladen fehlgeschlagen. Bitte versuche es erneut.",
|
|
52
|
-
"redoRecording": "
|
|
53
|
-
"redo": "
|
|
54
|
-
"thisWillRemoveRecording": "
|
|
52
|
+
"redoRecording": "Aufnahme erneut aufnehmen?",
|
|
53
|
+
"redo": "Wiederholen",
|
|
54
|
+
"thisWillRemoveRecording": "Dadurch wird die Aufnahme entfernt."
|
|
55
55
|
}
|
|
56
56
|
}
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Delete recording?",
|
|
45
45
|
"youWontBeAbleToRecover": "You won't be able to recover this file once it's gone.",
|
|
46
|
-
"recordingDeleted": "Recording successfully deleted",
|
|
46
|
+
"recordingDeleted": "Recording successfully deleted.",
|
|
47
47
|
"delete": "Delete",
|
|
48
48
|
"cancel": "Cancel",
|
|
49
|
-
"noMicrophoneAccess": "No microphone access",
|
|
50
|
-
"noMicrophoneFound": "No microphone found",
|
|
49
|
+
"noMicrophoneAccess": "No microphone access.",
|
|
50
|
+
"noMicrophoneFound": "No microphone found.",
|
|
51
51
|
"uploadFailed": "Upload failed. Please try again.",
|
|
52
52
|
"redoRecording": "Redo recording?",
|
|
53
53
|
"redo": "Redo",
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Delete recording?",
|
|
45
45
|
"youWontBeAbleToRecover": "You won't be able to recover this file once it's gone.",
|
|
46
|
-
"recordingDeleted": "Recording successfully deleted",
|
|
46
|
+
"recordingDeleted": "Recording successfully deleted.",
|
|
47
47
|
"delete": "Delete",
|
|
48
48
|
"cancel": "Cancel",
|
|
49
|
-
"noMicrophoneAccess": "No microphone access",
|
|
50
|
-
"noMicrophoneFound": "No microphone found",
|
|
49
|
+
"noMicrophoneAccess": "No microphone access.",
|
|
50
|
+
"noMicrophoneFound": "No microphone found.",
|
|
51
51
|
"uploadFailed": "Upload failed. Please try again.",
|
|
52
52
|
"redoRecording": "Redo recording?",
|
|
53
53
|
"redo": "Redo",
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Delete recording?",
|
|
45
45
|
"youWontBeAbleToRecover": "You won't be able to recover this file once it's gone.",
|
|
46
|
-
"recordingDeleted": "Recording successfully deleted",
|
|
46
|
+
"recordingDeleted": "Recording successfully deleted.",
|
|
47
47
|
"delete": "Delete",
|
|
48
48
|
"cancel": "Cancel",
|
|
49
|
-
"noMicrophoneAccess": "No microphone access",
|
|
50
|
-
"noMicrophoneFound": "No microphone found",
|
|
49
|
+
"noMicrophoneAccess": "No microphone access.",
|
|
50
|
+
"noMicrophoneFound": "No microphone found.",
|
|
51
51
|
"uploadFailed": "Upload failed. Please try again.",
|
|
52
52
|
"redoRecording": "Redo recording?",
|
|
53
53
|
"redo": "Redo",
|
|
@@ -43,14 +43,14 @@
|
|
|
43
43
|
"voiceRecorder": {
|
|
44
44
|
"deleteRecording": "Radera inspelningen?",
|
|
45
45
|
"youWontBeAbleToRecover": "Du kommer inte att kunna återställa filen när den väl är borta.",
|
|
46
|
-
"recordingDeleted": "
|
|
46
|
+
"recordingDeleted": "Inspelningen raderad.",
|
|
47
47
|
"delete": "Radera",
|
|
48
48
|
"cancel": "Avbryt",
|
|
49
|
-
"noMicrophoneAccess": "Ingen mikrofonåtkomst",
|
|
50
|
-
"noMicrophoneFound": "Ingen mikrofon hittades",
|
|
49
|
+
"noMicrophoneAccess": "Ingen mikrofonåtkomst.",
|
|
50
|
+
"noMicrophoneFound": "Ingen mikrofon hittades.",
|
|
51
51
|
"uploadFailed": "Uppladdning misslyckades. Försök igen.",
|
|
52
|
-
"redoRecording": "
|
|
53
|
-
"redo": "
|
|
54
|
-
"thisWillRemoveRecording": "
|
|
52
|
+
"redoRecording": "Spela in igen?",
|
|
53
|
+
"redo": "Gör om",
|
|
54
|
+
"thisWillRemoveRecording": "Detta tar bort inspelningen."
|
|
55
55
|
}
|
|
56
56
|
}
|