@magmamath/students-features 0.9.106 → 0.9.107-rc.1
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 +82 -0
- package/dist/commonjs/features/voiceRecord/components/VoiceRecord.js.map +1 -0
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordButton.js +45 -0
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordButton.js.map +1 -0
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordDelete.js +32 -0
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordDelete.js.map +1 -0
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordDevider.js +27 -0
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordDevider.js.map +1 -0
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordTimer.js +44 -0
- package/dist/commonjs/features/voiceRecord/components/VoiceRecordTimer.js.map +1 -0
- package/dist/commonjs/features/voiceRecord/helpers.js +34 -0
- package/dist/commonjs/features/voiceRecord/helpers.js.map +1 -0
- package/dist/commonjs/features/voiceRecord/hooks/useVoiceRecorder.hook.js +36 -0
- package/dist/commonjs/features/voiceRecord/hooks/useVoiceRecorder.hook.js.map +1 -0
- package/dist/commonjs/features/voiceRecord/index.js +28 -0
- package/dist/commonjs/features/voiceRecord/index.js.map +1 -0
- package/dist/commonjs/features/voiceRecord/model/VoiceRecord.model.js +37 -0
- package/dist/commonjs/features/voiceRecord/model/VoiceRecord.model.js.map +1 -0
- package/dist/commonjs/features/voiceRecord/model/VoiceRecordApi.js +9 -0
- package/dist/commonjs/features/voiceRecord/model/VoiceRecordApi.js.map +1 -0
- package/dist/commonjs/index.js +12 -0
- package/dist/commonjs/index.js.map +1 -1
- package/dist/module/features/voiceRecord/components/VoiceRecord.js +74 -0
- package/dist/module/features/voiceRecord/components/VoiceRecord.js.map +1 -0
- package/dist/module/features/voiceRecord/components/VoiceRecordButton.js +39 -0
- package/dist/module/features/voiceRecord/components/VoiceRecordButton.js.map +1 -0
- package/dist/module/features/voiceRecord/components/VoiceRecordDelete.js +26 -0
- package/dist/module/features/voiceRecord/components/VoiceRecordDelete.js.map +1 -0
- package/dist/module/features/voiceRecord/components/VoiceRecordDevider.js +21 -0
- package/dist/module/features/voiceRecord/components/VoiceRecordDevider.js.map +1 -0
- package/dist/module/features/voiceRecord/components/VoiceRecordTimer.js +38 -0
- package/dist/module/features/voiceRecord/components/VoiceRecordTimer.js.map +1 -0
- package/dist/module/features/voiceRecord/helpers.js +28 -0
- package/dist/module/features/voiceRecord/helpers.js.map +1 -0
- package/dist/module/features/voiceRecord/hooks/useVoiceRecorder.hook.js +31 -0
- package/dist/module/features/voiceRecord/hooks/useVoiceRecorder.hook.js.map +1 -0
- package/dist/module/features/voiceRecord/index.js +5 -0
- package/dist/module/features/voiceRecord/index.js.map +1 -0
- package/dist/module/features/voiceRecord/model/VoiceRecord.model.js +32 -0
- package/dist/module/features/voiceRecord/model/VoiceRecord.model.js.map +1 -0
- package/dist/module/features/voiceRecord/model/VoiceRecordApi.js +4 -0
- package/dist/module/features/voiceRecord/model/VoiceRecordApi.js.map +1 -0
- package/dist/module/index.js +1 -0
- package/dist/module/index.js.map +1 -1
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecord.d.ts +10 -0
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecord.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecordButton.d.ts +10 -0
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecordButton.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecordDelete.d.ts +7 -0
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecordDelete.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecordDevider.d.ts +3 -0
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecordDevider.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecordTimer.d.ts +9 -0
- package/dist/typescript/commonjs/features/voiceRecord/components/VoiceRecordTimer.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voiceRecord/helpers.d.ts +4 -0
- package/dist/typescript/commonjs/features/voiceRecord/helpers.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voiceRecord/hooks/useVoiceRecorder.hook.d.ts +9 -0
- package/dist/typescript/commonjs/features/voiceRecord/hooks/useVoiceRecorder.hook.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voiceRecord/index.d.ts +3 -0
- package/dist/typescript/commonjs/features/voiceRecord/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voiceRecord/model/VoiceRecord.model.d.ts +17 -0
- package/dist/typescript/commonjs/features/voiceRecord/model/VoiceRecord.model.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voiceRecord/model/VoiceRecordApi.d.ts +3 -0
- package/dist/typescript/commonjs/features/voiceRecord/model/VoiceRecordApi.d.ts.map +1 -0
- package/dist/typescript/commonjs/index.d.ts +1 -0
- package/dist/typescript/commonjs/index.d.ts.map +1 -1
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecord.d.ts +10 -0
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecord.d.ts.map +1 -0
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecordButton.d.ts +10 -0
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecordButton.d.ts.map +1 -0
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecordDelete.d.ts +7 -0
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecordDelete.d.ts.map +1 -0
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecordDevider.d.ts +3 -0
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecordDevider.d.ts.map +1 -0
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecordTimer.d.ts +9 -0
- package/dist/typescript/module/features/voiceRecord/components/VoiceRecordTimer.d.ts.map +1 -0
- package/dist/typescript/module/features/voiceRecord/helpers.d.ts +4 -0
- package/dist/typescript/module/features/voiceRecord/helpers.d.ts.map +1 -0
- package/dist/typescript/module/features/voiceRecord/hooks/useVoiceRecorder.hook.d.ts +9 -0
- package/dist/typescript/module/features/voiceRecord/hooks/useVoiceRecorder.hook.d.ts.map +1 -0
- package/dist/typescript/module/features/voiceRecord/index.d.ts +3 -0
- package/dist/typescript/module/features/voiceRecord/index.d.ts.map +1 -0
- package/dist/typescript/module/features/voiceRecord/model/VoiceRecord.model.d.ts +17 -0
- package/dist/typescript/module/features/voiceRecord/model/VoiceRecord.model.d.ts.map +1 -0
- package/dist/typescript/module/features/voiceRecord/model/VoiceRecordApi.d.ts +3 -0
- package/dist/typescript/module/features/voiceRecord/model/VoiceRecordApi.d.ts.map +1 -0
- package/dist/typescript/module/index.d.ts +1 -0
- package/dist/typescript/module/index.d.ts.map +1 -1
- package/package.json +7 -3
- package/src/features/voiceRecord/components/VoiceRecord.tsx +78 -0
- package/src/features/voiceRecord/components/VoiceRecordButton.tsx +44 -0
- package/src/features/voiceRecord/components/VoiceRecordDelete.tsx +24 -0
- package/src/features/voiceRecord/components/VoiceRecordDevider.tsx +17 -0
- package/src/features/voiceRecord/components/VoiceRecordTimer.tsx +37 -0
- package/src/features/voiceRecord/helpers.ts +30 -0
- package/src/features/voiceRecord/hooks/useVoiceRecorder.hook.ts +39 -0
- package/src/features/voiceRecord/index.ts +2 -0
- package/src/features/voiceRecord/model/VoiceRecord.model.ts +41 -0
- package/src/features/voiceRecord/model/VoiceRecordApi.ts +1 -0
- package/src/index.ts +1 -0
- package/.editorconfig +0 -15
- package/.eslintignore +0 -2
- package/.eslintrc +0 -22
- package/.gitattributes +0 -3
- package/.github/actions/setup/action.yml +0 -37
- package/.github/workflows/ci.yml +0 -73
- package/.gitignore +0 -84
- package/.idea/.gitignore +0 -8
- package/.idea/codeStyles/Project.xml +0 -62
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/copilot.data.migration.agent.xml +0 -6
- package/.idea/copilot.data.migration.ask.xml +0 -6
- package/.idea/copilot.data.migration.ask2agent.xml +0 -6
- package/.idea/copilot.data.migration.edit.xml +0 -6
- package/.idea/inspectionProfiles/Project_Default.xml +0 -8
- package/.idea/jsLinters/eslint.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/prettier.xml +0 -7
- package/.idea/shelf/Uncommitted_changes_before_Checkout_at_30_12_2025,_11_06_[Changes]/shelved.patch +0 -18
- package/.idea/shelf/Uncommitted_changes_before_Checkout_at_30_12_2025,_11_07_[Changes]/shelved.patch +0 -18
- package/.idea/shelf/Uncommitted_changes_before_Checkout_at_30_12_2025__11_06__Changes_.xml +0 -4
- package/.idea/shelf/Uncommitted_changes_before_Checkout_at_30_12_2025__11_07__Changes_.xml +0 -4
- package/.idea/students-features.iml +0 -12
- package/.idea/vcs.xml +0 -6
- package/.idea/workspace.xml +0 -646
- package/.nvmrc +0 -1
- package/.prettierrc +0 -11
- package/.release-it.json +0 -17
- package/.watchmanconfig +0 -1
- package/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs +0 -541
- package/.yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs +0 -28
- package/.yarn/releases/yarn-3.6.1.cjs +0 -874
- package/babel.config.js +0 -5
- package/bob.config.js +0 -25
- package/example/.expo/README.md +0 -8
- package/example/.expo/devices.json +0 -3
- package/example/.expo/web/cache/production/images/favicon/favicon-24272cdaeff82cc5facdaccd982a6f05b60c4504704bbf94c19a6388659880bb-contain-transparent/favicon-48.png +0 -0
- package/example/app.json +0 -30
- package/example/assets/adaptive-icon.png +0 -0
- package/example/assets/favicon.png +0 -0
- package/example/assets/icon.png +0 -0
- package/example/assets/splash-icon.png +0 -0
- package/example/babel.config.js +0 -28
- package/example/index.js +0 -8
- package/example/metro.config.js +0 -18
- package/example/package.json +0 -25
- package/example/src/App.tsx +0 -8
- package/example/tsconfig.json +0 -6
- package/example/yarn.lock +0 -6552
- package/tsconfig.build.json +0 -4
- package/tsconfig.json +0 -34
- package/yarn.lock +0 -8623
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.VoiceRecord = void 0;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _VoiceRecordButton = require("./VoiceRecordButton.js");
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _reactNativeUi = require("@magmamath/react-native-ui");
|
|
11
|
+
var _VoiceRecordDelete = require("./VoiceRecordDelete.js");
|
|
12
|
+
var _VoiceRecordDevider = require("./VoiceRecordDevider.js");
|
|
13
|
+
var _VoiceRecordTimer = _interopRequireDefault(require("./VoiceRecordTimer.js"));
|
|
14
|
+
var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
|
|
15
|
+
var _useVoiceRecorderHook = require("../hooks/useVoiceRecorder.hook.js");
|
|
16
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
|
+
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); }
|
|
18
|
+
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; }
|
|
19
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
20
|
+
const CONTAINER_SIZES = {
|
|
21
|
+
COLLAPSED: 61,
|
|
22
|
+
EXPANDED: 152
|
|
23
|
+
};
|
|
24
|
+
const VoiceRecord = ({
|
|
25
|
+
style,
|
|
26
|
+
model
|
|
27
|
+
}) => {
|
|
28
|
+
const {
|
|
29
|
+
recorder,
|
|
30
|
+
recorderState,
|
|
31
|
+
player,
|
|
32
|
+
startRecording,
|
|
33
|
+
stopRecording
|
|
34
|
+
} = (0, _useVoiceRecorderHook.useVoiceRecorder)(model);
|
|
35
|
+
const aniamtedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
|
|
36
|
+
return {
|
|
37
|
+
height: (0, _reactNativeReanimated.withTiming)(recorderState.isRecording ? CONTAINER_SIZES.EXPANDED : CONTAINER_SIZES.COLLAPSED, {
|
|
38
|
+
duration: 280
|
|
39
|
+
})
|
|
40
|
+
};
|
|
41
|
+
}, [recorderState]);
|
|
42
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeReanimated.default.View, {
|
|
43
|
+
style: [styles.container, style, aniamtedStyle],
|
|
44
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_VoiceRecordButton.VoiceRecordButton
|
|
45
|
+
// onPress={() => setIsRecording((prev) => !prev)}
|
|
46
|
+
, {
|
|
47
|
+
onPress: recorderState.isRecording ? stopRecording : startRecording,
|
|
48
|
+
isRecording: recorderState.isRecording
|
|
49
|
+
}), recorderState.isRecording && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeReanimated.default.View, {
|
|
50
|
+
entering: _reactNativeReanimated.FadeIn,
|
|
51
|
+
exiting: _reactNativeReanimated.FadeOut,
|
|
52
|
+
style: styles.expendedContainer,
|
|
53
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_VoiceRecordTimer.default, {
|
|
54
|
+
style: styles.timer
|
|
55
|
+
//0:00 as default value and format mm:ss
|
|
56
|
+
,
|
|
57
|
+
time: recorderState.durationMillis ? new Date(recorderState.durationMillis).toISOString().substr(14, 5) : '0:00'
|
|
58
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_VoiceRecordDevider.VoiceRecordDevider, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_VoiceRecordDelete.VoiceRecordDelete, {
|
|
59
|
+
onPress: model.deleteFile
|
|
60
|
+
})]
|
|
61
|
+
})]
|
|
62
|
+
});
|
|
63
|
+
};
|
|
64
|
+
exports.VoiceRecord = VoiceRecord;
|
|
65
|
+
const styles = _reactNative.StyleSheet.create({
|
|
66
|
+
container: {
|
|
67
|
+
alignItems: 'center',
|
|
68
|
+
padding: 3,
|
|
69
|
+
paddingBottom: 6,
|
|
70
|
+
backgroundColor: _reactNativeUi.COLORS.NEUTRAL_3,
|
|
71
|
+
borderRadius: 32,
|
|
72
|
+
boxShadow: '0 1px 3px 0 rgba(51, 51, 51, 0.10), 0 0 1px 0 rgba(51, 51, 51, 0.40)',
|
|
73
|
+
overflow: 'hidden'
|
|
74
|
+
},
|
|
75
|
+
timer: {
|
|
76
|
+
marginTop: _reactNativeUi.SPACING[400]
|
|
77
|
+
},
|
|
78
|
+
expendedContainer: {
|
|
79
|
+
alignItems: 'center'
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
//# sourceMappingURL=VoiceRecord.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_VoiceRecordButton","_react","_interopRequireDefault","_reactNativeUi","_VoiceRecordDelete","_VoiceRecordDevider","_VoiceRecordTimer","_reactNativeReanimated","_interopRequireWildcard","_useVoiceRecorderHook","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","CONTAINER_SIZES","COLLAPSED","EXPANDED","VoiceRecord","style","model","recorder","recorderState","player","startRecording","stopRecording","useVoiceRecorder","aniamtedStyle","useAnimatedStyle","height","withTiming","isRecording","duration","jsxs","View","styles","container","children","jsx","VoiceRecordButton","onPress","entering","FadeIn","exiting","FadeOut","expendedContainer","timer","time","durationMillis","Date","toISOString","substr","VoiceRecordDevider","VoiceRecordDelete","deleteFile","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":[]}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.VoiceRecordButton = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNativeUi = require("@magmamath/react-native-ui");
|
|
9
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
|
+
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); }
|
|
11
|
+
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; }
|
|
12
|
+
const VoiceRecordButton = ({
|
|
13
|
+
style,
|
|
14
|
+
onPress,
|
|
15
|
+
isRecording
|
|
16
|
+
}) => {
|
|
17
|
+
const combinedStyles = (0, _react.useMemo)(() => {
|
|
18
|
+
return {
|
|
19
|
+
button: {
|
|
20
|
+
width: 50,
|
|
21
|
+
...style?.button
|
|
22
|
+
},
|
|
23
|
+
container: {
|
|
24
|
+
...style?.container
|
|
25
|
+
},
|
|
26
|
+
text: {
|
|
27
|
+
...style?.text
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
}, [style]);
|
|
31
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Button, {
|
|
32
|
+
onPress: onPress,
|
|
33
|
+
style: combinedStyles,
|
|
34
|
+
size: _reactNativeUi.ButtonSize.LARGE,
|
|
35
|
+
variant: _reactNativeUi.ButtonVariant.PRIMARY,
|
|
36
|
+
colorScheme: _reactNativeUi.ButtonColor.WHITE,
|
|
37
|
+
icon: isRecording ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.CheckIcon, {
|
|
38
|
+
size: 25
|
|
39
|
+
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.MicrophoneIcon, {
|
|
40
|
+
size: 19
|
|
41
|
+
})
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
exports.VoiceRecordButton = VoiceRecordButton;
|
|
45
|
+
//# sourceMappingURL=VoiceRecordButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeUi","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","VoiceRecordButton","style","onPress","isRecording","combinedStyles","useMemo","button","width","container","text","jsx","Button","size","ButtonSize","LARGE","variant","ButtonVariant","PRIMARY","colorScheme","ButtonColor","WHITE","icon","CheckIcon","MicrophoneIcon","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecordButton.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAMmC,IAAAE,WAAA,GAAAF,OAAA;AAAA,SAAAG,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,SAAAL,wBAAAK,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;AAU5B,MAAMW,iBAAiB,GAAGA,CAAC;EAAEC,KAAK;EAAEC,OAAO;EAAEC;AAAoC,CAAC,KAAK;EAC5F,MAAMC,cAAc,GAAG,IAAAC,cAAO,EAAC,MAAmB;IAChD,OAAO;MACLC,MAAM,EAAE;QACNC,KAAK,EAAE,EAAE;QACT,GAAIN,KAAK,EAAEK;MACb,CAAC;MACDE,SAAS,EAAE;QACT,GAAIP,KAAK,EAAEO;MACb,CAAC;MACDC,IAAI,EAAE;QACJ,GAAIR,KAAK,EAAEQ;MACb;IACF,CAAC;EACH,CAAC,EAAE,CAACR,KAAK,CAAC,CAAC;EAEX,oBACE,IAAAtB,WAAA,CAAA+B,GAAA,EAAChC,cAAA,CAAAiC,MAAM;IACLT,OAAO,EAAEA,OAAQ;IACjBD,KAAK,EAAEG,cAAe;IACtBQ,IAAI,EAAEC,yBAAU,CAACC,KAAM;IACvBC,OAAO,EAAEC,4BAAa,CAACC,OAAQ;IAC/BC,WAAW,EAAEC,0BAAW,CAACC,KAAM;IAC/BC,IAAI,EAAElB,WAAW,gBAAG,IAAAxB,WAAA,CAAA+B,GAAA,EAAChC,cAAA,CAAA4C,SAAS;MAACV,IAAI,EAAE;IAAG,CAAE,CAAC,gBAAG,IAAAjC,WAAA,CAAA+B,GAAA,EAAChC,cAAA,CAAA6C,cAAc;MAACX,IAAI,EAAE;IAAG,CAAE;EAAE,CAC5E,CAAC;AAEN,CAAC;AAAAY,OAAA,CAAAxB,iBAAA,GAAAA,iBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.VoiceRecordDelete = void 0;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _reactNativeUi = require("@magmamath/react-native-ui");
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
const VoiceRecordDelete = ({
|
|
13
|
+
onPress
|
|
14
|
+
}) => {
|
|
15
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
|
|
16
|
+
style: styles.container,
|
|
17
|
+
onPress: onPress,
|
|
18
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.TrashcanIcon, {
|
|
19
|
+
size: 20
|
|
20
|
+
})
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
exports.VoiceRecordDelete = VoiceRecordDelete;
|
|
24
|
+
const styles = _reactNative.StyleSheet.create({
|
|
25
|
+
container: {
|
|
26
|
+
width: 36,
|
|
27
|
+
height: 36,
|
|
28
|
+
alignItems: 'center',
|
|
29
|
+
justifyContent: 'center'
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
//# sourceMappingURL=VoiceRecordDelete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_reactNativeUi","_react","_interopRequireDefault","_jsxRuntime","e","__esModule","default","VoiceRecordDelete","onPress","jsx","TouchableOpacity","style","styles","container","children","TrashcanIcon","size","exports","StyleSheet","create","width","height","alignItems","justifyContent"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecordDelete.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAC,sBAAA,CAAAH,OAAA;AAAyB,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAG,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAMlB,MAAMG,iBAAiB,GAAGA,CAAC;EAAEC;AAAgC,CAAC,KAAK;EACxE,oBACE,IAAAL,WAAA,CAAAM,GAAA,EAACX,YAAA,CAAAY,gBAAgB;IAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;IAACL,OAAO,EAAEA,OAAQ;IAAAM,QAAA,eAC1D,IAAAX,WAAA,CAAAM,GAAA,EAACT,cAAA,CAAAe,YAAY;MAACC,IAAI,EAAE;IAAG,CAAE;EAAC,CACV,CAAC;AAEvB,CAAC;AAAAC,OAAA,CAAAV,iBAAA,GAAAA,iBAAA;AAED,MAAMK,MAAM,GAAGM,uBAAU,CAACC,MAAM,CAAC;EAC/BN,SAAS,EAAE;IACTO,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.VoiceRecordDevider = void 0;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _reactNativeUi = require("@magmamath/react-native-ui");
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
const VoiceRecordDevider = () => {
|
|
13
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
14
|
+
style: styles.container
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
exports.VoiceRecordDevider = VoiceRecordDevider;
|
|
18
|
+
const styles = _reactNative.StyleSheet.create({
|
|
19
|
+
container: {
|
|
20
|
+
height: 1,
|
|
21
|
+
borderRadius: 1,
|
|
22
|
+
width: 28,
|
|
23
|
+
margin: 8,
|
|
24
|
+
backgroundColor: _reactNativeUi.COLORS.NEUTRAL_6
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
//# sourceMappingURL=VoiceRecordDevider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_react","_interopRequireDefault","_reactNativeUi","_jsxRuntime","e","__esModule","default","VoiceRecordDevider","jsx","View","style","styles","container","exports","StyleSheet","create","height","borderRadius","width","margin","backgroundColor","COLORS","NEUTRAL_6"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecordDevider.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AAAmD,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAE,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE5C,MAAMG,kBAAkB,GAAGA,CAAA,KAAM;EACtC,oBAAO,IAAAJ,WAAA,CAAAK,GAAA,EAACV,YAAA,CAAAW,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC;EAAU,CAAE,CAAC;AAC1C,CAAC;AAAAC,OAAA,CAAAN,kBAAA,GAAAA,kBAAA;AAED,MAAMI,MAAM,GAAGG,uBAAU,CAACC,MAAM,CAAC;EAC/BH,SAAS,EAAE;IACTI,MAAM,EAAE,CAAC;IACTC,YAAY,EAAE,CAAC;IACfC,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,CAAC;IACTC,eAAe,EAAEC,qBAAM,CAACC;EAC1B;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.VoiceRecordTimer = void 0;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _reactNativeUi = require("@magmamath/react-native-ui");
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
const VoiceRecordTimer = ({
|
|
13
|
+
style,
|
|
14
|
+
time
|
|
15
|
+
}) => {
|
|
16
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
17
|
+
style: [styles.container, style],
|
|
18
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
|
|
19
|
+
style: styles.text,
|
|
20
|
+
children: time
|
|
21
|
+
})
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
exports.VoiceRecordTimer = VoiceRecordTimer;
|
|
25
|
+
var _default = exports.default = VoiceRecordTimer;
|
|
26
|
+
const styles = _reactNative.StyleSheet.create({
|
|
27
|
+
container: {
|
|
28
|
+
backgroundColor: _reactNativeUi.COLORS.NEUTRAL_1,
|
|
29
|
+
paddingHorizontal: 8,
|
|
30
|
+
paddingVertical: 2,
|
|
31
|
+
alignItems: 'center',
|
|
32
|
+
borderWidth: 0.5,
|
|
33
|
+
borderColor: _reactNativeUi.COLORS.NEUTRAL_4,
|
|
34
|
+
borderRadius: 18
|
|
35
|
+
},
|
|
36
|
+
text: {
|
|
37
|
+
color: _reactNativeUi.COLORS.NEUTRAL_10,
|
|
38
|
+
fontSize: 13,
|
|
39
|
+
fontWeight: '600',
|
|
40
|
+
lineHeight: 18,
|
|
41
|
+
textTransform: 'uppercase'
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
//# sourceMappingURL=VoiceRecordTimer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_reactNativeUi","_react","_interopRequireDefault","_jsxRuntime","e","__esModule","default","VoiceRecordTimer","style","time","jsx","View","styles","container","children","Typography","text","exports","_default","StyleSheet","create","backgroundColor","COLORS","NEUTRAL_1","paddingHorizontal","paddingVertical","alignItems","borderWidth","borderColor","NEUTRAL_4","borderRadius","color","NEUTRAL_10","fontSize","fontWeight","lineHeight","textTransform"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecordTimer.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAC,sBAAA,CAAAH,OAAA;AAAyB,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAG,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAOlB,MAAMG,gBAAgB,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAA4B,CAAC,KAAK;EAC1E,oBACE,IAAAN,WAAA,CAAAO,GAAA,EAACZ,YAAA,CAAAa,IAAI;IAACH,KAAK,EAAE,CAACI,MAAM,CAACC,SAAS,EAAEL,KAAK,CAAE;IAAAM,QAAA,eACrC,IAAAX,WAAA,CAAAO,GAAA,EAACV,cAAA,CAAAe,UAAU;MAACP,KAAK,EAAEI,MAAM,CAACI,IAAK;MAAAF,QAAA,EAAEL;IAAI,CAAa;EAAC,CAC/C,CAAC;AAEX,CAAC;AAAAQ,OAAA,CAAAV,gBAAA,GAAAA,gBAAA;AAAA,IAAAW,QAAA,GAAAD,OAAA,CAAAX,OAAA,GAEcC,gBAAgB;AAE/B,MAAMK,MAAM,GAAGO,uBAAU,CAACC,MAAM,CAAC;EAC/BP,SAAS,EAAE;IACTQ,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;EAChB,CAAC;EACDd,IAAI,EAAE;IACJe,KAAK,EAAET,qBAAM,CAACU,UAAU;IACxBC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,UAAU,EAAE,EAAE;IACdC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getAvailableInputs = exports.ensureRecordingPermissions = void 0;
|
|
7
|
+
var _reactNativeUi = require("@magmamath/react-native-ui");
|
|
8
|
+
var _expoAudio = require("expo-audio");
|
|
9
|
+
const ensureRecordingPermissions = async () => {
|
|
10
|
+
const {
|
|
11
|
+
status
|
|
12
|
+
} = await (0, _expoAudio.getRecordingPermissionsAsync)();
|
|
13
|
+
if (status !== 'granted') {
|
|
14
|
+
const {
|
|
15
|
+
granted
|
|
16
|
+
} = await (0, _expoAudio.requestRecordingPermissionsAsync)();
|
|
17
|
+
return granted;
|
|
18
|
+
}
|
|
19
|
+
return true;
|
|
20
|
+
};
|
|
21
|
+
exports.ensureRecordingPermissions = ensureRecordingPermissions;
|
|
22
|
+
const getAvailableInputs = async recorder => {
|
|
23
|
+
if (_reactNativeUi.IS_WEB) {
|
|
24
|
+
if (!navigator.mediaDevices?.enumerateDevices) return [];
|
|
25
|
+
const devices = await navigator.mediaDevices.enumerateDevices();
|
|
26
|
+
return devices.filter(d => d.kind === 'audioinput');
|
|
27
|
+
}
|
|
28
|
+
if (_reactNativeUi.IS_MOBILE) {
|
|
29
|
+
return await recorder.getAvailableInputs();
|
|
30
|
+
}
|
|
31
|
+
return [];
|
|
32
|
+
};
|
|
33
|
+
exports.getAvailableInputs = getAvailableInputs;
|
|
34
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNativeUi","require","_expoAudio","ensureRecordingPermissions","status","getRecordingPermissionsAsync","granted","requestRecordingPermissionsAsync","exports","getAvailableInputs","recorder","IS_WEB","navigator","mediaDevices","enumerateDevices","devices","filter","d","kind","IS_MOBILE"],"sourceRoot":"../../../../src","sources":["features/voiceRecord/helpers.ts"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAMO,MAAME,0BAA0B,GAAG,MAAAA,CAAA,KAAY;EACpD,MAAM;IAAEC;EAAO,CAAC,GAAG,MAAM,IAAAC,uCAA4B,EAAC,CAAC;EAEvD,IAAID,MAAM,KAAK,SAAS,EAAE;IACxB,MAAM;MAAEE;IAAQ,CAAC,GAAG,MAAM,IAAAC,2CAAgC,EAAC,CAAC;IAC5D,OAAOD,OAAO;EAChB;EAEA,OAAO,IAAI;AACb,CAAC;AAAAE,OAAA,CAAAL,0BAAA,GAAAA,0BAAA;AAEM,MAAMM,kBAAkB,GAAG,MAAOC,QAAuB,IAAK;EACnE,IAAIC,qBAAM,EAAE;IACV,IAAI,CAACC,SAAS,CAACC,YAAY,EAAEC,gBAAgB,EAAE,OAAO,EAAE;IAExD,MAAMC,OAAO,GAAG,MAAMH,SAAS,CAACC,YAAY,CAACC,gBAAgB,CAAC,CAAC;IAC/D,OAAOC,OAAO,CAACC,MAAM,CAAEC,CAAC,IAAKA,CAAC,CAACC,IAAI,KAAK,YAAY,CAAC;EACvD;EACA,IAAIC,wBAAS,EAAE;IACb,OAAO,MAAMT,QAAQ,CAACD,kBAAkB,CAAC,CAAC;EAC5C;EACA,OAAO,EAAE;AACX,CAAC;AAAAD,OAAA,CAAAC,kBAAA,GAAAA,kBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useVoiceRecorder = void 0;
|
|
7
|
+
var _expoAudio = require("expo-audio");
|
|
8
|
+
var _helpers = require("../helpers.js");
|
|
9
|
+
const useVoiceRecorder = model => {
|
|
10
|
+
const recorder = (0, _expoAudio.useAudioRecorder)(_expoAudio.RecordingPresets.LOW_QUALITY, status => console.log('Recording status:', status));
|
|
11
|
+
const recorderState = (0, _expoAudio.useAudioRecorderState)(recorder);
|
|
12
|
+
const player = (0, _expoAudio.useAudioPlayer)();
|
|
13
|
+
const startRecording = async () => {
|
|
14
|
+
if (!(await (0, _helpers.ensureRecordingPermissions)())) return model.showError('No microphone access');
|
|
15
|
+
await recorder.prepareToRecordAsync();
|
|
16
|
+
if (await (0, _helpers.getAvailableInputs)(recorder).then(inputs => inputs.length === 0)) {
|
|
17
|
+
return model.showError('No microphone found');
|
|
18
|
+
}
|
|
19
|
+
recorder.record();
|
|
20
|
+
};
|
|
21
|
+
const stopRecording = async () => {
|
|
22
|
+
await recorder.stop();
|
|
23
|
+
recorder.uri && console.log('Recording stopped and stored at', recorder.uri);
|
|
24
|
+
player.replace(recorder.uri);
|
|
25
|
+
player.play();
|
|
26
|
+
};
|
|
27
|
+
return {
|
|
28
|
+
recorder,
|
|
29
|
+
recorderState,
|
|
30
|
+
player,
|
|
31
|
+
startRecording,
|
|
32
|
+
stopRecording
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
exports.useVoiceRecorder = useVoiceRecorder;
|
|
36
|
+
//# sourceMappingURL=useVoiceRecorder.hook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_expoAudio","require","_helpers","useVoiceRecorder","model","recorder","useAudioRecorder","RecordingPresets","LOW_QUALITY","status","console","log","recorderState","useAudioRecorderState","player","useAudioPlayer","startRecording","ensureRecordingPermissions","showError","prepareToRecordAsync","getAvailableInputs","then","inputs","length","record","stopRecording","stop","uri","replace","play","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/hooks/useVoiceRecorder.hook.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAMA,IAAAC,QAAA,GAAAD,OAAA;AAGO,MAAME,gBAAgB,GAAIC,KAAuB,IAAK;EAC3D,MAAMC,QAAQ,GAAG,IAAAC,2BAAgB,EAACC,2BAAgB,CAACC,WAAW,EAAGC,MAAM,IACrEC,OAAO,CAACC,GAAG,CAAC,mBAAmB,EAAEF,MAAM,CACzC,CAAC;EACD,MAAMG,aAAa,GAAG,IAAAC,gCAAqB,EAACR,QAAQ,CAAC;EAErD,MAAMS,MAAM,GAAG,IAAAC,yBAAc,EAAC,CAAC;EAE/B,MAAMC,cAAc,GAAG,MAAAA,CAAA,KAAY;IACjC,IAAI,EAAE,MAAM,IAAAC,mCAA0B,EAAC,CAAC,CAAC,EAAE,OAAOb,KAAK,CAACc,SAAS,CAAC,sBAAsB,CAAC;IAEzF,MAAMb,QAAQ,CAACc,oBAAoB,CAAC,CAAC;IAErC,IAAI,MAAM,IAAAC,2BAAkB,EAACf,QAAQ,CAAC,CAACgB,IAAI,CAAEC,MAAM,IAAKA,MAAM,CAACC,MAAM,KAAK,CAAC,CAAC,EAAE;MAC5E,OAAOnB,KAAK,CAACc,SAAS,CAAC,qBAAqB,CAAC;IAC/C;IAEAb,QAAQ,CAACmB,MAAM,CAAC,CAAC;EACnB,CAAC;EAED,MAAMC,aAAa,GAAG,MAAAA,CAAA,KAAY;IAChC,MAAMpB,QAAQ,CAACqB,IAAI,CAAC,CAAC;IACrBrB,QAAQ,CAACsB,GAAG,IAAIjB,OAAO,CAACC,GAAG,CAAC,iCAAiC,EAAEN,QAAQ,CAACsB,GAAG,CAAC;IAE5Eb,MAAM,CAACc,OAAO,CAACvB,QAAQ,CAACsB,GAAI,CAAC;IAC7Bb,MAAM,CAACe,IAAI,CAAC,CAAC;EACf,CAAC;EAED,OAAO;IAAExB,QAAQ;IAAEO,aAAa;IAAEE,MAAM;IAAEE,cAAc;IAAES;EAAc,CAAC;AAC3E,CAAC;AAAAK,OAAA,CAAA3B,gBAAA,GAAAA,gBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _VoiceRecord = require("./components/VoiceRecord.js");
|
|
7
|
+
Object.keys(_VoiceRecord).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _VoiceRecord[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _VoiceRecord[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
var _VoiceRecordModel = require("./model/VoiceRecord.model.js");
|
|
18
|
+
Object.keys(_VoiceRecordModel).forEach(function (key) {
|
|
19
|
+
if (key === "default" || key === "__esModule") return;
|
|
20
|
+
if (key in exports && exports[key] === _VoiceRecordModel[key]) return;
|
|
21
|
+
Object.defineProperty(exports, key, {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () {
|
|
24
|
+
return _VoiceRecordModel[key];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_VoiceRecord","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_VoiceRecordModel"],"sourceRoot":"../../../../src","sources":["features/voiceRecord/index.ts"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,iBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,iBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,iBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,iBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.VoiceRecordModel = void 0;
|
|
7
|
+
var _effector = require("effector");
|
|
8
|
+
class VoiceRecordModel {
|
|
9
|
+
startRecord = (0, _effector.createEvent)();
|
|
10
|
+
stop = (0, _effector.createEvent)();
|
|
11
|
+
deleteFile = (0, _effector.createEvent)();
|
|
12
|
+
setAudioFilePath = (0, _effector.createEvent)();
|
|
13
|
+
clearAudioFilePath = (0, _effector.createEvent)();
|
|
14
|
+
$audioFilePath = (0, _effector.restore)(this.setAudioFilePath, '').reset(this.clearAudioFilePath);
|
|
15
|
+
constructor({
|
|
16
|
+
showToatInfo,
|
|
17
|
+
showToastError
|
|
18
|
+
}) {
|
|
19
|
+
this.showInfo = showToatInfo;
|
|
20
|
+
this.showError = showToastError;
|
|
21
|
+
(0, _effector.sample)({
|
|
22
|
+
clock: this.deleteFile,
|
|
23
|
+
target: (0, _effector.createEffect)(async () => {
|
|
24
|
+
this.clearAudioFilePath();
|
|
25
|
+
showToatInfo('Recording deleted');
|
|
26
|
+
})
|
|
27
|
+
});
|
|
28
|
+
(0, _effector.sample)({
|
|
29
|
+
clock: this.startRecord,
|
|
30
|
+
target: (0, _effector.createEffect)(async () => {
|
|
31
|
+
showToatInfo('Recording started');
|
|
32
|
+
})
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.VoiceRecordModel = VoiceRecordModel;
|
|
37
|
+
//# sourceMappingURL=VoiceRecord.model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_effector","require","VoiceRecordModel","startRecord","createEvent","stop","deleteFile","setAudioFilePath","clearAudioFilePath","$audioFilePath","restore","reset","constructor","showToatInfo","showToastError","showInfo","showError","sample","clock","target","createEffect","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/model/VoiceRecord.model.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAQO,MAAMC,gBAAgB,CAAC;EACZC,WAAW,GAAG,IAAAC,qBAAW,EAAC,CAAC;EAC3BC,IAAI,GAAG,IAAAD,qBAAW,EAAC,CAAC;EAEpBE,UAAU,GAAG,IAAAF,qBAAW,EAAC,CAAC;EAE1BG,gBAAgB,GAAG,IAAAH,qBAAW,EAAS,CAAC;EACxCI,kBAAkB,GAAG,IAAAJ,qBAAW,EAAC,CAAC;EAClCK,cAAc,GAAG,IAAAC,iBAAO,EAAC,IAAI,CAACH,gBAAgB,EAAE,EAAE,CAAC,CAACI,KAAK,CAAC,IAAI,CAACH,kBAAkB,CAAC;EAKlGI,WAAWA,CAAC;IAAEC,YAAY;IAAEC;EAAuC,CAAC,EAAE;IACpE,IAAI,CAACC,QAAQ,GAAGF,YAAY;IAC5B,IAAI,CAACG,SAAS,GAAGF,cAAc;IAE/B,IAAAG,gBAAM,EAAC;MACLC,KAAK,EAAE,IAAI,CAACZ,UAAU;MACtBa,MAAM,EAAE,IAAAC,sBAAY,EAAC,YAAY;QAC/B,IAAI,CAACZ,kBAAkB,CAAC,CAAC;QACzBK,YAAY,CAAC,mBAAmB,CAAC;MACnC,CAAC;IACH,CAAC,CAAC;IAEF,IAAAI,gBAAM,EAAC;MACLC,KAAK,EAAE,IAAI,CAACf,WAAW;MACvBgB,MAAM,EAAE,IAAAC,sBAAY,EAAC,YAAY;QAC/BP,YAAY,CAAC,mBAAmB,CAAC;MACnC,CAAC;IACH,CAAC,CAAC;EACJ;AACF;AAACQ,OAAA,CAAAnB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["VoiceRecordApi","exports"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/model/VoiceRecordApi.ts"],"mappings":";;;;;;AAAO,MAAMA,cAAc,CAAC;AAAEC,OAAA,CAAAD,cAAA,GAAAA,cAAA","ignoreList":[]}
|
package/dist/commonjs/index.js
CHANGED
|
@@ -155,4 +155,16 @@ Object.keys(_index11).forEach(function (key) {
|
|
|
155
155
|
}
|
|
156
156
|
});
|
|
157
157
|
});
|
|
158
|
+
var _index12 = require("./features/voiceRecord/index.js");
|
|
159
|
+
Object.keys(_index12).forEach(function (key) {
|
|
160
|
+
if (key === "default" || key === "__esModule") return;
|
|
161
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
162
|
+
if (key in exports && exports[key] === _index12[key]) return;
|
|
163
|
+
Object.defineProperty(exports, key, {
|
|
164
|
+
enumerable: true,
|
|
165
|
+
get: function () {
|
|
166
|
+
return _index12[key];
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
});
|
|
158
170
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_index","require","_helpers","_index2","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_index3","_index4","_index5","_index6","_index7","_index8","_index9","_index10","_index11"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAF,OAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,OAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,OAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,OAAA,GAAAf,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAW,OAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAS,OAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,OAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;AACA,IAAAU,OAAA,GAAAhB,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAY,OAAA,EAAAX,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAU,OAAA,CAAAV,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,OAAA,CAAAV,GAAA;IAAA;EAAA;AAAA;AACA,IAAAW,OAAA,GAAAjB,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAa,OAAA,EAAAZ,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAW,OAAA,CAAAX,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,OAAA,CAAAX,GAAA;IAAA;EAAA;AAAA;AACA,IAAAY,OAAA,GAAAlB,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAc,OAAA,EAAAb,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAY,OAAA,CAAAZ,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAI,OAAA,CAAAZ,GAAA;IAAA;EAAA;AAAA;AACA,IAAAa,OAAA,GAAAnB,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAe,OAAA,EAAAd,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAa,OAAA,CAAAb,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAK,OAAA,CAAAb,GAAA;IAAA;EAAA;AAAA;AACA,IAAAc,OAAA,GAAApB,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAgB,OAAA,EAAAf,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAc,OAAA,CAAAd,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAM,OAAA,CAAAd,GAAA;IAAA;EAAA;AAAA;AACA,IAAAe,OAAA,GAAArB,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAiB,OAAA,EAAAhB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAe,OAAA,CAAAf,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAO,OAAA,CAAAf,GAAA;IAAA;EAAA;AAAA;AACA,IAAAgB,QAAA,GAAAtB,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAkB,QAAA,EAAAjB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAgB,QAAA,CAAAhB,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAQ,QAAA,CAAAhB,GAAA;IAAA;EAAA;AAAA;AACA,IAAAiB,QAAA,GAAAvB,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAmB,QAAA,EAAAlB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAiB,QAAA,CAAAjB,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAS,QAAA,CAAAjB,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_index","require","_helpers","_index2","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_index3","_index4","_index5","_index6","_index7","_index8","_index9","_index10","_index11","_index12"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { StyleSheet } from 'react-native';
|
|
4
|
+
import { VoiceRecordButton } from "./VoiceRecordButton.js";
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import { COLORS, SPACING } from '@magmamath/react-native-ui';
|
|
7
|
+
import { VoiceRecordDelete } from "./VoiceRecordDelete.js";
|
|
8
|
+
import { VoiceRecordDevider } from "./VoiceRecordDevider.js";
|
|
9
|
+
import VoiceRecordTimer from "./VoiceRecordTimer.js";
|
|
10
|
+
import Animated, { FadeIn, FadeOut, useAnimatedStyle, withTiming } from 'react-native-reanimated';
|
|
11
|
+
import { useVoiceRecorder } from "../hooks/useVoiceRecorder.hook.js";
|
|
12
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
const CONTAINER_SIZES = {
|
|
14
|
+
COLLAPSED: 61,
|
|
15
|
+
EXPANDED: 152
|
|
16
|
+
};
|
|
17
|
+
export const VoiceRecord = ({
|
|
18
|
+
style,
|
|
19
|
+
model
|
|
20
|
+
}) => {
|
|
21
|
+
const {
|
|
22
|
+
recorder,
|
|
23
|
+
recorderState,
|
|
24
|
+
player,
|
|
25
|
+
startRecording,
|
|
26
|
+
stopRecording
|
|
27
|
+
} = useVoiceRecorder(model);
|
|
28
|
+
const aniamtedStyle = useAnimatedStyle(() => {
|
|
29
|
+
return {
|
|
30
|
+
height: withTiming(recorderState.isRecording ? CONTAINER_SIZES.EXPANDED : CONTAINER_SIZES.COLLAPSED, {
|
|
31
|
+
duration: 280
|
|
32
|
+
})
|
|
33
|
+
};
|
|
34
|
+
}, [recorderState]);
|
|
35
|
+
return /*#__PURE__*/_jsxs(Animated.View, {
|
|
36
|
+
style: [styles.container, style, aniamtedStyle],
|
|
37
|
+
children: [/*#__PURE__*/_jsx(VoiceRecordButton
|
|
38
|
+
// onPress={() => setIsRecording((prev) => !prev)}
|
|
39
|
+
, {
|
|
40
|
+
onPress: recorderState.isRecording ? stopRecording : startRecording,
|
|
41
|
+
isRecording: recorderState.isRecording
|
|
42
|
+
}), recorderState.isRecording && /*#__PURE__*/_jsxs(Animated.View, {
|
|
43
|
+
entering: FadeIn,
|
|
44
|
+
exiting: FadeOut,
|
|
45
|
+
style: styles.expendedContainer,
|
|
46
|
+
children: [/*#__PURE__*/_jsx(VoiceRecordTimer, {
|
|
47
|
+
style: styles.timer
|
|
48
|
+
//0:00 as default value and format mm:ss
|
|
49
|
+
,
|
|
50
|
+
time: recorderState.durationMillis ? new Date(recorderState.durationMillis).toISOString().substr(14, 5) : '0:00'
|
|
51
|
+
}), /*#__PURE__*/_jsx(VoiceRecordDevider, {}), /*#__PURE__*/_jsx(VoiceRecordDelete, {
|
|
52
|
+
onPress: model.deleteFile
|
|
53
|
+
})]
|
|
54
|
+
})]
|
|
55
|
+
});
|
|
56
|
+
};
|
|
57
|
+
const styles = StyleSheet.create({
|
|
58
|
+
container: {
|
|
59
|
+
alignItems: 'center',
|
|
60
|
+
padding: 3,
|
|
61
|
+
paddingBottom: 6,
|
|
62
|
+
backgroundColor: COLORS.NEUTRAL_3,
|
|
63
|
+
borderRadius: 32,
|
|
64
|
+
boxShadow: '0 1px 3px 0 rgba(51, 51, 51, 0.10), 0 0 1px 0 rgba(51, 51, 51, 0.40)',
|
|
65
|
+
overflow: 'hidden'
|
|
66
|
+
},
|
|
67
|
+
timer: {
|
|
68
|
+
marginTop: SPACING[400]
|
|
69
|
+
},
|
|
70
|
+
expendedContainer: {
|
|
71
|
+
alignItems: 'center'
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
//# sourceMappingURL=VoiceRecord.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StyleSheet","VoiceRecordButton","React","COLORS","SPACING","VoiceRecordDelete","VoiceRecordDevider","VoiceRecordTimer","Animated","FadeIn","FadeOut","useAnimatedStyle","withTiming","useVoiceRecorder","jsx","_jsx","jsxs","_jsxs","CONTAINER_SIZES","COLLAPSED","EXPANDED","VoiceRecord","style","model","recorder","recorderState","player","startRecording","stopRecording","aniamtedStyle","height","isRecording","duration","View","styles","container","children","onPress","entering","exiting","expendedContainer","timer","time","durationMillis","Date","toISOString","substr","deleteFile","create","alignItems","padding","paddingBottom","backgroundColor","NEUTRAL_3","borderRadius","boxShadow","overflow","marginTop"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecord.tsx"],"mappings":";;AAAA,SAA+BA,UAAU,QAAQ,cAAc;AAC/D,SAASC,iBAAiB,QAAQ,wBAAqB;AACvD,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,MAAM,EAAEC,OAAO,QAAQ,4BAA4B;AAC5D,SAASC,iBAAiB,QAAQ,wBAAqB;AACvD,SAASC,kBAAkB,QAAQ,yBAAsB;AACzD,OAAOC,gBAAgB,MAAM,uBAAoB;AACjD,OAAOC,QAAQ,IAAIC,MAAM,EAAEC,OAAO,EAAEC,gBAAgB,EAAEC,UAAU,QAAQ,yBAAyB;AAEjG,SAASC,gBAAgB,QAAQ,mCAAgC;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAOjE,MAAMC,eAAe,GAAG;EACtBC,SAAS,EAAE,EAAE;EACbC,QAAQ,EAAE;AACZ,CAAC;AAED,OAAO,MAAMC,WAAW,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAAwB,CAAC,KAAK;EACjE,MAAM;IAAEC,QAAQ;IAAEC,aAAa;IAAEC,MAAM;IAAEC,cAAc;IAAEC;EAAc,CAAC,GAAGf,gBAAgB,CAACU,KAAK,CAAC;EAElG,MAAMM,aAAa,GAAGlB,gBAAgB,CAAC,MAAM;IAC3C,OAAO;MACLmB,MAAM,EAAElB,UAAU,CAChBa,aAAa,CAACM,WAAW,GAAGb,eAAe,CAACE,QAAQ,GAAGF,eAAe,CAACC,SAAS,EAChF;QACEa,QAAQ,EAAE;MACZ,CACF;IACF,CAAC;EACH,CAAC,EAAE,CAACP,aAAa,CAAC,CAAC;EAEnB,oBACER,KAAA,CAACT,QAAQ,CAACyB,IAAI;IAACX,KAAK,EAAE,CAACY,MAAM,CAACC,SAAS,EAAEb,KAAK,EAAEO,aAAa,CAAE;IAAAO,QAAA,gBAC7DrB,IAAA,CAACd;IACC;IAAA;MACAoC,OAAO,EAAEZ,aAAa,CAACM,WAAW,GAAGH,aAAa,GAAGD,cAAe;MACpEI,WAAW,EAAEN,aAAa,CAACM;IAAY,CACxC,CAAC,EACDN,aAAa,CAACM,WAAW,iBACxBd,KAAA,CAACT,QAAQ,CAACyB,IAAI;MAACK,QAAQ,EAAE7B,MAAO;MAAC8B,OAAO,EAAE7B,OAAQ;MAACY,KAAK,EAAEY,MAAM,CAACM,iBAAkB;MAAAJ,QAAA,gBACjFrB,IAAA,CAACR,gBAAgB;QACfe,KAAK,EAAEY,MAAM,CAACO;QACd;QAAA;QACAC,IAAI,EACFjB,aAAa,CAACkB,cAAc,GACxB,IAAIC,IAAI,CAACnB,aAAa,CAACkB,cAAc,CAAC,CAACE,WAAW,CAAC,CAAC,CAACC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,GAClE;MACL,CACF,CAAC,eACF/B,IAAA,CAACT,kBAAkB,IAAE,CAAC,eACtBS,IAAA,CAACV,iBAAiB;QAACgC,OAAO,EAAEd,KAAK,CAACwB;MAAW,CAAE,CAAC;IAAA,CACnC,CAChB;EAAA,CACY,CAAC;AAEpB,CAAC;AAED,MAAMb,MAAM,GAAGlC,UAAU,CAACgD,MAAM,CAAC;EAC/Bb,SAAS,EAAE;IACTc,UAAU,EAAE,QAAQ;IACpBC,OAAO,EAAE,CAAC;IACVC,aAAa,EAAE,CAAC;IAChBC,eAAe,EAAEjD,MAAM,CAACkD,SAAS;IACjCC,YAAY,EAAE,EAAE;IAChBC,SAAS,EAAE,sEAAsE;IACjFC,QAAQ,EAAE;EACZ,CAAC;EACDf,KAAK,EAAE;IACLgB,SAAS,EAAErD,OAAO,CAAC,GAAG;EACxB,CAAC;EACDoC,iBAAiB,EAAE;IACjBS,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React, { useMemo } from 'react';
|
|
4
|
+
import { Button, ButtonColor, ButtonSize, ButtonVariant } from '@magmamath/react-native-ui';
|
|
5
|
+
import { MicrophoneIcon, CheckIcon } from '@magmamath/react-native-ui';
|
|
6
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
+
export const VoiceRecordButton = ({
|
|
8
|
+
style,
|
|
9
|
+
onPress,
|
|
10
|
+
isRecording
|
|
11
|
+
}) => {
|
|
12
|
+
const combinedStyles = useMemo(() => {
|
|
13
|
+
return {
|
|
14
|
+
button: {
|
|
15
|
+
width: 50,
|
|
16
|
+
...style?.button
|
|
17
|
+
},
|
|
18
|
+
container: {
|
|
19
|
+
...style?.container
|
|
20
|
+
},
|
|
21
|
+
text: {
|
|
22
|
+
...style?.text
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
}, [style]);
|
|
26
|
+
return /*#__PURE__*/_jsx(Button, {
|
|
27
|
+
onPress: onPress,
|
|
28
|
+
style: combinedStyles,
|
|
29
|
+
size: ButtonSize.LARGE,
|
|
30
|
+
variant: ButtonVariant.PRIMARY,
|
|
31
|
+
colorScheme: ButtonColor.WHITE,
|
|
32
|
+
icon: isRecording ? /*#__PURE__*/_jsx(CheckIcon, {
|
|
33
|
+
size: 25
|
|
34
|
+
}) : /*#__PURE__*/_jsx(MicrophoneIcon, {
|
|
35
|
+
size: 19
|
|
36
|
+
})
|
|
37
|
+
});
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=VoiceRecordButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useMemo","Button","ButtonColor","ButtonSize","ButtonVariant","MicrophoneIcon","CheckIcon","jsx","_jsx","VoiceRecordButton","style","onPress","isRecording","combinedStyles","button","width","container","text","size","LARGE","variant","PRIMARY","colorScheme","WHITE","icon"],"sourceRoot":"../../../../../src","sources":["features/voiceRecord/components/VoiceRecordButton.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AACtC,SACEC,MAAM,EACNC,WAAW,EACXC,UAAU,EAEVC,aAAa,QACR,4BAA4B;AAEnC,SAASC,cAAc,EAAEC,SAAS,QAAQ,4BAA4B;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAQtE,OAAO,MAAMC,iBAAiB,GAAGA,CAAC;EAAEC,KAAK;EAAEC,OAAO;EAAEC;AAAoC,CAAC,KAAK;EAC5F,MAAMC,cAAc,GAAGb,OAAO,CAAC,MAAmB;IAChD,OAAO;MACLc,MAAM,EAAE;QACNC,KAAK,EAAE,EAAE;QACT,GAAIL,KAAK,EAAEI;MACb,CAAC;MACDE,SAAS,EAAE;QACT,GAAIN,KAAK,EAAEM;MACb,CAAC;MACDC,IAAI,EAAE;QACJ,GAAIP,KAAK,EAAEO;MACb;IACF,CAAC;EACH,CAAC,EAAE,CAACP,KAAK,CAAC,CAAC;EAEX,oBACEF,IAAA,CAACP,MAAM;IACLU,OAAO,EAAEA,OAAQ;IACjBD,KAAK,EAAEG,cAAe;IACtBK,IAAI,EAAEf,UAAU,CAACgB,KAAM;IACvBC,OAAO,EAAEhB,aAAa,CAACiB,OAAQ;IAC/BC,WAAW,EAAEpB,WAAW,CAACqB,KAAM;IAC/BC,IAAI,EAAEZ,WAAW,gBAAGJ,IAAA,CAACF,SAAS;MAACY,IAAI,EAAE;IAAG,CAAE,CAAC,gBAAGV,IAAA,CAACH,cAAc;MAACa,IAAI,EAAE;IAAG,CAAE;EAAE,CAC5E,CAAC;AAEN,CAAC","ignoreList":[]}
|