@magmamath/students-features 0.9.107-rc.46 → 0.9.107-rc.47
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/VoiceRecord.js +4 -11
- package/dist/commonjs/features/voiceRecord/components/VoiceRecord.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordButton.js +12 -28
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordButton.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordTimer.js +2 -3
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordTimer.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/constants.js +1 -1
- package/dist/commonjs/features/voiceRecord/hooks/useVoiceRecorder.js +2 -3
- package/dist/commonjs/features/voiceRecord/hooks/useVoiceRecorder.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/modal/ModalFooterButtons.js +53 -0
- package/dist/commonjs/features/voiceRecord/modal/ModalFooterButtons.js.map +1 -0
- package/dist/commonjs/features/voiceRecord/modal/VoiceRecordDeleteModal.js +7 -39
- package/dist/commonjs/features/voiceRecord/modal/VoiceRecordDeleteModal.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/modal/VoiceRecordUndoModal.js +5 -38
- package/dist/commonjs/features/voiceRecord/modal/VoiceRecordUndoModal.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/model/Recorder.model.js +4 -4
- package/dist/commonjs/features/voiceRecord/model/Recorder.model.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/model/Uploader.model.js +44 -0
- package/dist/commonjs/features/voiceRecord/model/Uploader.model.js.map +1 -0
- package/dist/commonjs/features/voiceRecord/model/VoiceRecord.model.js +59 -41
- package/dist/commonjs/features/voiceRecord/model/VoiceRecord.model.js.map +1 -1
- package/dist/module/features/voiceRecord/components/VoiceRecord.js +3 -9
- package/dist/module/features/voiceRecord/components/VoiceRecord.js.map +1 -1
- package/dist/module/features/voiceRecord/components/VoiceRecordButton.js +12 -28
- package/dist/module/features/voiceRecord/components/VoiceRecordButton.js.map +1 -1
- package/dist/module/features/voiceRecord/components/VoiceRecordTimer.js +1 -2
- package/dist/module/features/voiceRecord/components/VoiceRecordTimer.js.map +1 -1
- package/dist/module/features/voiceRecord/constants.js +1 -1
- package/dist/module/features/voiceRecord/hooks/useVoiceRecorder.js +2 -3
- package/dist/module/features/voiceRecord/hooks/useVoiceRecorder.js.map +1 -1
- package/dist/module/features/voiceRecord/modal/ModalFooterButtons.js +47 -0
- package/dist/module/features/voiceRecord/modal/ModalFooterButtons.js.map +1 -0
- package/dist/module/features/voiceRecord/modal/VoiceRecordDeleteModal.js +10 -42
- package/dist/module/features/voiceRecord/modal/VoiceRecordDeleteModal.js.map +1 -1
- package/dist/module/features/voiceRecord/modal/VoiceRecordUndoModal.js +8 -41
- package/dist/module/features/voiceRecord/modal/VoiceRecordUndoModal.js.map +1 -1
- package/dist/module/features/voiceRecord/model/Recorder.model.js +4 -4
- package/dist/module/features/voiceRecord/model/Recorder.model.js.map +1 -1
- package/dist/module/features/voiceRecord/model/Uploader.model.js +39 -0
- package/dist/module/features/voiceRecord/model/Uploader.model.js.map +1 -0
- package/dist/module/features/voiceRecord/model/VoiceRecord.model.js +60 -42
- package/dist/module/features/voiceRecord/model/VoiceRecord.model.js.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecord.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecordButton.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecordTimer.d.ts +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecordTimer.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/hooks/useVoiceRecorder.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/modal/ModalFooterButtons.d.ts +12 -0
- package/dist/typescript/commonjs/features/voiceRecord/modal/ModalFooterButtons.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voiceRecord/modal/VoiceRecordDeleteModal.d.ts +2 -4
- package/dist/typescript/commonjs/features/voiceRecord/modal/VoiceRecordDeleteModal.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/modal/VoiceRecordUndoModal.d.ts +2 -4
- package/dist/typescript/commonjs/features/voiceRecord/modal/VoiceRecordUndoModal.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/model/Recorder.model.d.ts +4 -5
- package/dist/typescript/commonjs/features/voiceRecord/model/Recorder.model.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/model/Uploader.model.d.ts +18 -0
- package/dist/typescript/commonjs/features/voiceRecord/model/Uploader.model.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voiceRecord/model/VoiceRecord.model.d.ts +7 -3
- package/dist/typescript/commonjs/features/voiceRecord/model/VoiceRecord.model.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/types.d.ts +1 -4
- package/dist/typescript/commonjs/features/voiceRecord/types.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecord.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecordButton.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecordTimer.d.ts +1 -1
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecordTimer.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/hooks/useVoiceRecorder.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/modal/ModalFooterButtons.d.ts +12 -0
- package/dist/typescript/module/features/voiceRecord/modal/ModalFooterButtons.d.ts.map +1 -0
- package/dist/typescript/module/features/voiceRecord/modal/VoiceRecordDeleteModal.d.ts +2 -4
- package/dist/typescript/module/features/voiceRecord/modal/VoiceRecordDeleteModal.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/modal/VoiceRecordUndoModal.d.ts +2 -4
- package/dist/typescript/module/features/voiceRecord/modal/VoiceRecordUndoModal.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/model/Recorder.model.d.ts +4 -5
- package/dist/typescript/module/features/voiceRecord/model/Recorder.model.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/model/Uploader.model.d.ts +18 -0
- package/dist/typescript/module/features/voiceRecord/model/Uploader.model.d.ts.map +1 -0
- package/dist/typescript/module/features/voiceRecord/model/VoiceRecord.model.d.ts +7 -3
- package/dist/typescript/module/features/voiceRecord/model/VoiceRecord.model.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/types.d.ts +1 -4
- package/dist/typescript/module/features/voiceRecord/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/features/voiceRecord/components/VoiceRecord.tsx +3 -10
- package/src/features/voiceRecord/components/VoiceRecordButton.tsx +13 -37
- package/src/features/voiceRecord/components/VoiceRecordTimer.tsx +1 -6
- package/src/features/voiceRecord/constants.ts +1 -1
- package/src/features/voiceRecord/hooks/useVoiceRecorder.ts +2 -3
- package/src/features/voiceRecord/modal/ModalFooterButtons.tsx +54 -0
- package/src/features/voiceRecord/modal/VoiceRecordDeleteModal.tsx +14 -57
- package/src/features/voiceRecord/modal/VoiceRecordUndoModal.tsx +12 -56
- package/src/features/voiceRecord/model/Recorder.model.ts +8 -8
- package/src/features/voiceRecord/model/Uploader.model.ts +48 -0
- package/src/features/voiceRecord/model/VoiceRecord.model.ts +89 -69
- package/src/features/voiceRecord/types.ts +1 -4
|
@@ -10,13 +10,12 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
10
10
|
var _reactNativeUi = require("@magmamath/react-native-ui");
|
|
11
11
|
var _VoiceRecordDeleteButton = require("./VoiceRecordDeleteButton.js");
|
|
12
12
|
var _VoiceRecordDevider = require("./VoiceRecordDevider.js");
|
|
13
|
-
var _VoiceRecordTimer =
|
|
13
|
+
var _VoiceRecordTimer = require("./VoiceRecordTimer.js");
|
|
14
14
|
var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
|
|
15
15
|
var _useVoiceRecorder = require("../hooks/useVoiceRecorder.js");
|
|
16
16
|
var _useVoiceRecorderAnimation = require("../hooks/useVoiceRecorderAnimation.js");
|
|
17
17
|
var _effectorReact = require("effector-react");
|
|
18
18
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
20
19
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
21
20
|
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; }
|
|
22
21
|
const VoiceRecord = ({
|
|
@@ -30,17 +29,11 @@ const VoiceRecord = ({
|
|
|
30
29
|
const {
|
|
31
30
|
containerAnimatedStyle
|
|
32
31
|
} = (0, _useVoiceRecorderAnimation.useVoiceRecorderAnimation)(isExpanded);
|
|
33
|
-
const cleanup = async () => {
|
|
34
|
-
if (model.recorderModel.recorder.getStatus().isRecording) {
|
|
35
|
-
await model.recorderModel.recorder.stop();
|
|
36
|
-
}
|
|
37
|
-
model.recorderModel.reset();
|
|
38
|
-
};
|
|
39
32
|
(0, _react.useEffect)(() => {
|
|
40
33
|
return () => {
|
|
41
|
-
cleanup();
|
|
34
|
+
model.cleanup();
|
|
42
35
|
};
|
|
43
|
-
}, []);
|
|
36
|
+
}, [model]);
|
|
44
37
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeReanimated.default.View, {
|
|
45
38
|
style: [styles.container, style, containerAnimatedStyle],
|
|
46
39
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_VoiceRecordButton.VoiceRecordButton, {
|
|
@@ -49,7 +42,7 @@ const VoiceRecord = ({
|
|
|
49
42
|
entering: _reactNativeReanimated.FadeIn,
|
|
50
43
|
exiting: _reactNativeReanimated.FadeOut,
|
|
51
44
|
style: styles.expendedContainer,
|
|
52
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_VoiceRecordTimer.
|
|
45
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_VoiceRecordTimer.VoiceRecordTimer, {
|
|
53
46
|
style: styles.timer,
|
|
54
47
|
model: model,
|
|
55
48
|
recordingFileDurationMs: recorderState.durationMillis
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_VoiceRecordButton","_react","_interopRequireWildcard","_reactNativeUi","_VoiceRecordDeleteButton","_VoiceRecordDevider","_VoiceRecordTimer","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_VoiceRecordButton","_react","_interopRequireWildcard","_reactNativeUi","_VoiceRecordDeleteButton","_VoiceRecordDevider","_VoiceRecordTimer","_reactNativeReanimated","_useVoiceRecorder","_useVoiceRecorderAnimation","_effectorReact","_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","containerAnimatedStyle","useVoiceRecorderAnimation","useEffect","cleanup","jsxs","View","styles","container","children","jsx","VoiceRecordButton","entering","FadeIn","exiting","FadeOut","expendedContainer","VoiceRecordTimer","timer","recordingFileDurationMs","durationMillis","VoiceRecordDevider","VoiceRecordDeleteButton","onPress","events","deleteRecord","exports","StyleSheet","create","alignItems","padding","paddingBottom","backgroundColor","COLORS","NEUTRAL_3","borderRadius","boxShadow","overflow","marginTop","SPACING"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecord.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -18,44 +18,28 @@ const VoiceRecordButton = ({
|
|
|
18
18
|
model
|
|
19
19
|
}) => {
|
|
20
20
|
const t = (0, _index.useText)();
|
|
21
|
-
const
|
|
21
|
+
const availableInputs = (0, _effectorReact.useUnit)(model.recorderModel.$availableInputs);
|
|
22
22
|
const voiceRecordState = (0, _effectorReact.useUnit)(model.recorderModel.$voiceRecordState);
|
|
23
|
-
const currentKey = (0, _effectorReact.useUnit)(model.$currentKey);
|
|
24
23
|
const isButtonDisabled = (0, _effectorReact.useUnit)(model.$isButtonDisabled);
|
|
25
|
-
const onButtonPress = () => {
|
|
26
|
-
if (model.recorderModel.recorder.isRecording) {
|
|
27
|
-
model.recorderModel.stop();
|
|
28
|
-
return;
|
|
29
|
-
}
|
|
30
|
-
if (model.collection.get(currentKey)) {
|
|
31
|
-
model.events.undoRecord();
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
model.initializeRecording();
|
|
35
|
-
};
|
|
36
24
|
const combinedStyles = (0, _react.useMemo)(() => {
|
|
37
25
|
return {
|
|
38
|
-
button: {
|
|
39
|
-
width: 50
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
...style?.container
|
|
44
|
-
},
|
|
45
|
-
text: {
|
|
46
|
-
...style?.text
|
|
47
|
-
}
|
|
26
|
+
button: [{
|
|
27
|
+
width: 50
|
|
28
|
+
}, style?.button],
|
|
29
|
+
container: [style?.container],
|
|
30
|
+
text: [style?.text]
|
|
48
31
|
};
|
|
49
32
|
}, [style]);
|
|
50
33
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
51
|
-
onPressIn:
|
|
34
|
+
onPressIn: e => {
|
|
35
|
+
if (availableInputs.length) return;
|
|
52
36
|
e.preventDefault();
|
|
53
37
|
model.notification.warning(t('voiceRecorder.noMicrophoneFound'));
|
|
54
|
-
}
|
|
55
|
-
pointerEvents:
|
|
38
|
+
},
|
|
39
|
+
pointerEvents: !availableInputs.length ? 'box-only' : 'auto',
|
|
56
40
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Button, {
|
|
57
|
-
disabled: isButtonDisabled ||
|
|
58
|
-
onPressIn:
|
|
41
|
+
disabled: isButtonDisabled || !availableInputs.length,
|
|
42
|
+
onPressIn: () => model.recorderButtonHandler(),
|
|
59
43
|
style: combinedStyles,
|
|
60
44
|
size: _reactNativeUi.ButtonSize.LARGE,
|
|
61
45
|
variant: _reactNativeUi.ButtonVariant.SECONDARY,
|
|
@@ -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","VoiceRecordButton","style","model","useText","
|
|
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","VoiceRecordButton","style","model","useText","availableInputs","useUnit","recorderModel","$availableInputs","voiceRecordState","$voiceRecordState","isButtonDisabled","$isButtonDisabled","combinedStyles","useMemo","button","width","container","text","jsx","Pressable","onPressIn","length","preventDefault","notification","warning","pointerEvents","children","Button","disabled","recorderButtonHandler","size","ButtonSize","LARGE","variant","ButtonVariant","SECONDARY","colorScheme","ButtonColor","WHITE","icon","VoiceRecorderState","RECORDING","CheckIcon","MicrophoneIcon","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecordButton.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAOA,IAAAE,YAAA,GAAAF,OAAA;AAGA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAAqD,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAO,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAO9C,MAAMW,iBAAiB,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAA8B,CAAC,KAAK;EAC7E,MAAMlB,CAAC,GAAG,IAAAmB,cAAO,EAAC,CAAC;EAEnB,MAAMC,eAAe,GAAG,IAAAC,sBAAO,EAACH,KAAK,CAACI,aAAa,CAACC,gBAAgB,CAAC;EACrE,MAAMC,gBAAgB,GAAG,IAAAH,sBAAO,EAACH,KAAK,CAACI,aAAa,CAACG,iBAAiB,CAAC;EACvE,MAAMC,gBAAgB,GAAG,IAAAL,sBAAO,EAACH,KAAK,CAACS,iBAAiB,CAAC;EAEzD,MAAMC,cAAc,GAAG,IAAAC,cAAO,EAAC,MAAmB;IAChD,OAAO;MACLC,MAAM,EAAE,CAAC;QAAEC,KAAK,EAAE;MAAG,CAAC,EAAEd,KAAK,EAAEa,MAAM,CAAC;MACtCE,SAAS,EAAE,CAACf,KAAK,EAAEe,SAAS,CAAC;MAC7BC,IAAI,EAAE,CAAChB,KAAK,EAAEgB,IAAI;IACpB,CAAC;EACH,CAAC,EAAE,CAAChB,KAAK,CAAC,CAAC;EAEX,oBACE,IAAAtB,WAAA,CAAAuC,GAAA,EAAC3C,YAAA,CAAA4C,SAAS;IACRC,SAAS,EAAGvC,CAAC,IAAK;MAChB,IAAIuB,eAAe,CAACiB,MAAM,EAAE;MAC5BxC,CAAC,CAACyC,cAAc,CAAC,CAAC;MAClBpB,KAAK,CAACqB,YAAY,CAACC,OAAO,CAACxC,CAAC,CAAC,iCAAiC,CAAC,CAAC;IAClE,CAAE;IACFyC,aAAa,EAAE,CAACrB,eAAe,CAACiB,MAAM,GAAG,UAAU,GAAG,MAAO;IAAAK,QAAA,eAE7D,IAAA/C,WAAA,CAAAuC,GAAA,EAAC5C,cAAA,CAAAqD,MAAM;MACLC,QAAQ,EAAElB,gBAAgB,IAAI,CAACN,eAAe,CAACiB,MAAO;MACtDD,SAAS,EAAEA,CAAA,KAAMlB,KAAK,CAAC2B,qBAAqB,CAAC,CAAE;MAC/C5B,KAAK,EAAEW,cAAe;MACtBkB,IAAI,EAAEC,yBAAU,CAACC,KAAM;MACvBC,OAAO,EAAEC,4BAAa,CAACC,SAAU;MACjCC,WAAW,EAAEC,0BAAW,CAACC,KAAM;MAC/BC,IAAI,EACF/B,gBAAgB,KAAKgC,6BAAkB,CAACC,SAAS,gBAC/C,IAAA9D,WAAA,CAAAuC,GAAA,EAAC5C,cAAA,CAAAoE,SAAS;QAACZ,IAAI,EAAE;MAAG,CAAE,CAAC,gBAEvB,IAAAnD,WAAA,CAAAuC,GAAA,EAAC5C,cAAA,CAAAqE,cAAc;QAACb,IAAI,EAAE;MAAG,CAAE;IAE9B,CACF;EAAC,CACO,CAAC;AAEhB,CAAC;AAAAc,OAAA,CAAA5C,iBAAA,GAAAA,iBAAA","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.VoiceRecordTimer = void 0;
|
|
7
7
|
var _reactNative = require("react-native");
|
|
8
8
|
var _reactNativeUi = require("@magmamath/react-native-ui");
|
|
9
9
|
var _react = _interopRequireDefault(require("react"));
|
|
@@ -17,7 +17,7 @@ const VoiceRecordTimer = ({
|
|
|
17
17
|
recordingFileDurationMs
|
|
18
18
|
}) => {
|
|
19
19
|
const savedAudioFileDurationMs = (0, _effectorReact.useUnit)(model.$currentRecord)?.durationMs || 0;
|
|
20
|
-
const displayDurationMs = recordingFileDurationMs
|
|
20
|
+
const displayDurationMs = recordingFileDurationMs || savedAudioFileDurationMs;
|
|
21
21
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
22
22
|
style: [styles.container, style],
|
|
23
23
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
|
|
@@ -28,7 +28,6 @@ const VoiceRecordTimer = ({
|
|
|
28
28
|
});
|
|
29
29
|
};
|
|
30
30
|
exports.VoiceRecordTimer = VoiceRecordTimer;
|
|
31
|
-
var _default = exports.default = VoiceRecordTimer;
|
|
32
31
|
const styles = _reactNative.StyleSheet.create({
|
|
33
32
|
container: {
|
|
34
33
|
backgroundColor: _reactNativeUi.COLORS.NEUTRAL_1,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_reactNativeUi","_react","_interopRequireDefault","_effectorReact","_helpers","_jsxRuntime","e","__esModule","default","VoiceRecordTimer","style","model","recordingFileDurationMs","savedAudioFileDurationMs","useUnit","$currentRecord","durationMs","displayDurationMs","jsx","View","styles","container","children","Typography","variant","text","formatDuration","exports","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_reactNativeUi","_react","_interopRequireDefault","_effectorReact","_helpers","_jsxRuntime","e","__esModule","default","VoiceRecordTimer","style","model","recordingFileDurationMs","savedAudioFileDurationMs","useUnit","$currentRecord","durationMs","displayDurationMs","jsx","View","styles","container","children","Typography","variant","text","formatDuration","exports","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,cAAc,CAAC,EAAEC,UAAU,IAAI,CAAC;EAC/E,MAAMC,iBAAiB,GAAGL,uBAAuB,IAAIC,wBAAwB;EAE7E,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;AAED,MAAMW,MAAM,GAAGQ,uBAAU,CAACC,MAAM,CAAC;EAC/BR,SAAS,EAAE;IACTS,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;EACDf,IAAI,EAAE;IACJgB,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":[]}
|
|
@@ -8,7 +8,7 @@ const VOICE_RECORDER_CONTAINER_SIZES = exports.VOICE_RECORDER_CONTAINER_SIZES =
|
|
|
8
8
|
COLLAPSED: 61,
|
|
9
9
|
EXPANDED: 152
|
|
10
10
|
};
|
|
11
|
-
const VOICE_RECORDER_MAX_DURATION_MS = exports.VOICE_RECORDER_MAX_DURATION_MS = 60000; // 1
|
|
11
|
+
const VOICE_RECORDER_MAX_DURATION_MS = exports.VOICE_RECORDER_MAX_DURATION_MS = 60000; // 1 minute
|
|
12
12
|
let VoiceRecorderState = exports.VoiceRecorderState = /*#__PURE__*/function (VoiceRecorderState) {
|
|
13
13
|
VoiceRecorderState[VoiceRecorderState["IDLE"] = 0] = "IDLE";
|
|
14
14
|
VoiceRecorderState[VoiceRecorderState["RECORDING"] = 1] = "RECORDING";
|
|
@@ -14,7 +14,6 @@ const useVoiceRecorder = model => {
|
|
|
14
14
|
const recorderState = (0, _expoAudio.useAudioRecorderState)(recorder);
|
|
15
15
|
(0, _react.useEffect)(() => {
|
|
16
16
|
if (recorderState.durationMillis >= _constants.VOICE_RECORDER_MAX_DURATION_MS && recorderState.isRecording) {
|
|
17
|
-
console.log('HERE');
|
|
18
17
|
model.recorderModel.stop();
|
|
19
18
|
}
|
|
20
19
|
// Track the last known duration while recording (for old browsers where getAudioDurationMs returns Infinity)
|
|
@@ -34,7 +33,7 @@ const useVoiceRecorder = model => {
|
|
|
34
33
|
model.recorderModel.setAvailableInputs(devices);
|
|
35
34
|
});
|
|
36
35
|
return removeListener;
|
|
37
|
-
}, []);
|
|
36
|
+
}, [recorder, model.recorderModel]);
|
|
38
37
|
(0, _react.useEffect)(() => {
|
|
39
38
|
if (recorderState.isRecording) {
|
|
40
39
|
model.recorderModel.setVoiceRecordState(_constants.VoiceRecorderState.RECORDING);
|
|
@@ -48,7 +47,7 @@ const useVoiceRecorder = model => {
|
|
|
48
47
|
return () => {
|
|
49
48
|
model.recorderModel.reset();
|
|
50
49
|
};
|
|
51
|
-
}, [recorderState]);
|
|
50
|
+
}, [recorderState, model.recorderModel]);
|
|
52
51
|
(0, _react.useEffect)(() => {
|
|
53
52
|
model.recorderModel.recorder = recorder;
|
|
54
53
|
}, [recorder]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_expoAudio","require","_helpers","_react","_reactNativeUi","_constants","useVoiceRecorder","model","recorder","useAudioRecorder","RecordingPresets","LOW_QUALITY","recordingStatusUpdate","recorderState","useAudioRecorderState","useEffect","durationMillis","VOICE_RECORDER_MAX_DURATION_MS","isRecording","
|
|
1
|
+
{"version":3,"names":["_expoAudio","require","_helpers","_react","_reactNativeUi","_constants","useVoiceRecorder","model","recorder","useAudioRecorder","RecordingPresets","LOW_QUALITY","recordingStatusUpdate","recorderState","useAudioRecorderState","useEffect","durationMillis","VOICE_RECORDER_MAX_DURATION_MS","isRecording","recorderModel","stop","setLastKnownDurationMs","IS_WEB","getAvailableInputs","then","inputs","setAvailableInputs","removeListener","addAudioInputsListenerWeb","devices","setVoiceRecordState","VoiceRecorderState","RECORDING","PAUSED","IDLE","reset","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/hooks/useVoiceRecorder.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AAEO,MAAMK,gBAAgB,GAAIC,KAAuB,IAAK;EAC3D,MAAMC,QAAQ,GAAG,IAAAC,2BAAgB,EAACC,2BAAgB,CAACC,WAAW,EAAEJ,KAAK,CAACK,qBAAqB,CAAC;EAC5F,MAAMC,aAAa,GAAG,IAAAC,gCAAqB,EAACN,QAAQ,CAAC;EAErD,IAAAO,gBAAS,EAAC,MAAM;IACd,IACEF,aAAa,CAACG,cAAc,IAAIC,yCAA8B,IAC9DJ,aAAa,CAACK,WAAW,EACzB;MACAX,KAAK,CAACY,aAAa,CAACC,IAAI,CAAC,CAAC;IAC5B;IACA;IACA,IAAIP,aAAa,CAACK,WAAW,IAAIL,aAAa,CAACG,cAAc,GAAG,CAAC,EAAE;MACjET,KAAK,CAACY,aAAa,CAACE,sBAAsB,CAACR,aAAa,CAACG,cAAc,CAAC;IAC1E;EACF,CAAC,EAAE,CAACH,aAAa,CAACG,cAAc,CAAC,CAAC;EAElC,IAAAD,gBAAS,EAAC,MAAM;IACd,IAAI,CAACO,qBAAM,EAAE;MACX;MACA,IAAAC,2BAAkB,EAACf,QAAQ,CAAC,CAACgB,IAAI,CAAEC,MAAM,IAAK;QAC5ClB,KAAK,CAACY,aAAa,CAACO,kBAAkB,CAACD,MAAM,CAAC;MAChD,CAAC,CAAC;MACF;IACF;IAEA,MAAME,cAAc,GAAG,IAAAC,kCAAyB,EAAEC,OAAO,IAAK;MAC5DtB,KAAK,CAACY,aAAa,CAACO,kBAAkB,CAACG,OAAO,CAAC;IACjD,CAAC,CAAC;IAEF,OAAOF,cAAc;EACvB,CAAC,EAAE,CAACnB,QAAQ,EAAED,KAAK,CAACY,aAAa,CAAC,CAAC;EAEnC,IAAAJ,gBAAS,EAAC,MAAM;IACd,IAAIF,aAAa,CAACK,WAAW,EAAE;MAC7BX,KAAK,CAACY,aAAa,CAACW,mBAAmB,CAACC,6BAAkB,CAACC,SAAS,CAAC;MACrE;IACF;IACA,IAAInB,aAAa,CAACG,cAAc,GAAG,CAAC,EAAE;MACpCT,KAAK,CAACY,aAAa,CAACW,mBAAmB,CAACC,6BAAkB,CAACE,MAAM,CAAC;MAClE;IACF;IACA1B,KAAK,CAACY,aAAa,CAACW,mBAAmB,CAACC,6BAAkB,CAACG,IAAI,CAAC;IAEhE,OAAO,MAAM;MACX3B,KAAK,CAACY,aAAa,CAACgB,KAAK,CAAC,CAAC;IAC7B,CAAC;EACH,CAAC,EAAE,CAACtB,aAAa,EAAEN,KAAK,CAACY,aAAa,CAAC,CAAC;EAExC,IAAAJ,gBAAS,EAAC,MAAM;IACdR,KAAK,CAACY,aAAa,CAACX,QAAQ,GAAGA,QAAQ;EACzC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,OAAO;IAAEK;EAAc,CAAC;AAC1B,CAAC;AAAAuB,OAAA,CAAA9B,gBAAA,GAAAA,gBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ModalFooterButtons = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNativeUi = require("@magmamath/react-native-ui");
|
|
9
|
+
var _reactNative = require("react-native");
|
|
10
|
+
var _index = require("../../../shared/translation/index.js");
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
const ModalFooterButtons = ({
|
|
14
|
+
onCancel,
|
|
15
|
+
onConfirm,
|
|
16
|
+
confirmLabel,
|
|
17
|
+
confirmColor = _reactNativeUi.ButtonColor.BLUE
|
|
18
|
+
}) => {
|
|
19
|
+
const t = (0, _index.useText)();
|
|
20
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
21
|
+
style: styles.container,
|
|
22
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Button, {
|
|
23
|
+
style: {
|
|
24
|
+
text: styles.buttonLabel
|
|
25
|
+
},
|
|
26
|
+
variant: _reactNativeUi.ButtonVariant.TERTIARY,
|
|
27
|
+
size: _reactNativeUi.ButtonSize.LARGE,
|
|
28
|
+
onPress: onCancel,
|
|
29
|
+
children: t('voiceRecorder.cancel')
|
|
30
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Button, {
|
|
31
|
+
colorScheme: confirmColor,
|
|
32
|
+
variant: _reactNativeUi.ButtonVariant.PRIMARY,
|
|
33
|
+
size: _reactNativeUi.ButtonSize.LARGE,
|
|
34
|
+
onPress: onConfirm,
|
|
35
|
+
style: {
|
|
36
|
+
text: styles.buttonLabel
|
|
37
|
+
},
|
|
38
|
+
children: t(confirmLabel)
|
|
39
|
+
})]
|
|
40
|
+
});
|
|
41
|
+
};
|
|
42
|
+
exports.ModalFooterButtons = ModalFooterButtons;
|
|
43
|
+
const styles = _reactNative.StyleSheet.create({
|
|
44
|
+
container: {
|
|
45
|
+
flexDirection: 'row',
|
|
46
|
+
alignItems: 'center',
|
|
47
|
+
gap: _reactNativeUi.SPACING[200]
|
|
48
|
+
},
|
|
49
|
+
buttonLabel: {
|
|
50
|
+
textTransform: 'uppercase'
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
//# sourceMappingURL=ModalFooterButtons.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNativeUi","_reactNative","_index","_jsxRuntime","e","__esModule","default","ModalFooterButtons","onCancel","onConfirm","confirmLabel","confirmColor","ButtonColor","BLUE","t","useText","jsxs","View","style","styles","container","children","jsx","Button","text","buttonLabel","variant","ButtonVariant","TERTIARY","size","ButtonSize","LARGE","onPress","colorScheme","PRIMARY","exports","StyleSheet","create","flexDirection","alignItems","gap","SPACING","textTransform"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/modal/ModalFooterButtons.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,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;AAU9C,MAAMG,kBAAkB,GAAGA,CAAC;EACjCC,QAAQ;EACRC,SAAS;EACTC,YAAY;EACZC,YAAY,GAAGC,0BAAW,CAACC;AACJ,CAAC,KAAK;EAC7B,MAAMC,CAAC,GAAG,IAAAC,cAAO,EAAC,CAAC;EAEnB,oBACE,IAAAZ,WAAA,CAAAa,IAAA,EAACf,YAAA,CAAAgB,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,gBAC5B,IAAAlB,WAAA,CAAAmB,GAAA,EAACtB,cAAA,CAAAuB,MAAM;MACLL,KAAK,EAAE;QAAEM,IAAI,EAAEL,MAAM,CAACM;MAAY,CAAE;MACpCC,OAAO,EAAEC,4BAAa,CAACC,QAAS;MAChCC,IAAI,EAAEC,yBAAU,CAACC,KAAM;MACvBC,OAAO,EAAExB,QAAS;MAAAa,QAAA,EAEjBP,CAAC,CAAC,sBAAsB;IAAC,CACpB,CAAC,eACT,IAAAX,WAAA,CAAAmB,GAAA,EAACtB,cAAA,CAAAuB,MAAM;MACLU,WAAW,EAAEtB,YAAa;MAC1Be,OAAO,EAAEC,4BAAa,CAACO,OAAQ;MAC/BL,IAAI,EAAEC,yBAAU,CAACC,KAAM;MACvBC,OAAO,EAAEvB,SAAU;MACnBS,KAAK,EAAE;QAAEM,IAAI,EAAEL,MAAM,CAACM;MAAY,CAAE;MAAAJ,QAAA,EAEnCP,CAAC,CAACJ,YAAY;IAAC,CACV,CAAC;EAAA,CACL,CAAC;AAEX,CAAC;AAAAyB,OAAA,CAAA5B,kBAAA,GAAAA,kBAAA;AAED,MAAMY,MAAM,GAAGiB,uBAAU,CAACC,MAAM,CAAC;EAC/BjB,SAAS,EAAE;IACTkB,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAEC,sBAAO,CAAC,GAAG;EAClB,CAAC;EACDhB,WAAW,EAAE;IACXiB,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -10,36 +10,10 @@ var _reactNative = require("react-native");
|
|
|
10
10
|
var _effectorReact = require("effector-react");
|
|
11
11
|
var _constants = require("../constants.js");
|
|
12
12
|
var _index = require("../../../shared/translation/index.js");
|
|
13
|
+
var _ModalFooterButtons = require("./ModalFooterButtons.js");
|
|
13
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
15
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
15
16
|
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; }
|
|
16
|
-
const FooterButtons = ({
|
|
17
|
-
onClose,
|
|
18
|
-
onDelete
|
|
19
|
-
}) => {
|
|
20
|
-
const t = (0, _index.useText)();
|
|
21
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
22
|
-
style: styles.footerContainer,
|
|
23
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Button, {
|
|
24
|
-
style: {
|
|
25
|
-
text: styles.buttonLabel
|
|
26
|
-
},
|
|
27
|
-
variant: _reactNativeUi.ButtonVariant.TERTIARY,
|
|
28
|
-
size: _reactNativeUi.ButtonSize.LARGE,
|
|
29
|
-
onPress: onClose,
|
|
30
|
-
children: t('voiceRecorder.cancel')
|
|
31
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Button, {
|
|
32
|
-
colorScheme: _reactNativeUi.ButtonColor.RED,
|
|
33
|
-
variant: _reactNativeUi.ButtonVariant.PRIMARY,
|
|
34
|
-
size: _reactNativeUi.ButtonSize.LARGE,
|
|
35
|
-
onPress: onDelete,
|
|
36
|
-
style: {
|
|
37
|
-
text: styles.buttonLabel
|
|
38
|
-
},
|
|
39
|
-
children: t('voiceRecorder.delete')
|
|
40
|
-
})]
|
|
41
|
-
});
|
|
42
|
-
};
|
|
43
17
|
const VoiceRecordDeleteModal = ({
|
|
44
18
|
modal: {
|
|
45
19
|
closeModal,
|
|
@@ -57,7 +31,7 @@ const VoiceRecordDeleteModal = ({
|
|
|
57
31
|
// without .record() browser still will use microphone
|
|
58
32
|
model.recorderModel.recorder.record();
|
|
59
33
|
setTimeout(() => {
|
|
60
|
-
model.
|
|
34
|
+
model.stop();
|
|
61
35
|
model.deleteCurrentRecording();
|
|
62
36
|
}, 50);
|
|
63
37
|
closeModal();
|
|
@@ -86,9 +60,11 @@ const VoiceRecordDeleteModal = ({
|
|
|
86
60
|
},
|
|
87
61
|
header: t('voiceRecorder.deleteRecording'),
|
|
88
62
|
content: t('voiceRecorder.youWontBeAbleToRecover'),
|
|
89
|
-
footer: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
90
|
-
|
|
91
|
-
|
|
63
|
+
footer: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ModalFooterButtons.ModalFooterButtons, {
|
|
64
|
+
onCancel: closeModal,
|
|
65
|
+
onConfirm: handleDelete,
|
|
66
|
+
confirmLabel: "voiceRecorder.delete",
|
|
67
|
+
confirmColor: _reactNativeUi.ButtonColor.RED
|
|
92
68
|
})
|
|
93
69
|
});
|
|
94
70
|
};
|
|
@@ -97,14 +73,6 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
97
73
|
modalContainer: {
|
|
98
74
|
width: 600,
|
|
99
75
|
height: 268
|
|
100
|
-
},
|
|
101
|
-
footerContainer: {
|
|
102
|
-
flexDirection: 'row',
|
|
103
|
-
alignItems: 'center',
|
|
104
|
-
gap: _reactNativeUi.SPACING[200]
|
|
105
|
-
},
|
|
106
|
-
buttonLabel: {
|
|
107
|
-
textTransform: 'uppercase'
|
|
108
76
|
}
|
|
109
77
|
});
|
|
110
78
|
//# 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","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeUi","_reactNative","_effectorReact","_constants","_index","_ModalFooterButtons","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","VoiceRecordDeleteModal","modal","closeModal","params","useText","model","recorderState","useUnit","recorderModel","$voiceRecordState","handleDelete","VoiceRecorderState","PAUSED","recorder","record","setTimeout","stop","deleteCurrentRecording","useEffect","RECORDING","pause","getState","error","console","jsx","BaseModal","style","container","styles","modalContainer","header","content","footer","ModalFooterButtons","onCancel","onConfirm","confirmLabel","confirmColor","ButtonColor","RED","exports","StyleSheet","create","width","height"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/modal/VoiceRecordDeleteModal.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,35 +8,9 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
8
8
|
var _reactNativeUi = require("@magmamath/react-native-ui");
|
|
9
9
|
var _reactNative = require("react-native");
|
|
10
10
|
var _index = require("../../../shared/translation/index.js");
|
|
11
|
+
var _ModalFooterButtons = require("./ModalFooterButtons.js");
|
|
11
12
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
13
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
-
const FooterButtons = ({
|
|
14
|
-
onClose,
|
|
15
|
-
onRedo
|
|
16
|
-
}) => {
|
|
17
|
-
const t = (0, _index.useText)();
|
|
18
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
19
|
-
style: styles.footerContainer,
|
|
20
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Button, {
|
|
21
|
-
style: {
|
|
22
|
-
text: styles.buttonLabel
|
|
23
|
-
},
|
|
24
|
-
variant: _reactNativeUi.ButtonVariant.TERTIARY,
|
|
25
|
-
size: _reactNativeUi.ButtonSize.LARGE,
|
|
26
|
-
onPress: onClose,
|
|
27
|
-
children: t('voiceRecorder.cancel')
|
|
28
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Button, {
|
|
29
|
-
colorScheme: _reactNativeUi.ButtonColor.BLUE,
|
|
30
|
-
variant: _reactNativeUi.ButtonVariant.PRIMARY,
|
|
31
|
-
size: _reactNativeUi.ButtonSize.LARGE,
|
|
32
|
-
onPress: onRedo,
|
|
33
|
-
style: {
|
|
34
|
-
text: styles.buttonLabel
|
|
35
|
-
},
|
|
36
|
-
children: t('voiceRecorder.redo')
|
|
37
|
-
})]
|
|
38
|
-
});
|
|
39
|
-
};
|
|
40
14
|
const VoiceRecordUndoModal = ({
|
|
41
15
|
modal: {
|
|
42
16
|
closeModal,
|
|
@@ -60,9 +34,10 @@ const VoiceRecordUndoModal = ({
|
|
|
60
34
|
},
|
|
61
35
|
header: t('voiceRecorder.redoRecording'),
|
|
62
36
|
content: t('voiceRecorder.thisWillRemoveRecording'),
|
|
63
|
-
footer: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
64
|
-
|
|
65
|
-
|
|
37
|
+
footer: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ModalFooterButtons.ModalFooterButtons, {
|
|
38
|
+
onCancel: closeModal,
|
|
39
|
+
onConfirm: handleRedo,
|
|
40
|
+
confirmLabel: "voiceRecorder.redo"
|
|
66
41
|
})
|
|
67
42
|
});
|
|
68
43
|
};
|
|
@@ -71,14 +46,6 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
71
46
|
modalStyle: {
|
|
72
47
|
width: 600,
|
|
73
48
|
height: 268
|
|
74
|
-
},
|
|
75
|
-
footerContainer: {
|
|
76
|
-
flexDirection: 'row',
|
|
77
|
-
alignItems: 'center',
|
|
78
|
-
gap: _reactNativeUi.SPACING[200]
|
|
79
|
-
},
|
|
80
|
-
buttonLabel: {
|
|
81
|
-
textTransform: 'uppercase'
|
|
82
49
|
}
|
|
83
50
|
});
|
|
84
51
|
//# sourceMappingURL=VoiceRecordUndoModal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNativeUi","_reactNative","_index","_jsxRuntime","e","__esModule","default","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNativeUi","_reactNative","_index","_ModalFooterButtons","_jsxRuntime","e","__esModule","default","VoiceRecordUndoModal","modal","closeModal","params","t","useText","model","handleRedo","deleteCurrentRecording","notification","initializeRecording","jsx","BaseModal","style","container","styles","modalStyle","header","content","footer","ModalFooterButtons","onCancel","onConfirm","confirmLabel","exports","StyleSheet","create","width","height"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/modal/VoiceRecordUndoModal.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAEA,IAAAI,mBAAA,GAAAJ,OAAA;AAAyD,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAUlD,MAAMG,oBAAoB,GAAGA,CAAC;EACnCC,KAAK,EAAE;IAAEC,UAAU;IAAEC;EAAO;AACH,CAAC,KAAK;EAC/B,MAAMC,CAAC,GAAG,IAAAC,cAAO,EAAC,CAAC;EACnB,MAAM;IAAEC;EAAM,CAAC,GAAGH,MAAM;EAExB,MAAMI,UAAU,GAAGA,CAAA,KAAM;IACvBD,KAAK,CAACE,sBAAsB,CAAC;MAAEC,YAAY,EAAE;IAAM,CAAC,CAAC;IACrDP,UAAU,CAAC,CAAC;IACZI,KAAK,CAACI,mBAAmB,CAAC,CAAC;EAC7B,CAAC;EAED,oBACE,IAAAd,WAAA,CAAAe,GAAA,EAACnB,cAAA,CAAAoB,SAAS;IACRC,KAAK,EAAE;MACLC,SAAS,EAAEC,MAAM,CAACC;IACpB,CAAE;IACFC,MAAM,EAAEb,CAAC,CAAC,6BAA6B,CAAE;IACzCc,OAAO,EAAEd,CAAC,CAAC,uCAAuC,CAAE;IACpDe,MAAM,eACJ,IAAAvB,WAAA,CAAAe,GAAA,EAAChB,mBAAA,CAAAyB,kBAAkB;MACjBC,QAAQ,EAAEnB,UAAW;MACrBoB,SAAS,EAAEf,UAAW;MACtBgB,YAAY,EAAC;IAAoB,CAClC;EACF,CACF,CAAC;AAEN,CAAC;AAAAC,OAAA,CAAAxB,oBAAA,GAAAA,oBAAA;AAED,MAAMe,MAAM,GAAGU,uBAAU,CAACC,MAAM,CAAC;EAC/BV,UAAU,EAAE;IACVW,KAAK,EAAE,GAAG;IACVC,MAAM,EAAE;EACV;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -31,18 +31,18 @@ class RecorderModel {
|
|
|
31
31
|
}
|
|
32
32
|
});
|
|
33
33
|
stop = (0, _effector.createEffect)(() => {
|
|
34
|
-
if (!this.recorder.getStatus().isRecording) return
|
|
34
|
+
if (!this.recorder.getStatus().isRecording) return;
|
|
35
35
|
return this.recorder.stop();
|
|
36
36
|
});
|
|
37
|
-
|
|
37
|
+
stopAndAwaitResult() {
|
|
38
38
|
return new Promise(resolve => {
|
|
39
39
|
this.stopResolver = resolve;
|
|
40
40
|
this.recorder.getStatus().isRecording && this.recorder.stop();
|
|
41
41
|
});
|
|
42
42
|
}
|
|
43
|
-
|
|
43
|
+
resolveRecord(result) {
|
|
44
44
|
if (this.stopResolver) {
|
|
45
|
-
this.stopResolver(
|
|
45
|
+
this.stopResolver(result);
|
|
46
46
|
this.stopResolver = null;
|
|
47
47
|
}
|
|
48
48
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_effector","require","_expoAudio","_constants","AUDIO_MODE_CONFIG","playsInSilentMode","allowsRecording","RecorderModel","stopResolver","reset","createEvent","setVoiceRecordState","setAvailableInputs","setLastKnownDurationMs","$voiceRecordState","restore","VoiceRecorderState","IDLE","$availableInputs","$lastKnownDurationMs","start","createEffect","setAudioModeAsync","recorder","prepareToRecordAsync","record","error","console","stop","getStatus","isRecording","
|
|
1
|
+
{"version":3,"names":["_effector","require","_expoAudio","_constants","AUDIO_MODE_CONFIG","playsInSilentMode","allowsRecording","RecorderModel","stopResolver","reset","createEvent","setVoiceRecordState","setAvailableInputs","setLastKnownDurationMs","$voiceRecordState","restore","VoiceRecorderState","IDLE","$availableInputs","$lastKnownDurationMs","start","createEffect","setAudioModeAsync","recorder","prepareToRecordAsync","record","error","console","stop","getStatus","isRecording","stopAndAwaitResult","Promise","resolve","resolveRecord","result","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;EAE9BC,YAAY,GAA2B,IAAI;EAEnCC,KAAK,GAAG,IAAAC,qBAAW,EAAC,CAAC;EACrBC,mBAAmB,GAAG,IAAAD,qBAAW,EAAqB,CAAC;EACvDE,kBAAkB,GAAG,IAAAF,qBAAW,EAAuB,CAAC;EACxDG,sBAAsB,GAAG,IAAAH,qBAAW,EAAS,CAAC;EAE9CI,iBAAiB,GAAG,IAAAC,iBAAO,EACzC,IAAI,CAACJ,mBAAmB,EACxBK,6BAAkB,CAACC,IACrB,CAAC,CAACR,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EACHS,gBAAgB,GAAG,IAAAH,iBAAO,EAAC,IAAI,CAACH,kBAAkB,EAAE,EAAE,CAAC;EACvDO,oBAAoB,GAAG,IAAAJ,iBAAO,EAAC,IAAI,CAACF,sBAAsB,EAAE,CAAC,CAAC,CAACJ,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EAEhFW,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;IAC5C,OAAO,IAAI,CAACP,QAAQ,CAACK,IAAI,CAAC,CAAC;EAC7B,CAAC,CAAC;EAEKG,kBAAkBA,CAAA,EAAe;IACtC,OAAO,IAAIC,OAAO,CAAEC,OAAO,IAAK;MAC9B,IAAI,CAACzB,YAAY,GAAGyB,OAAO;MAC3B,IAAI,CAACV,QAAQ,CAACM,SAAS,CAAC,CAAC,CAACC,WAAW,IAAI,IAAI,CAACP,QAAQ,CAACK,IAAI,CAAC,CAAC;IAC/D,CAAC,CAAC;EACJ;EAEOM,aAAaA,CAACC,MAAS,EAAQ;IACpC,IAAI,IAAI,CAAC3B,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAAC2B,MAAM,CAAC;MACzB,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":[]}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.UploaderModel = void 0;
|
|
7
|
+
var _effector = require("effector");
|
|
8
|
+
var _helpers = require("../helpers.js");
|
|
9
|
+
class UploaderModel {
|
|
10
|
+
setApi = api => {
|
|
11
|
+
this.api = api;
|
|
12
|
+
};
|
|
13
|
+
upload = (0, _effector.createEffect)(async ({
|
|
14
|
+
uri,
|
|
15
|
+
fileName,
|
|
16
|
+
durationMs
|
|
17
|
+
}) => {
|
|
18
|
+
const formData = await (0, _helpers.generateAudioFormData)({
|
|
19
|
+
audioFileUri: uri,
|
|
20
|
+
durationMs,
|
|
21
|
+
fileName
|
|
22
|
+
});
|
|
23
|
+
const {
|
|
24
|
+
uploadAudio,
|
|
25
|
+
controller
|
|
26
|
+
} = (0, _helpers.uploadAudioFileRequestGenerator)(formData, this.api);
|
|
27
|
+
const uploadPromise = uploadAudio();
|
|
28
|
+
const collectionItem = {
|
|
29
|
+
durationMs,
|
|
30
|
+
audioUploadPromise: uploadPromise,
|
|
31
|
+
controller,
|
|
32
|
+
uri
|
|
33
|
+
};
|
|
34
|
+
return {
|
|
35
|
+
collectionItem,
|
|
36
|
+
uploadPromise
|
|
37
|
+
};
|
|
38
|
+
});
|
|
39
|
+
abortUpload = controller => {
|
|
40
|
+
controller?.abort();
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
exports.UploaderModel = UploaderModel;
|
|
44
|
+
//# sourceMappingURL=Uploader.model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_effector","require","_helpers","UploaderModel","setApi","api","upload","createEffect","uri","fileName","durationMs","formData","generateAudioFormData","audioFileUri","uploadAudio","controller","uploadAudioFileRequestGenerator","uploadPromise","collectionItem","audioUploadPromise","abortUpload","abort","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/model/Uploader.model.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAcO,MAAME,aAAa,CAAC;EAGTC,MAAM,GAAIC,GAAa,IAAK;IAC1C,IAAI,CAACA,GAAG,GAAGA,GAAG;EAChB,CAAC;EAEeC,MAAM,GAAG,IAAAC,sBAAY,EACnC,OAAO;IAAEC,GAAG;IAAEC,QAAQ;IAAEC;EAAyB,CAAC,KAA4B;IAC5E,MAAMC,QAAQ,GAAG,MAAM,IAAAC,8BAAqB,EAAC;MAC3CC,YAAY,EAAEL,GAAG;MACjBE,UAAU;MACVD;IACF,CAAC,CAAC;IAEF,MAAM;MAAEK,WAAW;MAAEC;IAAW,CAAC,GAAG,IAAAC,wCAA+B,EAACL,QAAQ,EAAE,IAAI,CAACN,GAAG,CAAC;IACvF,MAAMY,aAAa,GAAGH,WAAW,CAAC,CAAC;IAEnC,MAAMI,cAAyC,GAAG;MAChDR,UAAU;MACVS,kBAAkB,EAAEF,aAAa;MACjCF,UAAU;MACVP;IACF,CAAC;IAED,OAAO;MAAEU,cAAc;MAAED;IAAc,CAAC;EAC1C,CACF,CAAC;EAEeG,WAAW,GAAIL,UAA4B,IAAK;IAC9DA,UAAU,EAAEM,KAAK,CAAC,CAAC;EACrB,CAAC;AACH;AAACC,OAAA,CAAAnB,aAAA,GAAAA,aAAA","ignoreList":[]}
|