@magmamath/students-features 0.9.107-rc.13 → 0.9.107-rc.15
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 +2 -2
- package/dist/commonjs/features/voiceRecord/components/VoiceRecord.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/hooks/useVoiceRecorder.js +5 -13
- package/dist/commonjs/features/voiceRecord/hooks/useVoiceRecorder.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/modal/VoiceRecordDeleteModal.js +1 -1
- package/dist/commonjs/features/voiceRecord/modal/VoiceRecordDeleteModal.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/model/Recorder.model.js +17 -1
- package/dist/commonjs/features/voiceRecord/model/Recorder.model.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/model/VoiceRecord.model.js +47 -9
- package/dist/commonjs/features/voiceRecord/model/VoiceRecord.model.js.map +1 -1
- package/dist/commonjs/features/voiceRecord/model/VoiceRecordCollection.js.map +1 -1
- package/dist/module/features/keyboard/components/UnitsLayout/keyboardGroups.js.map +1 -0
- package/dist/module/features/problemSelector/components/ProblemSelector.js.map +1 -0
- package/dist/module/features/voiceRecord/components/VoiceRecord.js +2 -2
- package/dist/module/features/voiceRecord/components/VoiceRecord.js.map +1 -1
- package/dist/module/features/voiceRecord/components/VoiceRecordDeleteButton.js.map +1 -0
- package/dist/module/features/voiceRecord/hooks/useVoiceRecorder.js +5 -13
- package/dist/module/features/voiceRecord/hooks/useVoiceRecorder.js.map +1 -1
- package/dist/module/features/voiceRecord/modal/VoiceRecordDeleteModal.js +1 -1
- package/dist/module/features/voiceRecord/modal/VoiceRecordDeleteModal.js.map +1 -1
- package/dist/module/features/voiceRecord/model/Recorder.model.js +17 -1
- package/dist/module/features/voiceRecord/model/Recorder.model.js.map +1 -1
- package/dist/module/features/voiceRecord/model/VoiceRecord.model.js +47 -9
- package/dist/module/features/voiceRecord/model/VoiceRecord.model.js.map +1 -1
- package/dist/module/features/voiceRecord/model/VoiceRecordCollection.js.map +1 -1
- package/dist/module/shared/hooks/useDebounce.js.map +1 -0
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecord.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/VoiceRecordDeleteModal.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/model/Recorder.model.d.ts +5 -0
- package/dist/typescript/commonjs/features/voiceRecord/model/Recorder.model.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/model/VoiceRecord.model.d.ts +8 -4
- package/dist/typescript/commonjs/features/voiceRecord/model/VoiceRecord.model.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/model/VoiceRecordCollection.d.ts +5 -5
- package/dist/typescript/commonjs/features/voiceRecord/model/VoiceRecordCollection.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/types.d.ts +2 -2
- 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/hooks/useVoiceRecorder.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/modal/VoiceRecordDeleteModal.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/model/Recorder.model.d.ts +5 -0
- package/dist/typescript/module/features/voiceRecord/model/Recorder.model.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/model/VoiceRecord.model.d.ts +8 -4
- package/dist/typescript/module/features/voiceRecord/model/VoiceRecord.model.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/model/VoiceRecordCollection.d.ts +5 -5
- package/dist/typescript/module/features/voiceRecord/model/VoiceRecordCollection.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/types.d.ts +2 -2
- package/dist/typescript/module/features/voiceRecord/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/features/voiceRecord/components/VoiceRecord.tsx +6 -2
- package/src/features/voiceRecord/hooks/useVoiceRecorder.ts +5 -13
- package/src/features/voiceRecord/modal/VoiceRecordDeleteModal.tsx +2 -1
- package/src/features/voiceRecord/model/Recorder.model.ts +23 -2
- package/src/features/voiceRecord/model/VoiceRecord.model.ts +55 -13
- package/src/features/voiceRecord/model/VoiceRecordCollection.ts +4 -4
- package/src/features/voiceRecord/types.ts +3 -3
|
@@ -26,9 +26,9 @@ const VoiceRecord = ({
|
|
|
26
26
|
const {
|
|
27
27
|
recorderState
|
|
28
28
|
} = (0, _useVoiceRecorder.useVoiceRecorder)(model);
|
|
29
|
-
const [isRecording,
|
|
29
|
+
const [isRecording, currentRecord] = (0, _effectorReact.useUnit)([model.recorderModel.$voiceRecordState, model.$currentRecord]);
|
|
30
30
|
const isDisabled = (0, _effectorReact.useUnit)(model.$isDisabled);
|
|
31
|
-
const isExpanded = !!(isRecording ||
|
|
31
|
+
const isExpanded = !!(isRecording || currentRecord);
|
|
32
32
|
const {
|
|
33
33
|
containerAnimatedStyle
|
|
34
34
|
} = (0, _useVoiceRecorderAnimation.useVoiceRecorderAnimation)(isExpanded);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_VoiceRecordButton","_react","_interopRequireWildcard","_reactNativeUi","_VoiceRecordDeleteButton","_VoiceRecordDevider","_VoiceRecordTimer","_interopRequireDefault","_reactNativeReanimated","_useVoiceRecorder","_useVoiceRecorderAnimation","_effectorReact","_jsxRuntime","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","VoiceRecord","style","model","recorderState","useVoiceRecorder","isRecording","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_VoiceRecordButton","_react","_interopRequireWildcard","_reactNativeUi","_VoiceRecordDeleteButton","_VoiceRecordDevider","_VoiceRecordTimer","_interopRequireDefault","_reactNativeReanimated","_useVoiceRecorder","_useVoiceRecorderAnimation","_effectorReact","_jsxRuntime","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","VoiceRecord","style","model","recorderState","useVoiceRecorder","isRecording","currentRecord","useUnit","recorderModel","$voiceRecordState","$currentRecord","isDisabled","$isDisabled","isExpanded","containerAnimatedStyle","useVoiceRecorderAnimation","cleanup","recorder","getStatus","stop","reset","useEffect","jsxs","View","styles","container","children","jsx","VoiceRecordButton","entering","FadeIn","exiting","FadeOut","expendedContainer","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":[]}
|
|
@@ -12,16 +12,8 @@ var _constants = require("../constants.js");
|
|
|
12
12
|
var _effectorReact = require("effector-react");
|
|
13
13
|
const useVoiceRecorder = model => {
|
|
14
14
|
const player = (0, _expoAudio.useAudioPlayer)();
|
|
15
|
-
const
|
|
16
|
-
const recorder = (0, _expoAudio.useAudioRecorder)(_expoAudio.RecordingPresets.LOW_QUALITY,
|
|
17
|
-
if (status.error) {
|
|
18
|
-
model.notification.error(`Recorder error: ${status.error}`);
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
if (status.isFinished && status.url) {
|
|
22
|
-
model.setUri(status.url);
|
|
23
|
-
}
|
|
24
|
-
});
|
|
15
|
+
const currentRecord = (0, _effectorReact.useUnit)(model.$currentRecord);
|
|
16
|
+
const recorder = (0, _expoAudio.useAudioRecorder)(_expoAudio.RecordingPresets.LOW_QUALITY, model.recordingStatusUpdate);
|
|
25
17
|
const recorderState = (0, _expoAudio.useAudioRecorderState)(recorder);
|
|
26
18
|
(0, _react.useEffect)(() => {
|
|
27
19
|
if (recorderState.durationMillis >= _constants.VOICE_RECORDER_MAX_DURATION_MS && recorderState.isRecording) {
|
|
@@ -42,14 +34,14 @@ const useVoiceRecorder = model => {
|
|
|
42
34
|
return removeListener;
|
|
43
35
|
}, []);
|
|
44
36
|
(0, _react.useEffect)(() => {
|
|
45
|
-
if (
|
|
37
|
+
if (currentRecord?.uri) {
|
|
46
38
|
const getDuration = async () => {
|
|
47
|
-
const durationMs = await (0, _helpers.getAudioDurationMs)(
|
|
39
|
+
const durationMs = await (0, _helpers.getAudioDurationMs)(currentRecord.uri, player);
|
|
48
40
|
model.recorderModel.setAudioFileDurationMs(durationMs || 0);
|
|
49
41
|
};
|
|
50
42
|
getDuration();
|
|
51
43
|
}
|
|
52
|
-
}, [
|
|
44
|
+
}, [currentRecord?.uri]);
|
|
53
45
|
(0, _react.useEffect)(() => {
|
|
54
46
|
if (recorderState.isRecording) {
|
|
55
47
|
model.recorderModel.setVoiceRecordState(_constants.VoiceRecorderState.RECORDING);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_expoAudio","require","_helpers","_react","_reactNativeUi","_constants","_effectorReact","useVoiceRecorder","model","player","useAudioPlayer","
|
|
1
|
+
{"version":3,"names":["_expoAudio","require","_helpers","_react","_reactNativeUi","_constants","_effectorReact","useVoiceRecorder","model","player","useAudioPlayer","currentRecord","useUnit","$currentRecord","recorder","useAudioRecorder","RecordingPresets","LOW_QUALITY","recordingStatusUpdate","recorderState","useAudioRecorderState","useEffect","durationMillis","VOICE_RECORDER_MAX_DURATION_MS","isRecording","recorderModel","stop","IS_WEB","getAvailableInputs","then","inputs","setAvailableInputs","removeListener","addAudioInputsListenerWeb","devices","uri","getDuration","durationMs","getAudioDurationMs","setAudioFileDurationMs","setVoiceRecordState","VoiceRecorderState","RECORDING","PAUSED","IDLE","reset","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/hooks/useVoiceRecorder.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAMA,IAAAC,QAAA,GAAAD,OAAA;AAEA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,cAAA,GAAAL,OAAA;AAEO,MAAMM,gBAAgB,GAAIC,KAAuB,IAAK;EAC3D,MAAMC,MAAM,GAAG,IAAAC,yBAAc,EAAC,CAAC;EAC/B,MAAMC,aAAa,GAAG,IAAAC,sBAAO,EAACJ,KAAK,CAACK,cAAc,CAAC;EAEnD,MAAMC,QAAQ,GAAG,IAAAC,2BAAgB,EAACC,2BAAgB,CAACC,WAAW,EAAET,KAAK,CAACU,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;MACAhB,KAAK,CAACiB,aAAa,CAACC,IAAI,CAAC,CAAC;IAC5B;EACF,CAAC,EAAE,CAACP,aAAa,CAACG,cAAc,CAAC,CAAC;EAElC,IAAAD,gBAAS,EAAC,MAAM;IACd,IAAI,CAACM,qBAAM,EAAE;MACX;MACA,IAAAC,2BAAkB,EAACd,QAAQ,CAAC,CAACe,IAAI,CAAEC,MAAM,IAAK;QAC5CtB,KAAK,CAACiB,aAAa,CAACM,kBAAkB,CAACD,MAAM,CAAC;MAChD,CAAC,CAAC;MACF;IACF;IAEA,MAAME,cAAc,GAAG,IAAAC,kCAAyB,EAAEC,OAAO,IAAK;MAC5D1B,KAAK,CAACiB,aAAa,CAACM,kBAAkB,CAACG,OAAO,CAAC;IACjD,CAAC,CAAC;IAEF,OAAOF,cAAc;EACvB,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAX,gBAAS,EAAC,MAAM;IACd,IAAIV,aAAa,EAAEwB,GAAG,EAAE;MACtB,MAAMC,WAAW,GAAG,MAAAA,CAAA,KAAY;QAC9B,MAAMC,UAAU,GAAG,MAAM,IAAAC,2BAAkB,EAAC3B,aAAa,CAACwB,GAAG,EAAG1B,MAAM,CAAC;QACvED,KAAK,CAACiB,aAAa,CAACc,sBAAsB,CAACF,UAAU,IAAI,CAAC,CAAC;MAC7D,CAAC;MACDD,WAAW,CAAC,CAAC;IACf;EACF,CAAC,EAAE,CAACzB,aAAa,EAAEwB,GAAG,CAAC,CAAC;EAExB,IAAAd,gBAAS,EAAC,MAAM;IACd,IAAIF,aAAa,CAACK,WAAW,EAAE;MAC7BhB,KAAK,CAACiB,aAAa,CAACe,mBAAmB,CAACC,6BAAkB,CAACC,SAAS,CAAC;MACrE;IACF;IACA,IAAIvB,aAAa,CAACG,cAAc,GAAG,CAAC,EAAE;MACpCd,KAAK,CAACiB,aAAa,CAACe,mBAAmB,CAACC,6BAAkB,CAACE,MAAM,CAAC;MAClE;IACF;IACAnC,KAAK,CAACiB,aAAa,CAACe,mBAAmB,CAACC,6BAAkB,CAACG,IAAI,CAAC;IAEhE,OAAO,MAAM;MACXpC,KAAK,CAACiB,aAAa,CAACoB,KAAK,CAAC,CAAC;IAC7B,CAAC;EACH,CAAC,EAAE,CAAC1B,aAAa,CAAC,CAAC;EAEnB,IAAAE,gBAAS,EAAC,MAAM;IACdb,KAAK,CAACiB,aAAa,CAACX,QAAQ,GAAGA,QAAQ;EACzC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,OAAO;IAAEK;EAAc,CAAC;AAC1B,CAAC;AAAA2B,OAAA,CAAAvC,gBAAA,GAAAA,gBAAA","ignoreList":[]}
|
|
@@ -51,7 +51,7 @@ const VoiceRecordDeleteModal = ({
|
|
|
51
51
|
const isRecordingInProgress = (recorderState === _constants.VoiceRecorderState.PAUSED || recorderState === _constants.VoiceRecorderState.RECORDING) && durationMillis > 0;
|
|
52
52
|
const handleDelete = async () => {
|
|
53
53
|
if (isRecordingInProgress) {
|
|
54
|
-
await model.
|
|
54
|
+
await model.stopAndDiscard();
|
|
55
55
|
}
|
|
56
56
|
model.deleteCurrentRecording();
|
|
57
57
|
closeModal();
|
|
@@ -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","durationMillis","recorder","getStatus","isRecordingInProgress","VoiceRecorderState","PAUSED","RECORDING","handleDelete","
|
|
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","durationMillis","recorder","getStatus","isRecordingInProgress","VoiceRecorderState","PAUSED","RECORDING","handleDelete","stopAndDiscard","deleteCurrentRecording","useEffect","pause","record","BaseModal","container","modalContainer","header","content","footer","exports","StyleSheet","create","width","height","flexDirection","alignItems","gap","SPACING"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/modal/VoiceRecordDeleteModal.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,6 +12,7 @@ const AUDIO_MODE_CONFIG = {
|
|
|
12
12
|
allowsRecording: true
|
|
13
13
|
};
|
|
14
14
|
class RecorderModel {
|
|
15
|
+
stopResolver = null;
|
|
15
16
|
reset = (0, _effector.createEvent)();
|
|
16
17
|
setAudioFileDurationMs = (0, _effector.createEvent)();
|
|
17
18
|
setVoiceRecordState = (0, _effector.createEvent)();
|
|
@@ -29,9 +30,24 @@ class RecorderModel {
|
|
|
29
30
|
throw error;
|
|
30
31
|
}
|
|
31
32
|
});
|
|
32
|
-
stop = (0, _effector.createEffect)(
|
|
33
|
+
stop = (0, _effector.createEffect)(() => {
|
|
33
34
|
return this.recorder.stop();
|
|
34
35
|
});
|
|
36
|
+
stopAndGetCollectionItem() {
|
|
37
|
+
return new Promise(resolve => {
|
|
38
|
+
this.stopResolver = resolve;
|
|
39
|
+
this.recorder.stop();
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
resolveStopWithCollectionItem(item) {
|
|
43
|
+
if (this.stopResolver) {
|
|
44
|
+
this.stopResolver(item);
|
|
45
|
+
this.stopResolver = null;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
clearStopResolver() {
|
|
49
|
+
this.stopResolver = null;
|
|
50
|
+
}
|
|
35
51
|
}
|
|
36
52
|
exports.RecorderModel = RecorderModel;
|
|
37
53
|
//# sourceMappingURL=Recorder.model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_effector","require","_expoAudio","_constants","AUDIO_MODE_CONFIG","playsInSilentMode","allowsRecording","RecorderModel","reset","createEvent","setAudioFileDurationMs","setVoiceRecordState","setAvailableInputs","$audioFileDurationMs","restore","$voiceRecordState","VoiceRecorderState","IDLE","$availableInputs","start","createEffect","setAudioModeAsync","recorder","prepareToRecordAsync","record","error","console","stop","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;
|
|
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","stopAndGetCollectionItem","Promise","resolve","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,OAAO,IAAI,CAACE,QAAQ,CAACK,IAAI,CAAC,CAAC;EAC7B,CAAC,CAAC;EAEKC,wBAAwBA,CAAA,EAAuC;IACpE,OAAO,IAAIC,OAAO,CAAEC,OAAO,IAAK;MAC9B,IAAI,CAACvB,YAAY,GAAGuB,OAAO;MAC3B,IAAI,CAACR,QAAQ,CAACK,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC;EACJ;EAEOI,6BAA6BA,CAACC,IAA+B,EAAQ;IAC1E,IAAI,IAAI,CAACzB,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACyB,IAAI,CAAC;MACvB,IAAI,CAACzB,YAAY,GAAG,IAAI;IAC1B;EACF;EAEO0B,iBAAiBA,CAAA,EAAS;IAC/B,IAAI,CAAC1B,YAAY,GAAG,IAAI;EAC1B;AACF;AAAC2B,OAAA,CAAA5B,aAAA,GAAAA,aAAA","ignoreList":[]}
|
|
@@ -9,15 +9,16 @@ var _helpers = require("../helpers.js");
|
|
|
9
9
|
var _index = require("../../../shared/translation/index.js");
|
|
10
10
|
var _RecorderModel = require("./Recorder.model.js");
|
|
11
11
|
var _VoiceRecordCollection = require("./VoiceRecordCollection.js");
|
|
12
|
+
var _constants = require("../constants.js");
|
|
12
13
|
class VoiceRecordModel {
|
|
14
|
+
shouldDiscardRecording = false;
|
|
13
15
|
setCurrentKey = (0, _effector.createEvent)();
|
|
14
|
-
setUri = (0, _effector.createEvent)();
|
|
15
16
|
setCurrentRecord = (0, _effector.createEvent)();
|
|
16
17
|
reset = (0, _effector.createEvent)();
|
|
17
18
|
setIsDisabled = (0, _effector.createEvent)();
|
|
19
|
+
startAudioUpload = (0, _effector.createEvent)();
|
|
18
20
|
$currentKey = (0, _effector.restore)(this.setCurrentKey, '');
|
|
19
|
-
$currentRecord = (0, _effector.
|
|
20
|
-
$uri = (0, _effector.restore)(this.setUri, '').reset(this.reset);
|
|
21
|
+
$currentRecord = (0, _effector.restore)(this.setCurrentRecord, null).reset(this.reset);
|
|
21
22
|
$isDisabled = (0, _effector.restore)(this.setIsDisabled, false);
|
|
22
23
|
deleteCurrentRecording = (0, _effector.attach)({
|
|
23
24
|
source: this.$currentKey,
|
|
@@ -55,6 +56,26 @@ class VoiceRecordModel {
|
|
|
55
56
|
}
|
|
56
57
|
return this.recorderModel.start();
|
|
57
58
|
});
|
|
59
|
+
stopAndDiscard = (0, _effector.createEffect)(async () => {
|
|
60
|
+
this.shouldDiscardRecording = true;
|
|
61
|
+
await this.recorderModel.stop();
|
|
62
|
+
this.recorderModel.clearStopResolver();
|
|
63
|
+
this.recorderModel.reset();
|
|
64
|
+
});
|
|
65
|
+
recordingStatusUpdate = status => {
|
|
66
|
+
if (status.error) {
|
|
67
|
+
this.notification.error(`Recorder error: ${status.error}`);
|
|
68
|
+
this.recorderModel.clearStopResolver();
|
|
69
|
+
this.shouldDiscardRecording = false;
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
if (status.isFinished && status.url) {
|
|
73
|
+
if (!this.shouldDiscardRecording) {
|
|
74
|
+
this.startAudioUpload(status.url);
|
|
75
|
+
}
|
|
76
|
+
this.shouldDiscardRecording = false;
|
|
77
|
+
}
|
|
78
|
+
};
|
|
58
79
|
constructor({
|
|
59
80
|
api,
|
|
60
81
|
notification,
|
|
@@ -67,6 +88,8 @@ class VoiceRecordModel {
|
|
|
67
88
|
this.collection = new _VoiceRecordCollection.VoiceRecordsCollection();
|
|
68
89
|
this.setupUploadHandler();
|
|
69
90
|
this.setupCurrentRecordSync();
|
|
91
|
+
this.setupUriSync();
|
|
92
|
+
this.resetActiveRecordingOnProblemSwitch();
|
|
70
93
|
}
|
|
71
94
|
abortUploadIfInProgress(recordingItem) {
|
|
72
95
|
if (!recordingItem?.id && recordingItem?.controller) {
|
|
@@ -103,17 +126,20 @@ class VoiceRecordModel {
|
|
|
103
126
|
if (error.name === 'CanceledError') return;
|
|
104
127
|
this.notification.error((0, _index.t)('voiceRecorder.uploadFailed'));
|
|
105
128
|
});
|
|
106
|
-
|
|
129
|
+
const collectionItem = {
|
|
107
130
|
durationMs,
|
|
108
131
|
audioUploadPromise,
|
|
109
132
|
controller,
|
|
110
133
|
uri
|
|
111
|
-
}
|
|
134
|
+
};
|
|
135
|
+
this.collection.add(currentKey, collectionItem);
|
|
136
|
+
this.setCurrentRecord(collectionItem);
|
|
137
|
+
this.recorderModel.resolveStopWithCollectionItem(collectionItem);
|
|
112
138
|
return audioUploadPromise;
|
|
113
139
|
}
|
|
114
140
|
setupUploadHandler() {
|
|
115
141
|
(0, _effector.sample)({
|
|
116
|
-
clock: this.
|
|
142
|
+
clock: this.startAudioUpload,
|
|
117
143
|
source: this.$currentKey,
|
|
118
144
|
filter: (currentKey, uri) => !!uri && !!currentKey,
|
|
119
145
|
fn: (currentKey, uri) => ({
|
|
@@ -129,6 +155,13 @@ class VoiceRecordModel {
|
|
|
129
155
|
}))
|
|
130
156
|
});
|
|
131
157
|
}
|
|
158
|
+
setupUriSync() {
|
|
159
|
+
(0, _effector.sample)({
|
|
160
|
+
source: this.$currentRecord,
|
|
161
|
+
fn: record => record?.uri || '',
|
|
162
|
+
target: (0, _effector.createStore)('').reset(this.reset)
|
|
163
|
+
});
|
|
164
|
+
}
|
|
132
165
|
setupCurrentRecordSync() {
|
|
133
166
|
(0, _effector.sample)({
|
|
134
167
|
source: this.$currentKey,
|
|
@@ -142,12 +175,17 @@ class VoiceRecordModel {
|
|
|
142
175
|
if (recordingItem.durationMs) {
|
|
143
176
|
this.recorderModel.setAudioFileDurationMs(recordingItem.durationMs);
|
|
144
177
|
}
|
|
145
|
-
if (recordingItem.uri) {
|
|
146
|
-
this.setUri(recordingItem.uri);
|
|
147
|
-
}
|
|
148
178
|
})
|
|
149
179
|
});
|
|
150
180
|
}
|
|
181
|
+
resetActiveRecordingOnProblemSwitch() {
|
|
182
|
+
(0, _effector.sample)({
|
|
183
|
+
clock: this.$currentKey,
|
|
184
|
+
source: this.recorderModel.$voiceRecordState,
|
|
185
|
+
filter: state => state === _constants.VoiceRecorderState.RECORDING,
|
|
186
|
+
target: this.stopAndDiscard
|
|
187
|
+
});
|
|
188
|
+
}
|
|
151
189
|
}
|
|
152
190
|
exports.VoiceRecordModel = VoiceRecordModel;
|
|
153
191
|
//# sourceMappingURL=VoiceRecord.model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_effector","require","_helpers","_index","_RecorderModel","_VoiceRecordCollection","VoiceRecordModel","
|
|
1
|
+
{"version":3,"names":["_effector","require","_helpers","_index","_RecorderModel","_VoiceRecordCollection","_constants","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","setupUriSync","resetActiveRecordingOnProblemSwitch","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","record","createStore","setAudioFileDurationMs","$voiceRecordState","state","VoiceRecorderState","RECORDING","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/model/VoiceRecord.model.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["VoiceRecordsCollection","collection","Map","add","key","item","set","update","existingItem","get","delete","clear","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/model/VoiceRecordCollection.ts"],"mappings":";;;;;;AAEO,MAAMA,sBAAsB,CAAC;EAClBC,UAAU,
|
|
1
|
+
{"version":3,"names":["VoiceRecordsCollection","collection","Map","add","key","item","set","update","existingItem","get","delete","clear","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/model/VoiceRecordCollection.ts"],"mappings":";;;;;;AAEO,MAAMA,sBAAsB,CAAC;EAClBC,UAAU,GAA2C,IAAIC,GAAG,CAAC,CAAC;EAEvEC,GAAGA,CAACC,GAAW,EAAEC,IAA+B,EAAE;IACvD,IAAI,CAACJ,UAAU,CAACK,GAAG,CAACF,GAAG,EAAEC,IAAI,CAAC;EAChC;EAEOE,MAAMA,CAACH,GAAW,EAAEC,IAAwC,EAAE;IACnE,MAAMG,YAAY,GAAG,IAAI,CAACP,UAAU,CAACQ,GAAG,CAACL,GAAG,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,CAACH,UAAU,CAACK,GAAG,CAACF,GAAG,EAAE;MAAE,GAAGI,YAAY;MAAE,GAAGH;IAAK,CAAC,CAAC;EACxD;EAEOK,MAAMA,CAACN,GAAW,EAAE;IACzB,IAAI,CAACH,UAAU,CAACS,MAAM,CAACN,GAAG,CAAC;EAC7B;EAEOK,GAAGA,CAACL,GAAW,EAAE;IACtB,OAAO,IAAI,CAACH,UAAU,CAACQ,GAAG,CAACL,GAAG,CAAC;EACjC;EAEOO,KAAKA,CAAA,EAAG;IACb,IAAI,CAACV,UAAU,CAACU,KAAK,CAAC,CAAC;EACzB;AACF;AAACC,OAAA,CAAAZ,sBAAA,GAAAA,sBAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["MATH_AREA_UNITS","MATH_LENGTH_UNITS","MATH_TIME_UNITS","MATH_VOLUME_UNITS","MATH_WEIGHT_UNITS","RulerIcon","RectangleIcon","VolumeIcon","WeightIcon","KeyboardUnitsGroupType","MathEntryKeyboardGroupId","TimeIcon","MATH_ENTRY_LENGTH_UNITS_SW_KEYBOARD_GROUPS","id","LENGTH_UNITS_SW","keys","MILLIMETER","CENTIMETER","DECIMETER","METER","KILOMETER","MILE_SE","MATH_ENTRY_LENGTH_UNITS_US_KEYBOARD_GROUPS","LENGTH_UNITS_US","INCH","FOOT","YARD","MILE","MATH_ENTRY_AREA_UNITS_SW_KEYBOARD_GROUPS","AREA_UNITS_SW","SQUARE_MILLIMETER","SQUARE_CENTIMETER","SQUARE_DECIMETER","SQUARE_METER","SQUARE_KILOMETER","HECTARE","MATH_ENTRY_AREA_UNITS_US_KEYBOARD_GROUPS","AREA_UNITS_US","SQUARE_INCH","SQUARE_FOOT","SQUARE_YARD","SQUARE_MILE","MATH_ENTRY_AREA_UNITS_UK_KEYBOARD_GROUPS","AREA_UNITS_UK","MATH_ENTRY_VOLUME_UNITS_SW_KEYBOARD_GROUPS","VOLUME_UNITS_SW","CUBIC_MILLIMETER","CUBIC_CENTIMETER","CUBIC_DECIMETER","CUBIC_METER","CUBIC_KILOMETER","MILLILITER","CL","DL","LITER_SE","MATH_ENTRY_VOLUME_UNITS_US_KEYBOARD_GROUPS","VOLUME_UNITS_US","MILLILITER_SE","GAL","CUBIC_INCH","CUBIC_FOOT","CUBIC_YARD","CUBIC_MILE","CUP","FLOZ","MATH_ENTRY_VOLUME_UNITS_UK_KEYBOARD_GROUPS","VOLUME_UNITS_UK","MATH_ENTRY_WEIGHT_UNITS_SW_KEYBOARD_GROUPS","WEIGHT_UNITS_SW","MG","G","HG","KG","T","MATH_ENTRY_TIME_UNITS_SW_KEYBOARD_GROUPS","TIME_SW","S","M","H","MATH_ENTRY_WEIGHT_UNITS_US_KEYBOARD_GROUPS","WEIGHT_UNITS_US","OZ","LB","TON","UNITS_KEYBOARD_GROUPS","Map","LENGTH","icon","AREA","VOLUME","WEIGHT","TIME"],"sourceRoot":"../../../../../../src","sources":["features/keyboard/components/UnitsLayout/keyboardGroups.ts"],"mappings":";;AAAA,SACEA,eAAe,EACfC,iBAAiB,EACjBC,eAAe,EACfC,iBAAiB,EACjBC,iBAAiB,QACZ,qCAAkC;AACzC,SAASC,SAAS,QAAQ,4BAA4B;AACtD,SAASC,aAAa,QAAQ,2CAAwC;AACtE,SAASC,UAAU,QAAQ,wCAAqC;AAChE,SAASC,UAAU,QAAQ,wCAAqC;AAChE,SAASC,sBAAsB,QAA4B,YAAS;AACpE,SAASC,wBAAwB,QAAQ,iCAA8B;AACvE,SAASC,QAAQ,QAAQ,sCAAmC;AAE5D,OAAO,MAAMC,0CAA8D,GAAG;EAC5EC,EAAE,EAAEH,wBAAwB,CAACI,eAAe;EAC5CC,IAAI,EAAE,CACJ,CACEd,iBAAiB,CAACe,UAAU,EAC5Bf,iBAAiB,CAACgB,UAAU,EAC5BhB,iBAAiB,CAACiB,SAAS,EAC3BjB,iBAAiB,CAACkB,KAAK,CACxB,EACD,CAAClB,iBAAiB,CAACmB,SAAS,EAAEnB,iBAAiB,CAACoB,OAAO,CAAC;AAE5D,CAAC;AAED,OAAO,MAAMC,0CAA8D,GAAG;EAC5ET,EAAE,EAAEH,wBAAwB,CAACa,eAAe;EAC5CR,IAAI,EAAE,CACJ,CACEd,iBAAiB,CAACe,UAAU,EAC5Bf,iBAAiB,CAACgB,UAAU,EAC5BhB,iBAAiB,CAACiB,SAAS,EAC3BjB,iBAAiB,CAACkB,KAAK,EACvBlB,iBAAiB,CAACmB,SAAS,CAC5B,EACD,CACEnB,iBAAiB,CAACuB,IAAI,EACtBvB,iBAAiB,CAACwB,IAAI,EACtBxB,iBAAiB,CAACyB,IAAI,EACtBzB,iBAAiB,CAAC0B,IAAI,CACvB;AAEL,CAAC;AAED,OAAO,MAAMC,wCAA4D,GAAG;EAC1Ef,EAAE,EAAEH,wBAAwB,CAACmB,aAAa;EAC1Cd,IAAI,EAAE,CACJ,CACEf,eAAe,CAAC8B,iBAAiB,EACjC9B,eAAe,CAAC+B,iBAAiB,EACjC/B,eAAe,CAACgC,gBAAgB,EAChChC,eAAe,CAACiC,YAAY,EAC5BjC,eAAe,CAACkC,gBAAgB,CACjC,EACD,CAAClC,eAAe,CAACmC,OAAO,CAAC;AAE7B,CAAC;AAED,OAAO,MAAMC,wCAA4D,GAAG;EAC1EvB,EAAE,EAAEH,wBAAwB,CAAC2B,aAAa;EAC1CtB,IAAI,EAAE,CACJ,CACEf,eAAe,CAAC8B,iBAAiB,EACjC9B,eAAe,CAAC+B,iBAAiB,EACjC/B,eAAe,CAACgC,gBAAgB,EAChChC,eAAe,CAACiC,YAAY,EAC5BjC,eAAe,CAACkC,gBAAgB,CACjC,EACD,CACElC,eAAe,CAACsC,WAAW,EAC3BtC,eAAe,CAACuC,WAAW,EAC3BvC,eAAe,CAACwC,WAAW,EAC3BxC,eAAe,CAACyC,WAAW,CAC5B;AAEL,CAAC;AAED,OAAO,MAAMC,wCAA4D,GAAG;EAC1E7B,EAAE,EAAEH,wBAAwB,CAACiC,aAAa;EAC1C5B,IAAI,EAAE,CACJ,CACEf,eAAe,CAAC8B,iBAAiB,EACjC9B,eAAe,CAAC+B,iBAAiB,EACjC/B,eAAe,CAACgC,gBAAgB,EAChChC,eAAe,CAACiC,YAAY,EAC5BjC,eAAe,CAACkC,gBAAgB,CACjC,EACD,CACElC,eAAe,CAACsC,WAAW,EAC3BtC,eAAe,CAACuC,WAAW,EAC3BvC,eAAe,CAACwC,WAAW,EAC3BxC,eAAe,CAACyC,WAAW,CAC5B;AAEL,CAAC;AAED,OAAO,MAAMG,0CAA8D,GAAG;EAC5E/B,EAAE,EAAEH,wBAAwB,CAACmC,eAAe;EAC5C9B,IAAI,EAAE,CACJ,CACEZ,iBAAiB,CAAC2C,gBAAgB,EAClC3C,iBAAiB,CAAC4C,gBAAgB,EAClC5C,iBAAiB,CAAC6C,eAAe,EACjC7C,iBAAiB,CAAC8C,WAAW,EAC7B9C,iBAAiB,CAAC+C,eAAe,CAClC,EACD,CACE/C,iBAAiB,CAACgD,UAAU,EAC5BhD,iBAAiB,CAACiD,EAAE,EACpBjD,iBAAiB,CAACkD,EAAE,EACpBlD,iBAAiB,CAACmD,QAAQ,CAC3B;AAEL,CAAC;AAED,OAAO,MAAMC,0CAA8D,GAAG;EAC5E1C,EAAE,EAAEH,wBAAwB,CAAC8C,eAAe;EAC5CzC,IAAI,EAAE,CACJ,CACEZ,iBAAiB,CAAC2C,gBAAgB,EAClC3C,iBAAiB,CAAC4C,gBAAgB,EAClC5C,iBAAiB,CAAC8C,WAAW,EAC7B9C,iBAAiB,CAAC+C,eAAe,EACjC/C,iBAAiB,CAACsD,aAAa,EAC/BtD,iBAAiB,CAACuD,GAAG,CACtB,EACD,CACEvD,iBAAiB,CAACwD,UAAU,EAC5BxD,iBAAiB,CAACyD,UAAU,EAC5BzD,iBAAiB,CAAC0D,UAAU,EAC5B1D,iBAAiB,CAAC2D,UAAU,EAC5B3D,iBAAiB,CAAC4D,GAAG,EACrB5D,iBAAiB,CAAC6D,IAAI,CACvB;AAEL,CAAC;AAED,OAAO,MAAMC,0CAA8D,GAAG;EAC5EpD,EAAE,EAAEH,wBAAwB,CAACwD,eAAe;EAC5CnD,IAAI,EAAE,CACJ,CACEZ,iBAAiB,CAAC2C,gBAAgB,EAClC3C,iBAAiB,CAAC4C,gBAAgB,EAClC5C,iBAAiB,CAAC8C,WAAW,EAC7B9C,iBAAiB,CAAC+C,eAAe,EACjC/C,iBAAiB,CAACgD,UAAU,EAC5BhD,iBAAiB,CAACuD,GAAG,CACtB,EACD,CACEvD,iBAAiB,CAACwD,UAAU,EAC5BxD,iBAAiB,CAACyD,UAAU,EAC5BzD,iBAAiB,CAAC0D,UAAU,EAC5B1D,iBAAiB,CAAC2D,UAAU,EAC5B3D,iBAAiB,CAAC4D,GAAG,EACrB5D,iBAAiB,CAAC6D,IAAI,CACvB;AAEL,CAAC;AAED,OAAO,MAAMG,0CAA8D,GAAG;EAC5EtD,EAAE,EAAEH,wBAAwB,CAAC0D,eAAe;EAC5CrD,IAAI,EAAE,CACJ,CACEX,iBAAiB,CAACiE,EAAE,EACpBjE,iBAAiB,CAACkE,CAAC,EACnBlE,iBAAiB,CAACmE,EAAE,EACpBnE,iBAAiB,CAACoE,EAAE,EACpBpE,iBAAiB,CAACqE,CAAC,CACpB;AAEL,CAAC;AAED,OAAO,MAAMC,wCAA4D,GAAG;EAC1E7D,EAAE,EAAEH,wBAAwB,CAACiE,OAAO;EACpC5D,IAAI,EAAE,CAAC,CAACb,eAAe,CAAC0E,CAAC,EAAE1E,eAAe,CAAC2E,CAAC,EAAE3E,eAAe,CAAC4E,CAAC,CAAC;AAClE,CAAC;AAED,OAAO,MAAMC,0CAA8D,GAAG;EAC5ElE,EAAE,EAAEH,wBAAwB,CAACsE,eAAe;EAC5CjE,IAAI,EAAE,CACJ,CAACX,iBAAiB,CAACiE,EAAE,EAAEjE,iBAAiB,CAACkE,CAAC,EAAElE,iBAAiB,CAACoE,EAAE,EAAEpE,iBAAiB,CAACqE,CAAC,CAAC,EACtF,CAACrE,iBAAiB,CAAC6E,EAAE,EAAE7E,iBAAiB,CAAC8E,EAAE,EAAE9E,iBAAiB,CAAC+E,GAAG,CAAC;AAEvE,CAAC;AAED,OAAO,MAAMC,qBAAqB,GAAG,IAAIC,GAAG,CAAC,CAC3C,CACE5E,sBAAsB,CAAC6E,MAAM,EAC7B;EACEvE,IAAI,EAAEH,0CAA0C,CAACG,IAAI;EACrDwE,IAAI,EAAElF;AACR,CAAC,CACF,EACD,CACEI,sBAAsB,CAAC+E,IAAI,EAC3B;EAAEzE,IAAI,EAAEa,wCAAwC,CAACb,IAAI;EAAEwE,IAAI,EAAEjF;AAAc,CAAC,CAC7E,EACD,CACEG,sBAAsB,CAACgF,MAAM,EAC7B;EAAE1E,IAAI,EAAE6B,0CAA0C,CAAC7B,IAAI;EAAEwE,IAAI,EAAEhF;AAAW,CAAC,CAC5E,EACD,CACEE,sBAAsB,CAACiF,MAAM,EAC7B;EAAE3E,IAAI,EAAEoD,0CAA0C,CAACpD,IAAI;EAAEwE,IAAI,EAAE/E;AAAW,CAAC,CAC5E,EACD,CACEC,sBAAsB,CAACkF,IAAI,EAC3B;EAAE5E,IAAI,EAAE2D,wCAAwC,CAAC3D,IAAI;EAAEwE,IAAI,EAAE5E;AAAS,CAAC,CACxE,CACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","createElement","_createElement","View","StyleSheet","SPACING","ProblemSelectorButton","PROBLEM_SELECTOR_CONTENT_WIDTH","jsx","_jsx","ProblemSelector","buttons","length","style","styles","container","children","contentContainer","map","btn","key","create","alignItems","width","flexWrap","flexDirection","paddingVertical","gap"],"sourceRoot":"../../../../../src","sources":["features/problemSelector/components/ProblemSelector.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAAC,aAAA,IAAAC,cAAA,QAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,UAAU,QAAQ,cAAc;AAC/C,SAASC,OAAO,QAAQ,4BAA4B;AAEpD,SAASC,qBAAqB,QAAQ,4BAAyB;AAE/D,SAASC,8BAA8B,QAAQ,iBAAc;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAO7D,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAAEC;AAA8B,CAAC,KAAK;EACpE,IAAI,CAACA,OAAO,CAACC,MAAM,EAAE,OAAO,IAAI;EAEhC,oBACEH,IAAA,CAACN,IAAI;IAACU,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAC5BP,IAAA,CAACN,IAAI;MAACU,KAAK,EAAEC,MAAM,CAACG,gBAAiB;MAAAD,QAAA,EAClCL,OAAO,CAACO,GAAG,CAAEC,GAAG,iBACfjB,cAAA,CAACI,qBAAqB;QAAA,GAAKa,GAAG;QAAEC,GAAG,EAAED,GAAG,CAACC;MAAI,CAAE,CAChD;IAAC,CACE;EAAC,CACH,CAAC;AAEX,CAAC;AAED,MAAMN,MAAM,GAAGV,UAAU,CAACiB,MAAM,CAAC;EAC/BN,SAAS,EAAE;IAAEO,UAAU,EAAE;EAAS,CAAC;EACnCL,gBAAgB,EAAE;IAChBM,KAAK,EAAEhB,8BAA8B;IACrCiB,QAAQ,EAAE,MAAM;IAChBC,aAAa,EAAE,KAAK;IACpBC,eAAe,EAAErB,OAAO,CAAC,GAAG,CAAC;IAC7BsB,GAAG,EAAE;EACP;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -19,9 +19,9 @@ export const VoiceRecord = ({
|
|
|
19
19
|
const {
|
|
20
20
|
recorderState
|
|
21
21
|
} = useVoiceRecorder(model);
|
|
22
|
-
const [isRecording,
|
|
22
|
+
const [isRecording, currentRecord] = useUnit([model.recorderModel.$voiceRecordState, model.$currentRecord]);
|
|
23
23
|
const isDisabled = useUnit(model.$isDisabled);
|
|
24
|
-
const isExpanded = !!(isRecording ||
|
|
24
|
+
const isExpanded = !!(isRecording || currentRecord);
|
|
25
25
|
const {
|
|
26
26
|
containerAnimatedStyle
|
|
27
27
|
} = useVoiceRecorderAnimation(isExpanded);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StyleSheet","VoiceRecordButton","React","useEffect","COLORS","SPACING","VoiceRecordDeleteButton","VoiceRecordDevider","VoiceRecordTimer","Animated","FadeIn","FadeOut","useVoiceRecorder","useVoiceRecorderAnimation","useUnit","jsx","_jsx","jsxs","_jsxs","VoiceRecord","style","model","recorderState","isRecording","
|
|
1
|
+
{"version":3,"names":["StyleSheet","VoiceRecordButton","React","useEffect","COLORS","SPACING","VoiceRecordDeleteButton","VoiceRecordDevider","VoiceRecordTimer","Animated","FadeIn","FadeOut","useVoiceRecorder","useVoiceRecorderAnimation","useUnit","jsx","_jsx","jsxs","_jsxs","VoiceRecord","style","model","recorderState","isRecording","currentRecord","recorderModel","$voiceRecordState","$currentRecord","isDisabled","$isDisabled","isExpanded","containerAnimatedStyle","cleanup","recorder","getStatus","stop","reset","View","styles","container","children","entering","exiting","expendedContainer","timer","recordingFileDurationMs","durationMillis","onPress","events","deleteRecord","create","alignItems","padding","paddingBottom","backgroundColor","NEUTRAL_3","borderRadius","boxShadow","overflow","marginTop"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecord.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StyleSheet","TouchableOpacity","COLORS","TrashcanIcon","React","jsx","_jsx","VoiceRecordDeleteButton","onPress","isDisabled","style","styles","container","disabled","children","size","color","NEUTRAL_5","NEUTRAL_9","create","width","height","alignItems","justifyContent"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecordDeleteButton.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,gBAAgB,QAAQ,cAAc;AAC3D,SAASC,MAAM,EAAEC,YAAY,QAAQ,4BAA4B;AACjE,OAAOC,KAAK,MAAM,OAAO;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAOzB,OAAO,MAAMC,uBAAuB,GAAGA,CAAC;EAAEC,OAAO;EAAEC;AAAmC,CAAC,KAAK;EAC1F,oBACEH,IAAA,CAACL,gBAAgB;IAACS,KAAK,EAAEC,MAAM,CAACC,SAAU;IAACJ,OAAO,EAAEA,OAAQ;IAACK,QAAQ,EAAEJ,UAAW;IAAAK,QAAA,eAChFR,IAAA,CAACH,YAAY;MAACY,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEP,UAAU,GAAGP,MAAM,CAACe,SAAS,GAAGf,MAAM,CAACgB;IAAU,CAAE;EAAC,CACnE,CAAC;AAEvB,CAAC;AAED,MAAMP,MAAM,GAAGX,UAAU,CAACmB,MAAM,CAAC;EAC/BP,SAAS,EAAE;IACTQ,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -8,16 +8,8 @@ import { VOICE_RECORDER_MAX_DURATION_MS, VoiceRecorderState } from "../constants
|
|
|
8
8
|
import { useUnit } from 'effector-react';
|
|
9
9
|
export const useVoiceRecorder = model => {
|
|
10
10
|
const player = useAudioPlayer();
|
|
11
|
-
const
|
|
12
|
-
const recorder = useAudioRecorder(RecordingPresets.LOW_QUALITY,
|
|
13
|
-
if (status.error) {
|
|
14
|
-
model.notification.error(`Recorder error: ${status.error}`);
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
if (status.isFinished && status.url) {
|
|
18
|
-
model.setUri(status.url);
|
|
19
|
-
}
|
|
20
|
-
});
|
|
11
|
+
const currentRecord = useUnit(model.$currentRecord);
|
|
12
|
+
const recorder = useAudioRecorder(RecordingPresets.LOW_QUALITY, model.recordingStatusUpdate);
|
|
21
13
|
const recorderState = useAudioRecorderState(recorder);
|
|
22
14
|
useEffect(() => {
|
|
23
15
|
if (recorderState.durationMillis >= VOICE_RECORDER_MAX_DURATION_MS && recorderState.isRecording) {
|
|
@@ -38,14 +30,14 @@ export const useVoiceRecorder = model => {
|
|
|
38
30
|
return removeListener;
|
|
39
31
|
}, []);
|
|
40
32
|
useEffect(() => {
|
|
41
|
-
if (
|
|
33
|
+
if (currentRecord?.uri) {
|
|
42
34
|
const getDuration = async () => {
|
|
43
|
-
const durationMs = await getAudioDurationMs(
|
|
35
|
+
const durationMs = await getAudioDurationMs(currentRecord.uri, player);
|
|
44
36
|
model.recorderModel.setAudioFileDurationMs(durationMs || 0);
|
|
45
37
|
};
|
|
46
38
|
getDuration();
|
|
47
39
|
}
|
|
48
|
-
}, [
|
|
40
|
+
}, [currentRecord?.uri]);
|
|
49
41
|
useEffect(() => {
|
|
50
42
|
if (recorderState.isRecording) {
|
|
51
43
|
model.recorderModel.setVoiceRecordState(VoiceRecorderState.RECORDING);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RecordingPresets","useAudioPlayer","useAudioRecorder","useAudioRecorderState","addAudioInputsListenerWeb","getAudioDurationMs","getAvailableInputs","useEffect","IS_WEB","VOICE_RECORDER_MAX_DURATION_MS","VoiceRecorderState","useUnit","useVoiceRecorder","model","player","
|
|
1
|
+
{"version":3,"names":["RecordingPresets","useAudioPlayer","useAudioRecorder","useAudioRecorderState","addAudioInputsListenerWeb","getAudioDurationMs","getAvailableInputs","useEffect","IS_WEB","VOICE_RECORDER_MAX_DURATION_MS","VoiceRecorderState","useUnit","useVoiceRecorder","model","player","currentRecord","$currentRecord","recorder","LOW_QUALITY","recordingStatusUpdate","recorderState","durationMillis","isRecording","recorderModel","stop","then","inputs","setAvailableInputs","removeListener","devices","uri","getDuration","durationMs","setAudioFileDurationMs","setVoiceRecordState","RECORDING","PAUSED","IDLE","reset"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/hooks/useVoiceRecorder.ts"],"mappings":";;AAAA,SACEA,gBAAgB,EAChBC,cAAc,EACdC,gBAAgB,EAChBC,qBAAqB,QAChB,YAAY;AACnB,SAASC,yBAAyB,EAAEC,kBAAkB,EAAEC,kBAAkB,QAAQ,eAAY;AAE9F,SAASC,SAAS,QAAQ,OAAO;AACjC,SAASC,MAAM,QAAQ,4BAA4B;AACnD,SAASC,8BAA8B,EAAEC,kBAAkB,QAAQ,iBAAc;AACjF,SAASC,OAAO,QAAQ,gBAAgB;AAExC,OAAO,MAAMC,gBAAgB,GAAIC,KAAuB,IAAK;EAC3D,MAAMC,MAAM,GAAGb,cAAc,CAAC,CAAC;EAC/B,MAAMc,aAAa,GAAGJ,OAAO,CAACE,KAAK,CAACG,cAAc,CAAC;EAEnD,MAAMC,QAAQ,GAAGf,gBAAgB,CAACF,gBAAgB,CAACkB,WAAW,EAAEL,KAAK,CAACM,qBAAqB,CAAC;EAC5F,MAAMC,aAAa,GAAGjB,qBAAqB,CAACc,QAAQ,CAAC;EAErDV,SAAS,CAAC,MAAM;IACd,IACEa,aAAa,CAACC,cAAc,IAAIZ,8BAA8B,IAC9DW,aAAa,CAACE,WAAW,EACzB;MACAT,KAAK,CAACU,aAAa,CAACC,IAAI,CAAC,CAAC;IAC5B;EACF,CAAC,EAAE,CAACJ,aAAa,CAACC,cAAc,CAAC,CAAC;EAElCd,SAAS,CAAC,MAAM;IACd,IAAI,CAACC,MAAM,EAAE;MACX;MACAF,kBAAkB,CAACW,QAAQ,CAAC,CAACQ,IAAI,CAAEC,MAAM,IAAK;QAC5Cb,KAAK,CAACU,aAAa,CAACI,kBAAkB,CAACD,MAAM,CAAC;MAChD,CAAC,CAAC;MACF;IACF;IAEA,MAAME,cAAc,GAAGxB,yBAAyB,CAAEyB,OAAO,IAAK;MAC5DhB,KAAK,CAACU,aAAa,CAACI,kBAAkB,CAACE,OAAO,CAAC;IACjD,CAAC,CAAC;IAEF,OAAOD,cAAc;EACvB,CAAC,EAAE,EAAE,CAAC;EAENrB,SAAS,CAAC,MAAM;IACd,IAAIQ,aAAa,EAAEe,GAAG,EAAE;MACtB,MAAMC,WAAW,GAAG,MAAAA,CAAA,KAAY;QAC9B,MAAMC,UAAU,GAAG,MAAM3B,kBAAkB,CAACU,aAAa,CAACe,GAAG,EAAGhB,MAAM,CAAC;QACvED,KAAK,CAACU,aAAa,CAACU,sBAAsB,CAACD,UAAU,IAAI,CAAC,CAAC;MAC7D,CAAC;MACDD,WAAW,CAAC,CAAC;IACf;EACF,CAAC,EAAE,CAAChB,aAAa,EAAEe,GAAG,CAAC,CAAC;EAExBvB,SAAS,CAAC,MAAM;IACd,IAAIa,aAAa,CAACE,WAAW,EAAE;MAC7BT,KAAK,CAACU,aAAa,CAACW,mBAAmB,CAACxB,kBAAkB,CAACyB,SAAS,CAAC;MACrE;IACF;IACA,IAAIf,aAAa,CAACC,cAAc,GAAG,CAAC,EAAE;MACpCR,KAAK,CAACU,aAAa,CAACW,mBAAmB,CAACxB,kBAAkB,CAAC0B,MAAM,CAAC;MAClE;IACF;IACAvB,KAAK,CAACU,aAAa,CAACW,mBAAmB,CAACxB,kBAAkB,CAAC2B,IAAI,CAAC;IAEhE,OAAO,MAAM;MACXxB,KAAK,CAACU,aAAa,CAACe,KAAK,CAAC,CAAC;IAC7B,CAAC;EACH,CAAC,EAAE,CAAClB,aAAa,CAAC,CAAC;EAEnBb,SAAS,CAAC,MAAM;IACdM,KAAK,CAACU,aAAa,CAACN,QAAQ,GAAGA,QAAQ;EACzC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,OAAO;IAAEG;EAAc,CAAC;AAC1B,CAAC","ignoreList":[]}
|
|
@@ -45,7 +45,7 @@ export const VoiceRecordDeleteModal = ({
|
|
|
45
45
|
const isRecordingInProgress = (recorderState === VoiceRecorderState.PAUSED || recorderState === VoiceRecorderState.RECORDING) && durationMillis > 0;
|
|
46
46
|
const handleDelete = async () => {
|
|
47
47
|
if (isRecordingInProgress) {
|
|
48
|
-
await model.
|
|
48
|
+
await model.stopAndDiscard();
|
|
49
49
|
}
|
|
50
50
|
model.deleteCurrentRecording();
|
|
51
51
|
closeModal();
|
|
@@ -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","durationMillis","recorder","getStatus","isRecordingInProgress","PAUSED","RECORDING","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","VoiceRecordDeleteModal","modal","closeModal","params","model","recorderState","recorderModel","$voiceRecordState","durationMillis","recorder","getStatus","isRecordingInProgress","PAUSED","RECORDING","handleDelete","stopAndDiscard","deleteCurrentRecording","pause","record","container","modalContainer","header","content","footer","create","width","height","flexDirection","alignItems","gap"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/modal/VoiceRecordDeleteModal.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,6 +8,7 @@ const AUDIO_MODE_CONFIG = {
|
|
|
8
8
|
allowsRecording: true
|
|
9
9
|
};
|
|
10
10
|
export class RecorderModel {
|
|
11
|
+
stopResolver = null;
|
|
11
12
|
reset = createEvent();
|
|
12
13
|
setAudioFileDurationMs = createEvent();
|
|
13
14
|
setVoiceRecordState = createEvent();
|
|
@@ -25,8 +26,23 @@ export class RecorderModel {
|
|
|
25
26
|
throw error;
|
|
26
27
|
}
|
|
27
28
|
});
|
|
28
|
-
stop = createEffect(
|
|
29
|
+
stop = createEffect(() => {
|
|
29
30
|
return this.recorder.stop();
|
|
30
31
|
});
|
|
32
|
+
stopAndGetCollectionItem() {
|
|
33
|
+
return new Promise(resolve => {
|
|
34
|
+
this.stopResolver = resolve;
|
|
35
|
+
this.recorder.stop();
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
resolveStopWithCollectionItem(item) {
|
|
39
|
+
if (this.stopResolver) {
|
|
40
|
+
this.stopResolver(item);
|
|
41
|
+
this.stopResolver = null;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
clearStopResolver() {
|
|
45
|
+
this.stopResolver = null;
|
|
46
|
+
}
|
|
31
47
|
}
|
|
32
48
|
//# sourceMappingURL=Recorder.model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createEffect","createEvent","restore","setAudioModeAsync","VoiceRecorderState","AUDIO_MODE_CONFIG","playsInSilentMode","allowsRecording","RecorderModel","reset","setAudioFileDurationMs","setVoiceRecordState","setAvailableInputs","$audioFileDurationMs","$voiceRecordState","IDLE","$availableInputs","start","recorder","prepareToRecordAsync","record","error","console","stop"],"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;
|
|
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","stopAndGetCollectionItem","Promise","resolve","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,OAAO,IAAI,CAACmB,QAAQ,CAACK,IAAI,CAAC,CAAC;EAC7B,CAAC,CAAC;EAEKC,wBAAwBA,CAAA,EAAuC;IACpE,OAAO,IAAIC,OAAO,CAAEC,OAAO,IAAK;MAC9B,IAAI,CAAClB,YAAY,GAAGkB,OAAO;MAC3B,IAAI,CAACR,QAAQ,CAACK,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC;EACJ;EAEOI,6BAA6BA,CAACC,IAA+B,EAAQ;IAC1E,IAAI,IAAI,CAACpB,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACoB,IAAI,CAAC;MACvB,IAAI,CAACpB,YAAY,GAAG,IAAI;IAC1B;EACF;EAEOqB,iBAAiBA,CAAA,EAAS;IAC/B,IAAI,CAACrB,YAAY,GAAG,IAAI;EAC1B;AACF","ignoreList":[]}
|