@magmamath/students-features 0.9.107-rc.52 → 0.9.107-rc.54
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.js +3 -5
- package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.js.map +1 -1
- package/dist/commonjs/features/voice/playing/model/VoicePlayer.model.js +63 -128
- package/dist/commonjs/features/voice/playing/model/VoicePlayer.model.js.map +1 -1
- package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdown.js +3 -5
- package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdown.js.map +1 -1
- package/dist/module/features/voice/playing/model/VoicePlayer.model.js +64 -129
- package/dist/module/features/voice/playing/model/VoicePlayer.model.js.map +1 -1
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voice/playing/model/VoicePlayer.model.d.ts +2 -5
- package/dist/typescript/commonjs/features/voice/playing/model/VoicePlayer.model.d.ts.map +1 -1
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionsDropdown.d.ts.map +1 -1
- package/dist/typescript/module/features/voice/playing/model/VoicePlayer.model.d.ts +2 -5
- package/dist/typescript/module/features/voice/playing/model/VoicePlayer.model.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/features/voice/playing/components/VoiceTranscriptionsDropdown.tsx +4 -3
- package/src/features/voice/playing/model/VoicePlayer.model.ts +66 -111
|
@@ -84,21 +84,19 @@ const VoiceTranscriptionsDropdown = ({
|
|
|
84
84
|
});
|
|
85
85
|
}, 100);
|
|
86
86
|
}, []);
|
|
87
|
-
|
|
88
|
-
// Initialize model with audio IDs
|
|
89
87
|
(0, _react.useEffect)(() => {
|
|
90
88
|
if (audioIds && Object.keys(audioIds).length > 0) {
|
|
91
89
|
model.initializeWithAudioIds(audioIds);
|
|
92
90
|
}
|
|
93
|
-
return () => model.cleanup();
|
|
94
91
|
}, [model, audioIds]);
|
|
92
|
+
(0, _react.useEffect)(() => {
|
|
93
|
+
return () => model.cleanup();
|
|
94
|
+
}, [model]);
|
|
95
95
|
|
|
96
96
|
// Update attempts when state changes
|
|
97
97
|
(0, _react.useEffect)(() => {
|
|
98
98
|
setAttempts(model.getAllAttempts());
|
|
99
99
|
}, [transcriptsLoaded, audioLoading, currentAttempt, isPlaying, model]);
|
|
100
|
-
|
|
101
|
-
// Handle active attempt changes: scroll, stop audio, collapse if no transcript
|
|
102
100
|
(0, _react.useEffect)(() => {
|
|
103
101
|
if (activeAttempt !== null) {
|
|
104
102
|
scrollToAttempt(activeAttempt);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeUi","require","_effectorReact","_react","_interopRequireWildcard","_reactNative","_reactNativeReanimated","_useVoicePlayer","_useVoiceTranscriptionsDropdown","_VoicePlayButton","_VoiceTranscriptionsDropdownItem","_constants","_index","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","AnimatedTouchableOpacity","Animated","createAnimatedComponent","TouchableOpacity","getActiveAttempt","attemptOffset","attemptsCount","undefined","getButtonStatus","audioLoading","activeAttempt","currentAttempt","isPlaying","VoiceTranscriptionsDropdown","style","model","audioIds","onAttemptOffsetChange","scrollRef","useRef","prevActiveAttemptRef","useText","useVoicePlayer","transcriptsLoaded","useUnit","$currentAttempt","$audioLoading","$transcriptsLoaded","$isPlaying","attempts","setAttempts","useState","getAllAttempts","listAnimatedStyle","iconAnimatedStyle","onListLayout","useVoiceTranscriptionsDropdown","dropdown","buttonStatus","hasActiveTranscript","getTranscript","scrollToAttempt","useCallback","attemptNumber","index","findIndex","item","current","scrollToIndex","animated","viewPosition","handleItemToggle","attempt","handlePlayPress","togglePlayPause","handleScrollToIndexFailed","info","setTimeout","useEffect","keys","length","initializeWithAudioIds","cleanup","stopAudio","setExpanded","loadAllTranscripts","renderItem","isLoading","isTranscriptLoading","transcript","isActive","jsx","VoiceTranscriptionsDropdownItem","content","onToggle","jsxs","View","styles","container","children","header","Typography","title","variant","entering","FadeIn","duration","exiting","FadeOut","PlayButton","status","onPress","overflow","onLayout","listContainer","ScrollableList","bounces","ref","hideShadow","data","keyExtractor","toString","onScrollToIndexFailed","IS_WEB","list","contentContainerStyle","listContent","expandButton","toggleExpand","CaretDownIcon","size","exports","StyleSheet","create","position","top","left","width","maxHeight","minHeight","padding","boxShadow","borderRadius","backgroundColor","COLORS","NEUTRAL_1","flexDirection","justifyContent","alignItems","marginBottom","height","color","NEUTRAL_9","marginLeft","flex","DROPDOWN_MAX_CONTENT_HEIGHT","paddingHorizontal"],"sourceRoot":"../../../../../../src","sources":["features/voice/playing/components/VoiceTranscriptionsDropdown.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_reactNativeUi","require","_effectorReact","_react","_interopRequireWildcard","_reactNative","_reactNativeReanimated","_useVoicePlayer","_useVoiceTranscriptionsDropdown","_VoicePlayButton","_VoiceTranscriptionsDropdownItem","_constants","_index","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","AnimatedTouchableOpacity","Animated","createAnimatedComponent","TouchableOpacity","getActiveAttempt","attemptOffset","attemptsCount","undefined","getButtonStatus","audioLoading","activeAttempt","currentAttempt","isPlaying","VoiceTranscriptionsDropdown","style","model","audioIds","onAttemptOffsetChange","scrollRef","useRef","prevActiveAttemptRef","useText","useVoicePlayer","transcriptsLoaded","useUnit","$currentAttempt","$audioLoading","$transcriptsLoaded","$isPlaying","attempts","setAttempts","useState","getAllAttempts","listAnimatedStyle","iconAnimatedStyle","onListLayout","useVoiceTranscriptionsDropdown","dropdown","buttonStatus","hasActiveTranscript","getTranscript","scrollToAttempt","useCallback","attemptNumber","index","findIndex","item","current","scrollToIndex","animated","viewPosition","handleItemToggle","attempt","handlePlayPress","togglePlayPause","handleScrollToIndexFailed","info","setTimeout","useEffect","keys","length","initializeWithAudioIds","cleanup","stopAudio","setExpanded","loadAllTranscripts","renderItem","isLoading","isTranscriptLoading","transcript","isActive","jsx","VoiceTranscriptionsDropdownItem","content","onToggle","jsxs","View","styles","container","children","header","Typography","title","variant","entering","FadeIn","duration","exiting","FadeOut","PlayButton","status","onPress","overflow","onLayout","listContainer","ScrollableList","bounces","ref","hideShadow","data","keyExtractor","toString","onScrollToIndexFailed","IS_WEB","list","contentContainerStyle","listContent","expandButton","toggleExpand","CaretDownIcon","size","exports","StyleSheet","create","position","top","left","width","maxHeight","minHeight","padding","boxShadow","borderRadius","backgroundColor","COLORS","NEUTRAL_1","flexDirection","justifyContent","alignItems","marginBottom","height","color","NEUTRAL_9","marginLeft","flex","DROPDOWN_MAX_CONTENT_HEIGHT","paddingHorizontal"],"sourceRoot":"../../../../../../src","sources":["features/voice/playing/components/VoiceTranscriptionsDropdown.tsx"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AAOA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAC,uBAAA,CAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA;AACA,IAAAK,sBAAA,GAAAF,uBAAA,CAAAH,OAAA;AAEA,IAAAM,eAAA,GAAAN,OAAA;AACA,IAAAO,+BAAA,GAAAP,OAAA;AAEA,IAAAQ,gBAAA,GAAAR,OAAA;AACA,IAAAS,gCAAA,GAAAT,OAAA;AACA,IAAAU,UAAA,GAAAV,OAAA;AACA,IAAAW,MAAA,GAAAX,OAAA;AAAwD,IAAAY,WAAA,GAAAZ,OAAA;AAAA,SAAAa,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,SAAAX,wBAAAW,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;AAExD,MAAMW,wBAAwB,GAAGC,8BAAQ,CAACC,uBAAuB,CAACC,6BAAgB,CAAC;AAWnF,MAAMC,gBAAgB,GAAGA,CAACC,aAAsB,EAAEC,aAAsB,KAAoB;EAC1F,IAAID,aAAa,KAAKE,SAAS,IAAID,aAAa,KAAKC,SAAS,EAAE,OAAO,IAAI;EAC3E,OAAOD,aAAa,GAAGD,aAAa;AACtC,CAAC;AAED,MAAMG,eAAe,GAAGA,CACtBC,YAAqB,EACrBC,aAA4B,EAC5BC,cAA6B,EAC7BC,SAAkB,KACG;EACrB,IAAIH,YAAY,EAAE,OAAO,SAAS;EAClC,IAAIC,aAAa,KAAK,IAAI,EAAE,OAAO,MAAM;EACzC,IAAIC,cAAc,KAAKD,aAAa,EAAE;IACpC,OAAOE,SAAS,GAAG,SAAS,GAAG,OAAO;EACxC;EACA,OAAO,MAAM;AACf,CAAC;AAEM,MAAMC,2BAA2B,GAAGA,CAAC;EAC1CC,KAAK;EACLC,KAAK;EACLC,QAAQ;EACRX,aAAa;EACbY,qBAAqB;EACrBX;AACgC,CAAC,KAAK;EACtC,MAAMY,SAAS,GAAG,IAAAC,aAAM,EAAkB,IAAI,CAAC;EAC/C,MAAMC,oBAAoB,GAAG,IAAAD,aAAM,EAAgB,IAAI,CAAC;EACxD,MAAMnC,CAAC,GAAG,IAAAqC,cAAO,EAAC,CAAC;EAEnB,IAAAC,8BAAc,EAACP,KAAK,CAAC;EAErB,MAAM,CAACJ,cAAc,EAAEF,YAAY,EAAEc,iBAAiB,EAAEX,SAAS,CAAC,GAAG,IAAAY,sBAAO,EAAC,CAC3ET,KAAK,CAACU,eAAe,EACrBV,KAAK,CAACW,aAAa,EACnBX,KAAK,CAACY,kBAAkB,EACxBZ,KAAK,CAACa,UAAU,CACjB,CAAC;EAEF,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAC,eAAQ,EAAChB,KAAK,CAACiB,cAAc,CAAC,CAAC,CAAC;EAChE,MAAMtB,aAAa,GAAGN,gBAAgB,CAACC,aAAa,EAAEC,aAAa,CAAC;EAEpE,MAAM;IAAE2B,iBAAiB;IAAEC,iBAAiB;IAAEC;EAAa,CAAC,GAAG,IAAAC,8DAA8B,EAC3FrB,KAAK,CAACsB,QACR,CAAC;EACD,MAAMC,YAAY,GAAG9B,eAAe,CAACC,YAAY,EAAEC,aAAa,EAAEC,cAAc,EAAEC,SAAS,CAAC;;EAE5F;EACA,MAAM2B,mBAAmB,GACvB7B,aAAa,KAAK,IAAI,IACtBM,QAAQ,CAACN,aAAa,CAAC,KAAKH,SAAS,IACrC,CAAC,CAACQ,KAAK,CAACyB,aAAa,CAAC9B,aAAa,CAAC;EAEtC,MAAM+B,eAAe,GAAG,IAAAC,kBAAW,EAChCC,aAAqB,IAAK;IACzB,MAAMC,KAAK,GAAGf,QAAQ,CAACgB,SAAS,CAAEC,IAAI,IAAKA,IAAI,CAACH,aAAa,KAAKA,aAAa,CAAC;IAChF,IAAIC,KAAK,KAAK,CAAC,CAAC,EAAE;MAChB1B,SAAS,CAAC6B,OAAO,EAAEC,aAAa,CAAC;QAAEJ,KAAK;QAAEK,QAAQ,EAAE,IAAI;QAAEC,YAAY,EAAE;MAAE,CAAC,CAAC;IAC9E;EACF,CAAC,EACD,CAACrB,QAAQ,CACX,CAAC;EAED,MAAMsB,gBAAgB,GAAG,IAAAT,kBAAW,EACjCU,OAAe,IAAK;IACnB,IAAInC,qBAAqB,IAAIX,aAAa,KAAKC,SAAS,EAAE;MACxDU,qBAAqB,CAACX,aAAa,GAAG8C,OAAO,CAAC;IAChD;EACF,CAAC,EACD,CAACnC,qBAAqB,EAAEX,aAAa,CACvC,CAAC;EAED,MAAM+C,eAAe,GAAG,IAAAX,kBAAW,EAAC,MAAM;IACxC,IAAIhC,aAAa,EAAE;MACjBK,KAAK,CAACuC,eAAe,CAAC5C,aAAa,CAAC;IACtC;EACF,CAAC,EAAE,CAACK,KAAK,EAAEL,aAAa,CAAC,CAAC;EAE1B,MAAM6C,yBAAyB,GAAG,IAAAb,kBAAW,EAAEc,IAAuB,IAAK;IACzEC,UAAU,CAAC,MAAM;MACfvC,SAAS,CAAC6B,OAAO,EAAEC,aAAa,CAAC;QAAEJ,KAAK,EAAEY,IAAI,CAACZ,KAAK;QAAEK,QAAQ,EAAE,IAAI;QAAEC,YAAY,EAAE;MAAE,CAAC,CAAC;IAC1F,CAAC,EAAE,GAAG,CAAC;EACT,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAQ,gBAAS,EAAC,MAAM;IACd,IAAI1C,QAAQ,IAAIxB,MAAM,CAACmE,IAAI,CAAC3C,QAAQ,CAAC,CAAC4C,MAAM,GAAG,CAAC,EAAE;MAChD7C,KAAK,CAAC8C,sBAAsB,CAAC7C,QAAQ,CAAC;IACxC;EACF,CAAC,EAAE,CAACD,KAAK,EAAEC,QAAQ,CAAC,CAAC;EAErB,IAAA0C,gBAAS,EAAC,MAAM;IACd,OAAO,MAAM3C,KAAK,CAAC+C,OAAO,CAAC,CAAC;EAC9B,CAAC,EAAE,CAAC/C,KAAK,CAAC,CAAC;;EAEX;EACA,IAAA2C,gBAAS,EAAC,MAAM;IACd5B,WAAW,CAACf,KAAK,CAACiB,cAAc,CAAC,CAAC,CAAC;EACrC,CAAC,EAAE,CAACT,iBAAiB,EAAEd,YAAY,EAAEE,cAAc,EAAEC,SAAS,EAAEG,KAAK,CAAC,CAAC;EAEvE,IAAA2C,gBAAS,EAAC,MAAM;IACd,IAAIhD,aAAa,KAAK,IAAI,EAAE;MAC1B+B,eAAe,CAAC/B,aAAa,CAAC;IAChC;IAEA,IAAIU,oBAAoB,CAAC2B,OAAO,KAAKrC,aAAa,EAAE;MAClDK,KAAK,CAACgD,SAAS,CAAC,CAAC;MACjB,IAAI,CAACxB,mBAAmB,EAAE;QACxBxB,KAAK,CAACsB,QAAQ,CAAC2B,WAAW,CAAC,KAAK,CAAC;MACnC;IACF;IACA5C,oBAAoB,CAAC2B,OAAO,GAAGrC,aAAa;EAC9C,CAAC,EAAE,CAACA,aAAa,EAAE6B,mBAAmB,EAAEE,eAAe,EAAE1B,KAAK,CAAC,CAAC;EAEhE,IAAA2C,gBAAS,EAAC,MAAM;IACd3C,KAAK,CAACkD,kBAAkB,CAAC,CAAC;EAC5B,CAAC,EAAE,CAAClD,KAAK,CAAC,CAAC;EAEX,MAAMmD,UAAU,GAAG,IAAAxB,kBAAW,EAC5B,CAAC;IAAEI;EAA0C,CAAC,KAAK;IACjD,MAAMqB,SAAS,GAAGpD,KAAK,CAACqD,mBAAmB,CAACtB,IAAI,CAACH,aAAa,CAAC;IAC/D,MAAM0B,UAAU,GAAGtD,KAAK,CAACyB,aAAa,CAACM,IAAI,CAACH,aAAa,CAAC;IAC1D,MAAM2B,QAAQ,GAAG5D,aAAa,KAAKoC,IAAI,CAACH,aAAa;IAErD,oBACE,IAAAhE,WAAA,CAAA4F,GAAA,EAAC/F,gCAAA,CAAAgG,+BAA+B;MAC9BL,SAAS,EAAEG,QAAQ,IAAIH,SAAU;MACjCf,OAAO,EAAEN,IAAI,CAACH,aAAc;MAC5B8B,OAAO,EAAEJ,UAAU,IAAIrF,CAAC,CAAC,8BAA8B,CAAE;MACzDsF,QAAQ,EAAEA,QAAS;MACnBI,QAAQ,EAAEvB,gBAAiB;MAC3BV,eAAe,EAAEA;IAAgB,CAClC,CAAC;EAEN,CAAC,EACD,CAAC1B,KAAK,EAAEL,aAAa,EAAE1B,CAAC,EAAEmE,gBAAgB,EAAEV,eAAe,CAC7D,CAAC;EAED,oBACE,IAAA9D,WAAA,CAAAgG,IAAA,EAACvG,sBAAA,CAAAc,OAAQ,CAAC0F,IAAI;IAAC9D,KAAK,EAAE,CAAC+D,MAAM,CAACC,SAAS,EAAEhE,KAAK,CAAE;IAAAiE,QAAA,gBAC9C,IAAApG,WAAA,CAAAgG,IAAA,EAACxG,YAAA,CAAAyG,IAAI;MAAC9D,KAAK,EAAE+D,MAAM,CAACG,MAAO;MAAAD,QAAA,gBACzB,IAAApG,WAAA,CAAA4F,GAAA,EAACzG,cAAA,CAAAmH,UAAU;QAACnE,KAAK,EAAE+D,MAAM,CAACK,KAAM;QAACC,OAAO,EAAC,IAAI;QAAAJ,QAAA,EAC1C/F,CAAC,CAAC,sBAAsB;MAAC,CAChB,CAAC,EACZuD,mBAAmB,iBAClB,IAAA5D,WAAA,CAAA4F,GAAA,EAACnG,sBAAA,CAAAc,OAAQ,CAAC0F,IAAI;QAACQ,QAAQ,EAAEC,6BAAM,CAACC,QAAQ,CAAC,GAAG,CAAE;QAACC,OAAO,EAAEC,8BAAO,CAACF,QAAQ,CAAC,GAAG,CAAE;QAAAP,QAAA,eAC5E,IAAApG,WAAA,CAAA4F,GAAA,EAAChG,gBAAA,CAAAkH,UAAU;UAACC,MAAM,EAAEpD,YAAa;UAACqD,OAAO,EAAEtC;QAAgB,CAAE;MAAC,CACjD,CAChB;IAAA,CACG,CAAC,eAEP,IAAA1E,WAAA,CAAA4F,GAAA,EAACnG,sBAAA,CAAAc,OAAQ,CAAC0F,IAAI;MAAC9D,KAAK,EAAE,CAACmB,iBAAiB,EAAE;QAAE2D,QAAQ,EAAE;MAAS,CAAC,CAAE;MAAAb,QAAA,eAChE,IAAApG,WAAA,CAAA4F,GAAA,EAACpG,YAAA,CAAAyG,IAAI;QAACiB,QAAQ,EAAE1D,YAAa;QAACrB,KAAK,EAAE+D,MAAM,CAACiB,aAAc;QAAAf,QAAA,eACxD,IAAApG,WAAA,CAAA4F,GAAA,EAACzG,cAAA,CAAAiI,cAAc;UACbC,OAAO,EAAE,KAAM;UACfC,GAAG,EAAE/E,SAAU;UACfgF,UAAU;UACVC,IAAI,EAAEtE,QAAS;UACfuE,YAAY,EAAGtD,IAAI,IAAKA,IAAI,CAACH,aAAa,CAAC0D,QAAQ,CAAC,CAAE;UACtDC,qBAAqB,EAAE/C,yBAA0B;UACjDW,UAAU,EAAEA,UAAW;UACvBpD,KAAK,EAAEyF,qBAAM,IAAI1B,MAAM,CAAC2B,IAAK;UAC7BC,qBAAqB,EAAE5B,MAAM,CAAC6B;QAAY,CAC3C;MAAC,CACE;IAAC,CACM,CAAC,eAEhB,IAAA/H,WAAA,CAAA4F,GAAA,EAACvE,wBAAwB;MACvBc,KAAK,EAAE,CAAC+D,MAAM,CAAC8B,YAAY,EAAEzE,iBAAiB,CAAE;MAChDyD,OAAO,EAAEA,CAAA,KAAM5E,KAAK,CAACsB,QAAQ,CAACuE,YAAY,CAAC,CAAE;MAAA7B,QAAA,eAE7C,IAAApG,WAAA,CAAA4F,GAAA,EAACzG,cAAA,CAAA+I,aAAa;QAACC,IAAI,EAAE;MAAG,CAAE;IAAC,CACH,CAAC;EAAA,CACd,CAAC;AAEpB,CAAC;AAAAC,OAAA,CAAAlG,2BAAA,GAAAA,2BAAA;AAED,MAAMgE,MAAM,GAAGmC,uBAAU,CAACC,MAAM,CAAC;EAC/BnC,SAAS,EAAE;IACToC,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,EAAE;IACPC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,GAAG;IACVC,SAAS,EAAE,GAAG;IACdC,SAAS,EAAE,EAAE;IACbC,OAAO,EAAE,CAAC;IACVC,SAAS,EAAE,wCAAwC;IACnDC,YAAY,EAAE,EAAE;IAChBC,eAAe,EAAEC,qBAAM,CAACC,SAAS;IACjCjC,QAAQ,EAAE;EACZ,CAAC;EACDZ,MAAM,EAAE;IACN8C,aAAa,EAAE,KAAK;IACpBC,cAAc,EAAE,eAAe;IAC/BC,UAAU,EAAE,QAAQ;IACpBR,OAAO,EAAE,CAAC;IACVS,YAAY,EAAE,CAAC;IACfC,MAAM,EAAE;EACV,CAAC;EACDhD,KAAK,EAAE;IACLiD,KAAK,EAAEP,qBAAM,CAACQ,SAAS;IACvBC,UAAU,EAAE;EACd,CAAC;EACD7B,IAAI,EAAE;IAAE8B,IAAI,EAAE;EAAE,CAAC;EACjB3B,YAAY,EAAE;IACZoB,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE;EACd,CAAC;EACDlC,aAAa,EAAE;IACboB,QAAQ,EAAE,UAAU;IACpBI,SAAS,EAAEiB,sCAA2B;IACtClB,KAAK,EAAE;EACT,CAAC;EACDX,WAAW,EAAE;IACX8B,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -13,43 +13,48 @@ class VoicePlayerModel {
|
|
|
13
13
|
downloader = new _VoiceTranscriptionsDownloaderModel.VoiceTranscriptionsDownloaderModel();
|
|
14
14
|
dropdown = new _VoiceTranscriptionsDropdownModel.VoiceTranscriptionsDropdownModel();
|
|
15
15
|
currentPlayingAttempt = null;
|
|
16
|
-
|
|
17
|
-
// Events
|
|
18
|
-
playAttempt = (0, _effector.createEvent)();
|
|
19
|
-
pauseAudio = (0, _effector.createEvent)();
|
|
20
|
-
stopAudio = (0, _effector.createEvent)();
|
|
21
16
|
setCurrentAttempt = (0, _effector.createEvent)();
|
|
22
17
|
setTranscriptsLoaded = (0, _effector.createEvent)();
|
|
23
18
|
setAudioLoading = (0, _effector.createEvent)();
|
|
24
19
|
setIsPlaying = (0, _effector.createEvent)();
|
|
25
20
|
reset = (0, _effector.createEvent)();
|
|
26
|
-
|
|
27
|
-
// Stores
|
|
28
21
|
$currentAttempt = (0, _effector.restore)(this.setCurrentAttempt, null).reset(this.reset);
|
|
29
22
|
$transcriptsLoaded = (0, _effector.restore)(this.setTranscriptsLoaded, false).reset(this.reset);
|
|
30
23
|
$audioLoading = (0, _effector.restore)(this.setAudioLoading, false).reset(this.reset);
|
|
31
24
|
$isPlaying = (0, _effector.restore)(this.setIsPlaying, false).reset(this.reset);
|
|
25
|
+
pauseAudio = (0, _effector.createEffect)(() => {
|
|
26
|
+
if (this.player) {
|
|
27
|
+
this.player.pause();
|
|
28
|
+
} else {
|
|
29
|
+
console.warn('Cannot pause: audio player not initialized');
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
stopAudio = (0, _effector.createEffect)(() => {
|
|
33
|
+
if (this.player) {
|
|
34
|
+
this.player.remove();
|
|
35
|
+
this.currentPlayingAttempt = null;
|
|
36
|
+
this.setCurrentAttempt(null);
|
|
37
|
+
} else {
|
|
38
|
+
console.warn('Cannot stop: audio player not initialized');
|
|
39
|
+
}
|
|
40
|
+
});
|
|
32
41
|
constructor(params) {
|
|
33
42
|
this.api = params.api;
|
|
34
43
|
this.audioIds = params.audioIds;
|
|
35
44
|
this.downloader.setApi(params.api);
|
|
36
|
-
|
|
37
|
-
// Initialize collection if audioIds are provided
|
|
38
45
|
if (params.audioIds) {
|
|
39
46
|
this.initializeCollection();
|
|
40
47
|
}
|
|
41
|
-
this.setupEffects();
|
|
42
48
|
}
|
|
43
|
-
|
|
44
|
-
// Public method to initialize or update audioIds
|
|
45
49
|
initializeWithAudioIds(audioIds) {
|
|
50
|
+
if (this.audioIds && JSON.stringify(this.audioIds) === JSON.stringify(audioIds)) {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
46
53
|
this.audioIds = audioIds;
|
|
47
|
-
// Clear existing collection before reinitializing
|
|
48
54
|
this.collection.clear();
|
|
49
55
|
this.initializeCollection();
|
|
50
56
|
}
|
|
51
57
|
initializeCollection() {
|
|
52
|
-
// Initialize collection with all attempts from audioIds
|
|
53
58
|
if (!this.audioIds) {
|
|
54
59
|
console.warn('VoicePlayerModel: audioIds is not provided');
|
|
55
60
|
return;
|
|
@@ -61,50 +66,12 @@ class VoicePlayerModel {
|
|
|
61
66
|
});
|
|
62
67
|
});
|
|
63
68
|
}
|
|
64
|
-
setupEffects() {
|
|
65
|
-
// Download and play audio when user selects an attempt
|
|
66
|
-
(0, _effector.sample)({
|
|
67
|
-
clock: this.playAttempt,
|
|
68
|
-
target: this.handlePlayAttempt
|
|
69
|
-
});
|
|
70
|
-
|
|
71
|
-
// Pause audio playback
|
|
72
|
-
(0, _effector.sample)({
|
|
73
|
-
clock: this.pauseAudio,
|
|
74
|
-
target: (0, _effector.createEffect)(() => {
|
|
75
|
-
if (this.player) {
|
|
76
|
-
this.player.pause();
|
|
77
|
-
} else {
|
|
78
|
-
console.warn('Cannot pause: audio player not initialized');
|
|
79
|
-
}
|
|
80
|
-
})
|
|
81
|
-
});
|
|
82
|
-
|
|
83
|
-
// Stop audio playback
|
|
84
|
-
(0, _effector.sample)({
|
|
85
|
-
clock: this.stopAudio,
|
|
86
|
-
target: (0, _effector.createEffect)(() => {
|
|
87
|
-
if (this.player) {
|
|
88
|
-
this.player.remove();
|
|
89
|
-
this.currentPlayingAttempt = null;
|
|
90
|
-
this.setCurrentAttempt(null);
|
|
91
|
-
} else {
|
|
92
|
-
console.warn('Cannot stop: audio player not initialized');
|
|
93
|
-
}
|
|
94
|
-
})
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
// Load all transcripts for all attempts
|
|
99
69
|
loadAllTranscripts = (0, _effector.createEffect)(async () => {
|
|
100
70
|
const attempts = this.collection.getAll();
|
|
101
71
|
const transcriptPromises = attempts.map(async item => {
|
|
102
|
-
// Skip if transcript already loaded
|
|
103
72
|
if (this.collection.hasTranscript(item.attemptNumber)) {
|
|
104
73
|
return;
|
|
105
74
|
}
|
|
106
|
-
|
|
107
|
-
// Mark as loading
|
|
108
75
|
this.collection.update(item.attemptNumber, {
|
|
109
76
|
transcriptLoading: true
|
|
110
77
|
});
|
|
@@ -125,13 +92,9 @@ class VoicePlayerModel {
|
|
|
125
92
|
await Promise.all(transcriptPromises);
|
|
126
93
|
this.setTranscriptsLoaded(true);
|
|
127
94
|
});
|
|
128
|
-
|
|
129
|
-
// Handle play button press for an attempt
|
|
130
95
|
handlePlayAttempt = (0, _effector.createEffect)(async attemptNumber => {
|
|
131
96
|
const item = this.collection.get(attemptNumber);
|
|
132
97
|
if (!item) return;
|
|
133
|
-
|
|
134
|
-
// Abort any ongoing download from previous attempt
|
|
135
98
|
const currentAttempt = this.$currentAttempt.getState();
|
|
136
99
|
if (currentAttempt !== null && currentAttempt !== attemptNumber) {
|
|
137
100
|
const previousItem = this.collection.get(currentAttempt);
|
|
@@ -144,14 +107,10 @@ class VoicePlayerModel {
|
|
|
144
107
|
});
|
|
145
108
|
}
|
|
146
109
|
}
|
|
147
|
-
|
|
148
|
-
// If audio already downloaded, just play it
|
|
149
110
|
if (this.collection.hasAudio(attemptNumber)) {
|
|
150
111
|
this.playAudio(attemptNumber);
|
|
151
112
|
return;
|
|
152
113
|
}
|
|
153
|
-
|
|
154
|
-
// Download audio file
|
|
155
114
|
try {
|
|
156
115
|
this.setAudioLoading(true);
|
|
157
116
|
const {
|
|
@@ -171,13 +130,10 @@ class VoicePlayerModel {
|
|
|
171
130
|
audioDownloadPromise: undefined
|
|
172
131
|
});
|
|
173
132
|
this.setAudioLoading(false);
|
|
174
|
-
|
|
175
|
-
// Play the audio after successful download
|
|
176
133
|
this.playAudio(attemptNumber);
|
|
177
134
|
} catch (error) {
|
|
178
135
|
console.error('Audio download error:', error);
|
|
179
136
|
if (error instanceof Error && error.name === 'AbortError') {
|
|
180
|
-
// Download was aborted, just clean up
|
|
181
137
|
return;
|
|
182
138
|
}
|
|
183
139
|
this.collection.update(attemptNumber, {
|
|
@@ -189,90 +145,76 @@ class VoicePlayerModel {
|
|
|
189
145
|
this.setAudioLoading(false);
|
|
190
146
|
}
|
|
191
147
|
});
|
|
192
|
-
playAudio(
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
// If currently playing a different attempt, stop it first
|
|
206
|
-
if (this.currentPlayingAttempt !== null && this.currentPlayingAttempt !== attemptNumber) {
|
|
207
|
-
this.player.remove();
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
// If already playing this attempt, pause it
|
|
211
|
-
if (this.currentPlayingAttempt === attemptNumber && this.$isPlaying.getState()) {
|
|
212
|
-
this.player.pause();
|
|
148
|
+
playAudio = (0, _effector.attach)({
|
|
149
|
+
source: this.$isPlaying,
|
|
150
|
+
mapParams: (attemptNumber, isPlaying) => ({
|
|
151
|
+
attemptNumber,
|
|
152
|
+
isPlaying
|
|
153
|
+
}),
|
|
154
|
+
effect: (0, _effector.createEffect)(async ({
|
|
155
|
+
attemptNumber,
|
|
156
|
+
isPlaying
|
|
157
|
+
}) => {
|
|
158
|
+
const item = this.collection.get(attemptNumber);
|
|
159
|
+
if (!item?.audioUri) {
|
|
160
|
+
console.warn('No audio URI available for attempt:', attemptNumber);
|
|
213
161
|
return;
|
|
214
162
|
}
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
if (this.currentPlayingAttempt === attemptNumber && !this.$isPlaying.getState()) {
|
|
218
|
-
this.player.play();
|
|
163
|
+
if (!this.player) {
|
|
164
|
+
console.warn('Audio player not initialized');
|
|
219
165
|
return;
|
|
220
166
|
}
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
167
|
+
try {
|
|
168
|
+
if (this.currentPlayingAttempt !== null && this.currentPlayingAttempt !== attemptNumber) {
|
|
169
|
+
this.player.remove();
|
|
170
|
+
}
|
|
171
|
+
if (this.currentPlayingAttempt === attemptNumber && isPlaying) {
|
|
172
|
+
this.player.pause();
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
if (this.currentPlayingAttempt === attemptNumber && !isPlaying) {
|
|
176
|
+
this.player.play();
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
this.player.replace(item.audioUri);
|
|
180
|
+
this.currentPlayingAttempt = attemptNumber;
|
|
181
|
+
this.setCurrentAttempt(attemptNumber);
|
|
182
|
+
this.player.play();
|
|
183
|
+
} catch (error) {
|
|
184
|
+
console.error('Error playing audio:', error);
|
|
185
|
+
this.setIsPlaying(false);
|
|
186
|
+
let errorMessage = 'Failed to play audio';
|
|
187
|
+
if (error instanceof Error) {
|
|
188
|
+
errorMessage = error.message;
|
|
189
|
+
}
|
|
190
|
+
this.collection.update(attemptNumber, {
|
|
191
|
+
audioError: errorMessage
|
|
192
|
+
});
|
|
233
193
|
}
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
});
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
// Handle playback completion (called from hook)
|
|
194
|
+
})
|
|
195
|
+
});
|
|
241
196
|
handlePlaybackComplete() {
|
|
242
197
|
this.currentPlayingAttempt = null;
|
|
243
198
|
this.setCurrentAttempt(null);
|
|
244
199
|
}
|
|
245
|
-
|
|
246
|
-
// Public method to get transcript for an attempt
|
|
247
200
|
getTranscript(attemptNumber) {
|
|
248
201
|
return this.collection.get(attemptNumber)?.transcript;
|
|
249
202
|
}
|
|
250
|
-
|
|
251
|
-
// Public method to check if transcript is loading
|
|
252
203
|
isTranscriptLoading(attemptNumber) {
|
|
253
204
|
return this.collection.get(attemptNumber)?.transcriptLoading || false;
|
|
254
205
|
}
|
|
255
|
-
|
|
256
|
-
// Public method to check if audio is loading
|
|
257
206
|
isAudioLoading(attemptNumber) {
|
|
258
207
|
return this.collection.get(attemptNumber)?.audioLoading || false;
|
|
259
208
|
}
|
|
260
|
-
|
|
261
|
-
// Public method to get all attempts
|
|
262
209
|
getAllAttempts() {
|
|
263
210
|
return this.collection.getAll();
|
|
264
211
|
}
|
|
265
|
-
|
|
266
|
-
// Cleanup method
|
|
267
212
|
cleanup() {
|
|
268
|
-
// Stop and cleanup audio player
|
|
269
213
|
if (this.player) {
|
|
270
214
|
try {
|
|
271
215
|
this.player.remove();
|
|
272
216
|
} catch (error) {}
|
|
273
217
|
}
|
|
274
|
-
|
|
275
|
-
// Cleanup blob URLs to prevent memory leaks
|
|
276
218
|
this.collection.getAll().forEach(item => {
|
|
277
219
|
if (item.audioUri && item.audioUri.startsWith('blob:')) {
|
|
278
220
|
try {
|
|
@@ -282,8 +224,6 @@ class VoicePlayerModel {
|
|
|
282
224
|
}
|
|
283
225
|
}
|
|
284
226
|
});
|
|
285
|
-
|
|
286
|
-
// Abort any ongoing downloads
|
|
287
227
|
this.collection.getAll().forEach(item => {
|
|
288
228
|
if (item.controller) {
|
|
289
229
|
this.downloader.abortDownload(item.controller);
|
|
@@ -300,14 +240,9 @@ class VoicePlayerModel {
|
|
|
300
240
|
if (this.currentPlayingAttempt === attemptNumber && this.$isPlaying.getState()) {
|
|
301
241
|
this.pauseAudio();
|
|
302
242
|
} else {
|
|
303
|
-
this.
|
|
243
|
+
this.handlePlayAttempt(attemptNumber);
|
|
304
244
|
}
|
|
305
245
|
}
|
|
306
|
-
|
|
307
|
-
// Public method to check if a specific attempt is playing
|
|
308
|
-
isAttemptPlaying(attemptNumber) {
|
|
309
|
-
return this.currentPlayingAttempt === attemptNumber && this.$isPlaying.getState();
|
|
310
|
-
}
|
|
311
246
|
}
|
|
312
247
|
exports.VoicePlayerModel = VoicePlayerModel;
|
|
313
248
|
//# sourceMappingURL=VoicePlayer.model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_effector","require","_VoiceTranscriptionsCollection","_VoiceTranscriptionsDownloaderModel","_VoiceTranscriptionsDropdownModel","VoicePlayerModel","collection","VoiceTranscriptionsCollection","downloader","VoiceTranscriptionsDownloaderModel","dropdown","VoiceTranscriptionsDropdownModel","currentPlayingAttempt","
|
|
1
|
+
{"version":3,"names":["_effector","require","_VoiceTranscriptionsCollection","_VoiceTranscriptionsDownloaderModel","_VoiceTranscriptionsDropdownModel","VoicePlayerModel","collection","VoiceTranscriptionsCollection","downloader","VoiceTranscriptionsDownloaderModel","dropdown","VoiceTranscriptionsDropdownModel","currentPlayingAttempt","setCurrentAttempt","createEvent","setTranscriptsLoaded","setAudioLoading","setIsPlaying","reset","$currentAttempt","restore","$transcriptsLoaded","$audioLoading","$isPlaying","pauseAudio","createEffect","player","pause","console","warn","stopAudio","remove","constructor","params","api","audioIds","setApi","initializeCollection","initializeWithAudioIds","JSON","stringify","clear","Object","entries","forEach","attemptNumber","audioFileId","add","Number","loadAllTranscripts","attempts","getAll","transcriptPromises","map","item","hasTranscript","update","transcriptLoading","response","getAudioFileTranscript","transcript","text","transcriptError","undefined","error","Error","message","Promise","all","handlePlayAttempt","get","currentAttempt","getState","previousItem","controller","audioLoading","abortDownload","audioDownloadPromise","hasAudio","playAudio","collectionItem","downloadPromise","download","result","audioUri","uri","audioError","name","attach","source","mapParams","isPlaying","effect","play","replace","errorMessage","handlePlaybackComplete","getTranscript","isTranscriptLoading","isAudioLoading","getAllAttempts","cleanup","startsWith","URL","revokeObjectURL","e","togglePlayPause","exports"],"sourceRoot":"../../../../../../src","sources":["features/voice/playing/model/VoicePlayer.model.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -78,21 +78,19 @@ export const VoiceTranscriptionsDropdown = ({
|
|
|
78
78
|
});
|
|
79
79
|
}, 100);
|
|
80
80
|
}, []);
|
|
81
|
-
|
|
82
|
-
// Initialize model with audio IDs
|
|
83
81
|
useEffect(() => {
|
|
84
82
|
if (audioIds && Object.keys(audioIds).length > 0) {
|
|
85
83
|
model.initializeWithAudioIds(audioIds);
|
|
86
84
|
}
|
|
87
|
-
return () => model.cleanup();
|
|
88
85
|
}, [model, audioIds]);
|
|
86
|
+
useEffect(() => {
|
|
87
|
+
return () => model.cleanup();
|
|
88
|
+
}, [model]);
|
|
89
89
|
|
|
90
90
|
// Update attempts when state changes
|
|
91
91
|
useEffect(() => {
|
|
92
92
|
setAttempts(model.getAllAttempts());
|
|
93
93
|
}, [transcriptsLoaded, audioLoading, currentAttempt, isPlaying, model]);
|
|
94
|
-
|
|
95
|
-
// Handle active attempt changes: scroll, stop audio, collapse if no transcript
|
|
96
94
|
useEffect(() => {
|
|
97
95
|
if (activeAttempt !== null) {
|
|
98
96
|
scrollToAttempt(activeAttempt);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Typography","ScrollableList","CaretDownIcon","COLORS","IS_WEB","useUnit","React","useRef","useEffect","useState","useCallback","TouchableOpacity","View","StyleSheet","Animated","FadeIn","FadeOut","useVoicePlayer","useVoiceTranscriptionsDropdown","PlayButton","VoiceTranscriptionsDropdownItem","DROPDOWN_MAX_CONTENT_HEIGHT","useText","jsx","_jsx","jsxs","_jsxs","AnimatedTouchableOpacity","createAnimatedComponent","getActiveAttempt","attemptOffset","attemptsCount","undefined","getButtonStatus","audioLoading","activeAttempt","currentAttempt","isPlaying","VoiceTranscriptionsDropdown","style","model","audioIds","onAttemptOffsetChange","scrollRef","prevActiveAttemptRef","t","transcriptsLoaded","$currentAttempt","$audioLoading","$transcriptsLoaded","$isPlaying","attempts","setAttempts","getAllAttempts","listAnimatedStyle","iconAnimatedStyle","onListLayout","dropdown","buttonStatus","hasActiveTranscript","getTranscript","scrollToAttempt","attemptNumber","index","findIndex","item","current","scrollToIndex","animated","viewPosition","handleItemToggle","attempt","handlePlayPress","togglePlayPause","handleScrollToIndexFailed","info","setTimeout","Object","keys","length","initializeWithAudioIds","cleanup","stopAudio","setExpanded","loadAllTranscripts","renderItem","isLoading","isTranscriptLoading","transcript","isActive","content","onToggle","styles","container","children","header","title","variant","entering","duration","exiting","status","onPress","overflow","onLayout","listContainer","bounces","ref","hideShadow","data","keyExtractor","toString","onScrollToIndexFailed","list","contentContainerStyle","listContent","expandButton","toggleExpand","size","create","position","top","left","width","maxHeight","minHeight","padding","boxShadow","borderRadius","backgroundColor","NEUTRAL_1","flexDirection","justifyContent","alignItems","marginBottom","height","color","NEUTRAL_9","marginLeft","flex","paddingHorizontal"],"sourceRoot":"../../../../../../src","sources":["features/voice/playing/components/VoiceTranscriptionsDropdown.tsx"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["Typography","ScrollableList","CaretDownIcon","COLORS","IS_WEB","useUnit","React","useRef","useEffect","useState","useCallback","TouchableOpacity","View","StyleSheet","Animated","FadeIn","FadeOut","useVoicePlayer","useVoiceTranscriptionsDropdown","PlayButton","VoiceTranscriptionsDropdownItem","DROPDOWN_MAX_CONTENT_HEIGHT","useText","jsx","_jsx","jsxs","_jsxs","AnimatedTouchableOpacity","createAnimatedComponent","getActiveAttempt","attemptOffset","attemptsCount","undefined","getButtonStatus","audioLoading","activeAttempt","currentAttempt","isPlaying","VoiceTranscriptionsDropdown","style","model","audioIds","onAttemptOffsetChange","scrollRef","prevActiveAttemptRef","t","transcriptsLoaded","$currentAttempt","$audioLoading","$transcriptsLoaded","$isPlaying","attempts","setAttempts","getAllAttempts","listAnimatedStyle","iconAnimatedStyle","onListLayout","dropdown","buttonStatus","hasActiveTranscript","getTranscript","scrollToAttempt","attemptNumber","index","findIndex","item","current","scrollToIndex","animated","viewPosition","handleItemToggle","attempt","handlePlayPress","togglePlayPause","handleScrollToIndexFailed","info","setTimeout","Object","keys","length","initializeWithAudioIds","cleanup","stopAudio","setExpanded","loadAllTranscripts","renderItem","isLoading","isTranscriptLoading","transcript","isActive","content","onToggle","styles","container","children","header","title","variant","entering","duration","exiting","status","onPress","overflow","onLayout","listContainer","bounces","ref","hideShadow","data","keyExtractor","toString","onScrollToIndexFailed","list","contentContainerStyle","listContent","expandButton","toggleExpand","size","create","position","top","left","width","maxHeight","minHeight","padding","boxShadow","borderRadius","backgroundColor","NEUTRAL_1","flexDirection","justifyContent","alignItems","marginBottom","height","color","NEUTRAL_9","marginLeft","flex","paddingHorizontal"],"sourceRoot":"../../../../../../src","sources":["features/voice/playing/components/VoiceTranscriptionsDropdown.tsx"],"mappings":"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","ignoreList":[]}
|