@magmamath/students-features 0.9.107-rc.62 → 0.9.107-rc.64

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.
@@ -28,6 +28,9 @@ class VoiceRecordModel {
28
28
  if (recorderState !== _constants.VoiceRecorderState.IDLE || currentRecord) return true;
29
29
  return false;
30
30
  });
31
+ deleteAudioRecord = (0, _effector.createEffect)(async audioFileId => {
32
+ await this.api.deleteAudioFile(audioFileId);
33
+ });
31
34
  deleteCurrentRecording = (0, _effector.attach)({
32
35
  source: this.$currentKey,
33
36
  mapParams: (props, currentKey) => ({
@@ -40,6 +43,9 @@ class VoiceRecordModel {
40
43
  notification
41
44
  }) => {
42
45
  const recordingItem = this.collection.get(currentKey);
46
+ if (recordingItem?.id) {
47
+ this.deleteAudioRecord(recordingItem.id);
48
+ }
43
49
  this.abortUploadIfInProgress(recordingItem);
44
50
  this.resetRecordingState(currentKey);
45
51
  if (notification) {
@@ -47,26 +53,31 @@ class VoiceRecordModel {
47
53
  }
48
54
  })
49
55
  });
50
- initializeRecording = (0, _effector.createEffect)(async () => {
51
- this.deleteCurrentRecording({
52
- notification: false
53
- });
54
- const hasPermissions = await (0, _helpers.ensureRecordingPermissions)();
55
- if (!hasPermissions) {
56
- this.notification.error((0, _index.t)('voice.noMicrophoneAccess'));
57
- return;
58
- }
59
- const inputs = await (0, _helpers.getAvailableInputs)(this.recorderModel.recorder);
60
- this.recorderModel.setAvailableInputs(inputs);
61
- if (inputs.length === 0) {
62
- this.notification.error((0, _index.t)('voice.noMicrophoneFound'));
63
- return;
64
- }
65
- return this.recorderModel.start().catch(error => {
66
- if (error.name === 'NotAllowedError') {
67
- this.notification.error((0, _index.t)('voice.noMicrophoneAccessBySystem'));
56
+ initializeRecording = (0, _effector.attach)({
57
+ source: this.$currentRecord,
58
+ effect: (0, _effector.createEffect)(async currentRecord => {
59
+ if (currentRecord) {
60
+ this.deleteCurrentRecording({
61
+ notification: false
62
+ });
68
63
  }
69
- });
64
+ const hasPermissions = await (0, _helpers.ensureRecordingPermissions)();
65
+ if (!hasPermissions) {
66
+ this.notification.error((0, _index.t)('voice.noMicrophoneAccess'));
67
+ return;
68
+ }
69
+ const inputs = await (0, _helpers.getAvailableInputs)(this.recorderModel.recorder);
70
+ this.recorderModel.setAvailableInputs(inputs);
71
+ if (inputs.length === 0) {
72
+ this.notification.error((0, _index.t)('voice.noMicrophoneFound'));
73
+ return;
74
+ }
75
+ return this.recorderModel.start().catch(error => {
76
+ if (error.name === 'NotAllowedError') {
77
+ this.notification.error((0, _index.t)('voice.noMicrophoneAccessBySystem'));
78
+ }
79
+ });
80
+ })
70
81
  });
71
82
  stop = (0, _effector.createEffect)(async () => {
72
83
  this.shouldDiscardRecording = true;
@@ -1 +1 @@
1
- {"version":3,"names":["_effector","require","_RecorderModel","_VoiceRecordCollection","_UploaderModel","_constants","_helpers","_index","VoiceRecordModel","recorderModel","RecorderModel","collection","VoiceRecordsCollection","uploader","UploaderModel","shouldDiscardRecording","setCurrentKey","createEvent","setCurrentRecord","reset","setIsButtonDisabled","startAudioUpload","$currentKey","restore","$currentRecord","$isButtonDisabled","$isExpanded","combine","$voiceRecordState","recorderState","currentRecord","VoiceRecorderState","IDLE","deleteCurrentRecording","attach","source","mapParams","props","currentKey","notification","effect","createEffect","recordingItem","get","abortUploadIfInProgress","resetRecordingState","success","t","initializeRecording","hasPermissions","ensureRecordingPermissions","error","inputs","getAvailableInputs","recorder","setAvailableInputs","length","start","catch","name","stop","clearStopResolver","cleanup","getStatus","isRecording","recordingStatusUpdate","status","isFinished","url","getRecordingItem","key","RECORDING","stopAndAwaitResult","console","undefined","id","controller","abortUpload","delete","handleAudioUpload","uri","durationMs","collectionItem","uploadPromise","upload","fileName","add","resolveRecord","then","data","update","setupUploadHandler","sample","clock","$lastKnownDurationMs","filter","fn","target","setupCurrentRecordSync","recorderButtonHandler","events","undoRecord","constructor","api","setApi","exports"],"sourceRoot":"../../../../../../src","sources":["features/voice/recording/model/VoiceRecord.model.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_effector","require","_RecorderModel","_VoiceRecordCollection","_UploaderModel","_constants","_helpers","_index","VoiceRecordModel","recorderModel","RecorderModel","collection","VoiceRecordsCollection","uploader","UploaderModel","shouldDiscardRecording","setCurrentKey","createEvent","setCurrentRecord","reset","setIsButtonDisabled","startAudioUpload","$currentKey","restore","$currentRecord","$isButtonDisabled","$isExpanded","combine","$voiceRecordState","recorderState","currentRecord","VoiceRecorderState","IDLE","deleteAudioRecord","createEffect","audioFileId","api","deleteAudioFile","deleteCurrentRecording","attach","source","mapParams","props","currentKey","notification","effect","recordingItem","get","id","abortUploadIfInProgress","resetRecordingState","success","t","initializeRecording","hasPermissions","ensureRecordingPermissions","error","inputs","getAvailableInputs","recorder","setAvailableInputs","length","start","catch","name","stop","clearStopResolver","cleanup","getStatus","isRecording","recordingStatusUpdate","status","isFinished","url","getRecordingItem","key","RECORDING","stopAndAwaitResult","console","undefined","controller","abortUpload","delete","handleAudioUpload","uri","durationMs","collectionItem","uploadPromise","upload","fileName","add","resolveRecord","then","data","update","setupUploadHandler","sample","clock","$lastKnownDurationMs","filter","fn","target","setupCurrentRecordSync","recorderButtonHandler","events","undoRecord","constructor","setApi","exports"],"sourceRoot":"../../../../../../src","sources":["features/voice/recording/model/VoiceRecord.model.ts"],"mappings":"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","ignoreList":[]}
@@ -24,6 +24,9 @@ export class VoiceRecordModel {
24
24
  if (recorderState !== VoiceRecorderState.IDLE || currentRecord) return true;
25
25
  return false;
26
26
  });
27
+ deleteAudioRecord = createEffect(async audioFileId => {
28
+ await this.api.deleteAudioFile(audioFileId);
29
+ });
27
30
  deleteCurrentRecording = attach({
28
31
  source: this.$currentKey,
29
32
  mapParams: (props, currentKey) => ({
@@ -36,6 +39,9 @@ export class VoiceRecordModel {
36
39
  notification
37
40
  }) => {
38
41
  const recordingItem = this.collection.get(currentKey);
42
+ if (recordingItem?.id) {
43
+ this.deleteAudioRecord(recordingItem.id);
44
+ }
39
45
  this.abortUploadIfInProgress(recordingItem);
40
46
  this.resetRecordingState(currentKey);
41
47
  if (notification) {
@@ -43,26 +49,31 @@ export class VoiceRecordModel {
43
49
  }
44
50
  })
45
51
  });
46
- initializeRecording = createEffect(async () => {
47
- this.deleteCurrentRecording({
48
- notification: false
49
- });
50
- const hasPermissions = await ensureRecordingPermissions();
51
- if (!hasPermissions) {
52
- this.notification.error(t('voice.noMicrophoneAccess'));
53
- return;
54
- }
55
- const inputs = await getAvailableInputs(this.recorderModel.recorder);
56
- this.recorderModel.setAvailableInputs(inputs);
57
- if (inputs.length === 0) {
58
- this.notification.error(t('voice.noMicrophoneFound'));
59
- return;
60
- }
61
- return this.recorderModel.start().catch(error => {
62
- if (error.name === 'NotAllowedError') {
63
- this.notification.error(t('voice.noMicrophoneAccessBySystem'));
52
+ initializeRecording = attach({
53
+ source: this.$currentRecord,
54
+ effect: createEffect(async currentRecord => {
55
+ if (currentRecord) {
56
+ this.deleteCurrentRecording({
57
+ notification: false
58
+ });
64
59
  }
65
- });
60
+ const hasPermissions = await ensureRecordingPermissions();
61
+ if (!hasPermissions) {
62
+ this.notification.error(t('voice.noMicrophoneAccess'));
63
+ return;
64
+ }
65
+ const inputs = await getAvailableInputs(this.recorderModel.recorder);
66
+ this.recorderModel.setAvailableInputs(inputs);
67
+ if (inputs.length === 0) {
68
+ this.notification.error(t('voice.noMicrophoneFound'));
69
+ return;
70
+ }
71
+ return this.recorderModel.start().catch(error => {
72
+ if (error.name === 'NotAllowedError') {
73
+ this.notification.error(t('voice.noMicrophoneAccessBySystem'));
74
+ }
75
+ });
76
+ })
66
77
  });
67
78
  stop = createEffect(async () => {
68
79
  this.shouldDiscardRecording = true;
@@ -1 +1 @@
1
- {"version":3,"names":["attach","combine","createEffect","createEvent","restore","sample","RecorderModel","VoiceRecordsCollection","UploaderModel","VoiceRecorderState","ensureRecordingPermissions","getAvailableInputs","t","VoiceRecordModel","recorderModel","collection","uploader","shouldDiscardRecording","setCurrentKey","setCurrentRecord","reset","setIsButtonDisabled","startAudioUpload","$currentKey","$currentRecord","$isButtonDisabled","$isExpanded","$voiceRecordState","recorderState","currentRecord","IDLE","deleteCurrentRecording","source","mapParams","props","currentKey","notification","effect","recordingItem","get","abortUploadIfInProgress","resetRecordingState","success","initializeRecording","hasPermissions","error","inputs","recorder","setAvailableInputs","length","start","catch","name","stop","clearStopResolver","cleanup","getStatus","isRecording","recordingStatusUpdate","status","isFinished","url","getRecordingItem","key","RECORDING","stopAndAwaitResult","console","undefined","id","controller","abortUpload","delete","handleAudioUpload","uri","durationMs","collectionItem","uploadPromise","upload","fileName","add","resolveRecord","then","data","update","setupUploadHandler","clock","$lastKnownDurationMs","filter","fn","target","setupCurrentRecordSync","recorderButtonHandler","events","undoRecord","constructor","api","setApi"],"sourceRoot":"../../../../../../src","sources":["features/voice/recording/model/VoiceRecord.model.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["attach","combine","createEffect","createEvent","restore","sample","RecorderModel","VoiceRecordsCollection","UploaderModel","VoiceRecorderState","ensureRecordingPermissions","getAvailableInputs","t","VoiceRecordModel","recorderModel","collection","uploader","shouldDiscardRecording","setCurrentKey","setCurrentRecord","reset","setIsButtonDisabled","startAudioUpload","$currentKey","$currentRecord","$isButtonDisabled","$isExpanded","$voiceRecordState","recorderState","currentRecord","IDLE","deleteAudioRecord","audioFileId","api","deleteAudioFile","deleteCurrentRecording","source","mapParams","props","currentKey","notification","effect","recordingItem","get","id","abortUploadIfInProgress","resetRecordingState","success","initializeRecording","hasPermissions","error","inputs","recorder","setAvailableInputs","length","start","catch","name","stop","clearStopResolver","cleanup","getStatus","isRecording","recordingStatusUpdate","status","isFinished","url","getRecordingItem","key","RECORDING","stopAndAwaitResult","console","undefined","controller","abortUpload","delete","handleAudioUpload","uri","durationMs","collectionItem","uploadPromise","upload","fileName","add","resolveRecord","then","data","update","setupUploadHandler","clock","$lastKnownDurationMs","filter","fn","target","setupCurrentRecordSync","recorderButtonHandler","events","undoRecord","constructor","setApi"],"sourceRoot":"../../../../../../src","sources":["features/voice/recording/model/VoiceRecord.model.ts"],"mappings":"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","ignoreList":[]}
@@ -31,6 +31,7 @@ export declare class VoiceRecordModel {
31
31
  readonly $currentRecord: import("effector").StoreWritable<any>;
32
32
  readonly $isButtonDisabled: import("effector").StoreWritable<boolean>;
33
33
  readonly $isExpanded: import("effector").Store<boolean>;
34
+ readonly deleteAudioRecord: import("effector").Effect<string, void, Error>;
34
35
  readonly deleteCurrentRecording: import("effector").Effect<void | DeleteCurrentRecordingProps, void, Error>;
35
36
  readonly initializeRecording: import("effector").Effect<void, void, Error>;
36
37
  readonly stop: import("effector").Effect<void, void, Error>;
@@ -1 +1 @@
1
- {"version":3,"file":"VoiceRecord.model.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/model/VoiceRecord.model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,OAAO,EACL,yBAAyB,EACzB,gBAAgB,EAChB,4BAA4B,EAC7B,MAAM,aAAa,CAAA;AAIpB,KAAK,sBAAsB,GAAG;IAC5B,GAAG,EAAE,gBAAgB,CAAA;IACrB,YAAY,EAAE,4BAA4B,CAAA;IAC1C,MAAM,EAAE,iBAAiB,CAAA;CAC1B,CAAA;AAYD,KAAK,iBAAiB,GAAG;IACvB,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,UAAU,EAAE,MAAM,IAAI,CAAA;CACvB,CAAA;AAED,KAAK,2BAA2B,GAAG;IACjC,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAUD,qBAAa,gBAAgB;IAC3B,SAAgB,aAAa,2CAAiD;IAC9E,SAAgB,UAAU,yBAA+B;IACzD,SAAgB,QAAQ,gBAAsB;IAC9C,SAAgB,GAAG,EAAE,gBAAgB,CAAA;IACrC,SAAgB,YAAY,EAAE,4BAA4B,CAAA;IAC1D,SAAgB,MAAM,EAAE,iBAAiB,CAAA;IACzC,OAAO,CAAC,sBAAsB,CAAQ;IAEtC,SAAgB,aAAa,2CAAwB;IACrD,SAAgB,gBAAgB,wCAAqB;IACrD,SAAgB,KAAK,yCAAgB;IACrC,SAAgB,mBAAmB,4CAAyB;IAC5D,SAAgB,gBAAgB,2CAAwB;IAExD,SAAgB,WAAW,2CAAkC;IAC7D,SAAgB,cAAc,wCAAyD;IAEvF,SAAgB,iBAAiB,4CAA2C;IAE5E,SAAgB,WAAW,oCAO1B;IAED,SAAgB,sBAAsB,6EAiBpC;IAEF,SAAgB,mBAAmB,+CAsBjC;IAEF,SAAgB,IAAI,+CAKlB;IAEF,SAAgB,OAAO,sBAKtB;IAED,SAAgB,qBAAqB,WAAY,GAAG,UAanD;IAED,SAAgB,gBAAgB,kFAkB9B;IAEF,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,iBAAiB,CA2BxB;IAED,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,sBAAsB;IAe9B,SAAgB,qBAAqB,+CAiBnC;gBAEU,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,sBAAsB;CASlE"}
1
+ {"version":3,"file":"VoiceRecord.model.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/model/VoiceRecord.model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,OAAO,EACL,yBAAyB,EACzB,gBAAgB,EAChB,4BAA4B,EAC7B,MAAM,aAAa,CAAA;AAIpB,KAAK,sBAAsB,GAAG;IAC5B,GAAG,EAAE,gBAAgB,CAAA;IACrB,YAAY,EAAE,4BAA4B,CAAA;IAC1C,MAAM,EAAE,iBAAiB,CAAA;CAC1B,CAAA;AAYD,KAAK,iBAAiB,GAAG;IACvB,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,UAAU,EAAE,MAAM,IAAI,CAAA;CACvB,CAAA;AAED,KAAK,2BAA2B,GAAG;IACjC,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAUD,qBAAa,gBAAgB;IAC3B,SAAgB,aAAa,2CAAiD;IAC9E,SAAgB,UAAU,yBAA+B;IACzD,SAAgB,QAAQ,gBAAsB;IAC9C,SAAgB,GAAG,EAAE,gBAAgB,CAAA;IACrC,SAAgB,YAAY,EAAE,4BAA4B,CAAA;IAC1D,SAAgB,MAAM,EAAE,iBAAiB,CAAA;IACzC,OAAO,CAAC,sBAAsB,CAAQ;IAEtC,SAAgB,aAAa,2CAAwB;IACrD,SAAgB,gBAAgB,wCAAqB;IACrD,SAAgB,KAAK,yCAAgB;IACrC,SAAgB,mBAAmB,4CAAyB;IAC5D,SAAgB,gBAAgB,2CAAwB;IAExD,SAAgB,WAAW,2CAAkC;IAC7D,SAAgB,cAAc,wCAAyD;IAEvF,SAAgB,iBAAiB,4CAA2C;IAE5E,SAAgB,WAAW,oCAO1B;IAED,SAAgB,iBAAiB,iDAE/B;IAEF,SAAgB,sBAAsB,6EAqBpC;IAEF,SAAgB,mBAAmB,+CA2BjC;IAEF,SAAgB,IAAI,+CAKlB;IAEF,SAAgB,OAAO,sBAKtB;IAED,SAAgB,qBAAqB,WAAY,GAAG,UAanD;IAED,SAAgB,gBAAgB,kFAkB9B;IAEF,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,iBAAiB,CA2BxB;IAED,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,sBAAsB;IAe9B,SAAgB,qBAAqB,+CAiBnC;gBAEU,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,sBAAsB;CASlE"}
@@ -41,6 +41,7 @@ export type DownloadAudioPayload = {
41
41
  };
42
42
  export type VoiceRecorderApi = {
43
43
  uploadAudioFile: (data: UploadAudioPayload) => Promise<UploadAudioResponse>;
44
+ deleteAudioFile: (audioFileId: string) => Promise<void>;
44
45
  };
45
46
  type TranscriptionStatus = 'pending' | 'completed' | 'failed';
46
47
  export type AudioTranscriptResponse = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/features/voice/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAA;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErC,MAAM,MAAM,4BAA4B,GAAG;IACzC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAChC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,eAAe,CAAC;IAC/C,iBAAiB,EAAE,QAAQ,CAAA;CAC5B,CAAC,CAAA;AAEF,KAAK,mBAAmB,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,kBAAkB,CAAC,EAAE,OAAO,CAAC,IAAI,GAAG,mBAAmB,CAAC,CAAA;IACxD,UAAU,CAAC,EAAE,eAAe,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,CAAC,SAAS,EAAE,MAAM,GAAG,yBAAyB,CAAA;CAC/C,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAA;AAEjF,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,gBAAgB,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,eAAe,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAA;CAC5E,CAAA;AAED,KAAK,mBAAmB,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAA;AAC7D,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,mBAAmB,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,sBAAsB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAA;IACjF,iBAAiB,EAAE,CACjB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,KAC/B,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;CAClC,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/features/voice/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAA;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErC,MAAM,MAAM,4BAA4B,GAAG;IACzC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAChC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,eAAe,CAAC;IAC/C,iBAAiB,EAAE,QAAQ,CAAA;CAC5B,CAAC,CAAA;AAEF,KAAK,mBAAmB,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,kBAAkB,CAAC,EAAE,OAAO,CAAC,IAAI,GAAG,mBAAmB,CAAC,CAAA;IACxD,UAAU,CAAC,EAAE,eAAe,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,CAAC,SAAS,EAAE,MAAM,GAAG,yBAAyB,CAAA;CAC/C,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAA;AAEjF,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,gBAAgB,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,eAAe,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAC3E,eAAe,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACxD,CAAA;AAED,KAAK,mBAAmB,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAA;AAC7D,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,mBAAmB,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,sBAAsB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAA;IACjF,iBAAiB,EAAE,CACjB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,KAC/B,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;CAClC,CAAA"}
@@ -31,6 +31,7 @@ export declare class VoiceRecordModel {
31
31
  readonly $currentRecord: import("effector").StoreWritable<any>;
32
32
  readonly $isButtonDisabled: import("effector").StoreWritable<boolean>;
33
33
  readonly $isExpanded: import("effector").Store<boolean>;
34
+ readonly deleteAudioRecord: import("effector").Effect<string, void, Error>;
34
35
  readonly deleteCurrentRecording: import("effector").Effect<void | DeleteCurrentRecordingProps, void, Error>;
35
36
  readonly initializeRecording: import("effector").Effect<void, void, Error>;
36
37
  readonly stop: import("effector").Effect<void, void, Error>;
@@ -1 +1 @@
1
- {"version":3,"file":"VoiceRecord.model.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/model/VoiceRecord.model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,OAAO,EACL,yBAAyB,EACzB,gBAAgB,EAChB,4BAA4B,EAC7B,MAAM,aAAa,CAAA;AAIpB,KAAK,sBAAsB,GAAG;IAC5B,GAAG,EAAE,gBAAgB,CAAA;IACrB,YAAY,EAAE,4BAA4B,CAAA;IAC1C,MAAM,EAAE,iBAAiB,CAAA;CAC1B,CAAA;AAYD,KAAK,iBAAiB,GAAG;IACvB,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,UAAU,EAAE,MAAM,IAAI,CAAA;CACvB,CAAA;AAED,KAAK,2BAA2B,GAAG;IACjC,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAUD,qBAAa,gBAAgB;IAC3B,SAAgB,aAAa,2CAAiD;IAC9E,SAAgB,UAAU,yBAA+B;IACzD,SAAgB,QAAQ,gBAAsB;IAC9C,SAAgB,GAAG,EAAE,gBAAgB,CAAA;IACrC,SAAgB,YAAY,EAAE,4BAA4B,CAAA;IAC1D,SAAgB,MAAM,EAAE,iBAAiB,CAAA;IACzC,OAAO,CAAC,sBAAsB,CAAQ;IAEtC,SAAgB,aAAa,2CAAwB;IACrD,SAAgB,gBAAgB,wCAAqB;IACrD,SAAgB,KAAK,yCAAgB;IACrC,SAAgB,mBAAmB,4CAAyB;IAC5D,SAAgB,gBAAgB,2CAAwB;IAExD,SAAgB,WAAW,2CAAkC;IAC7D,SAAgB,cAAc,wCAAyD;IAEvF,SAAgB,iBAAiB,4CAA2C;IAE5E,SAAgB,WAAW,oCAO1B;IAED,SAAgB,sBAAsB,6EAiBpC;IAEF,SAAgB,mBAAmB,+CAsBjC;IAEF,SAAgB,IAAI,+CAKlB;IAEF,SAAgB,OAAO,sBAKtB;IAED,SAAgB,qBAAqB,WAAY,GAAG,UAanD;IAED,SAAgB,gBAAgB,kFAkB9B;IAEF,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,iBAAiB,CA2BxB;IAED,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,sBAAsB;IAe9B,SAAgB,qBAAqB,+CAiBnC;gBAEU,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,sBAAsB;CASlE"}
1
+ {"version":3,"file":"VoiceRecord.model.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/voice/recording/model/VoiceRecord.model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,OAAO,EACL,yBAAyB,EACzB,gBAAgB,EAChB,4BAA4B,EAC7B,MAAM,aAAa,CAAA;AAIpB,KAAK,sBAAsB,GAAG;IAC5B,GAAG,EAAE,gBAAgB,CAAA;IACrB,YAAY,EAAE,4BAA4B,CAAA;IAC1C,MAAM,EAAE,iBAAiB,CAAA;CAC1B,CAAA;AAYD,KAAK,iBAAiB,GAAG;IACvB,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,UAAU,EAAE,MAAM,IAAI,CAAA;CACvB,CAAA;AAED,KAAK,2BAA2B,GAAG;IACjC,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAUD,qBAAa,gBAAgB;IAC3B,SAAgB,aAAa,2CAAiD;IAC9E,SAAgB,UAAU,yBAA+B;IACzD,SAAgB,QAAQ,gBAAsB;IAC9C,SAAgB,GAAG,EAAE,gBAAgB,CAAA;IACrC,SAAgB,YAAY,EAAE,4BAA4B,CAAA;IAC1D,SAAgB,MAAM,EAAE,iBAAiB,CAAA;IACzC,OAAO,CAAC,sBAAsB,CAAQ;IAEtC,SAAgB,aAAa,2CAAwB;IACrD,SAAgB,gBAAgB,wCAAqB;IACrD,SAAgB,KAAK,yCAAgB;IACrC,SAAgB,mBAAmB,4CAAyB;IAC5D,SAAgB,gBAAgB,2CAAwB;IAExD,SAAgB,WAAW,2CAAkC;IAC7D,SAAgB,cAAc,wCAAyD;IAEvF,SAAgB,iBAAiB,4CAA2C;IAE5E,SAAgB,WAAW,oCAO1B;IAED,SAAgB,iBAAiB,iDAE/B;IAEF,SAAgB,sBAAsB,6EAqBpC;IAEF,SAAgB,mBAAmB,+CA2BjC;IAEF,SAAgB,IAAI,+CAKlB;IAEF,SAAgB,OAAO,sBAKtB;IAED,SAAgB,qBAAqB,WAAY,GAAG,UAanD;IAED,SAAgB,gBAAgB,kFAkB9B;IAEF,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,iBAAiB,CA2BxB;IAED,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,sBAAsB;IAe9B,SAAgB,qBAAqB,+CAiBnC;gBAEU,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,sBAAsB;CASlE"}
@@ -41,6 +41,7 @@ export type DownloadAudioPayload = {
41
41
  };
42
42
  export type VoiceRecorderApi = {
43
43
  uploadAudioFile: (data: UploadAudioPayload) => Promise<UploadAudioResponse>;
44
+ deleteAudioFile: (audioFileId: string) => Promise<void>;
44
45
  };
45
46
  type TranscriptionStatus = 'pending' | 'completed' | 'failed';
46
47
  export type AudioTranscriptResponse = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/features/voice/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAA;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErC,MAAM,MAAM,4BAA4B,GAAG;IACzC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAChC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,eAAe,CAAC;IAC/C,iBAAiB,EAAE,QAAQ,CAAA;CAC5B,CAAC,CAAA;AAEF,KAAK,mBAAmB,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,kBAAkB,CAAC,EAAE,OAAO,CAAC,IAAI,GAAG,mBAAmB,CAAC,CAAA;IACxD,UAAU,CAAC,EAAE,eAAe,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,CAAC,SAAS,EAAE,MAAM,GAAG,yBAAyB,CAAA;CAC/C,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAA;AAEjF,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,gBAAgB,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,eAAe,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAA;CAC5E,CAAA;AAED,KAAK,mBAAmB,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAA;AAC7D,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,mBAAmB,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,sBAAsB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAA;IACjF,iBAAiB,EAAE,CACjB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,KAC/B,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;CAClC,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/features/voice/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAA;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErC,MAAM,MAAM,4BAA4B,GAAG;IACzC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAChC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,eAAe,CAAC;IAC/C,iBAAiB,EAAE,QAAQ,CAAA;CAC5B,CAAC,CAAA;AAEF,KAAK,mBAAmB,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,kBAAkB,CAAC,EAAE,OAAO,CAAC,IAAI,GAAG,mBAAmB,CAAC,CAAA;IACxD,UAAU,CAAC,EAAE,eAAe,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,CAAC,SAAS,EAAE,MAAM,GAAG,yBAAyB,CAAA;CAC/C,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAA;AAEjF,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,gBAAgB,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,eAAe,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAC3E,eAAe,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACxD,CAAA;AAED,KAAK,mBAAmB,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAA;AAC7D,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,mBAAmB,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,sBAAsB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAA;IACjF,iBAAiB,EAAE,CACjB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,KAC/B,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;CAClC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@magmamath/students-features",
3
- "version": "0.9.107-rc.62",
3
+ "version": "0.9.107-rc.64",
4
4
  "description": "Magmamath features library",
5
5
  "source": "src/index.ts",
6
6
  "main": "src/index.ts",
@@ -73,6 +73,10 @@ export class VoiceRecordModel {
73
73
  },
74
74
  )
75
75
 
76
+ public readonly deleteAudioRecord = createEffect(async (audioFileId: string) => {
77
+ await this.api.deleteAudioFile(audioFileId)
78
+ })
79
+
76
80
  public readonly deleteCurrentRecording = attach({
77
81
  source: this.$currentKey,
78
82
  mapParams: (props: DeleteCurrentRecordingProps | void, currentKey) => ({
@@ -83,6 +87,10 @@ export class VoiceRecordModel {
83
87
  effect: createEffect(({ currentKey, notification }: DeleteCurrentRecordingValues) => {
84
88
  const recordingItem = this.collection.get(currentKey)
85
89
 
90
+ if (recordingItem?.id) {
91
+ this.deleteAudioRecord(recordingItem.id)
92
+ }
93
+
86
94
  this.abortUploadIfInProgress(recordingItem)
87
95
  this.resetRecordingState(currentKey)
88
96
 
@@ -92,28 +100,33 @@ export class VoiceRecordModel {
92
100
  }),
93
101
  })
94
102
 
95
- public readonly initializeRecording = createEffect(async () => {
96
- this.deleteCurrentRecording({ notification: false })
97
-
98
- const hasPermissions = await ensureRecordingPermissions()
99
- if (!hasPermissions) {
100
- this.notification.error(t('voice.noMicrophoneAccess'))
101
- return
102
- }
103
+ public readonly initializeRecording = attach({
104
+ source: this.$currentRecord,
105
+ effect: createEffect(async (currentRecord: StoreValue<typeof this.$currentRecord>) => {
106
+ if (currentRecord) {
107
+ this.deleteCurrentRecording({ notification: false })
108
+ }
103
109
 
104
- const inputs = await getAvailableInputs(this.recorderModel.recorder)
105
- this.recorderModel.setAvailableInputs(inputs)
110
+ const hasPermissions = await ensureRecordingPermissions()
111
+ if (!hasPermissions) {
112
+ this.notification.error(t('voice.noMicrophoneAccess'))
113
+ return
114
+ }
106
115
 
107
- if (inputs.length === 0) {
108
- this.notification.error(t('voice.noMicrophoneFound'))
109
- return
110
- }
116
+ const inputs = await getAvailableInputs(this.recorderModel.recorder)
117
+ this.recorderModel.setAvailableInputs(inputs)
111
118
 
112
- return this.recorderModel.start().catch((error) => {
113
- if (error.name === 'NotAllowedError') {
114
- this.notification.error(t('voice.noMicrophoneAccessBySystem'))
119
+ if (inputs.length === 0) {
120
+ this.notification.error(t('voice.noMicrophoneFound'))
121
+ return
115
122
  }
116
- })
123
+
124
+ return this.recorderModel.start().catch((error) => {
125
+ if (error.name === 'NotAllowedError') {
126
+ this.notification.error(t('voice.noMicrophoneAccessBySystem'))
127
+ }
128
+ })
129
+ }),
117
130
  })
118
131
 
119
132
  public readonly stop = createEffect(async () => {
@@ -51,6 +51,7 @@ export type DownloadAudioPayload = {
51
51
 
52
52
  export type VoiceRecorderApi = {
53
53
  uploadAudioFile: (data: UploadAudioPayload) => Promise<UploadAudioResponse>
54
+ deleteAudioFile: (audioFileId: string) => Promise<void>
54
55
  }
55
56
 
56
57
  type TranscriptionStatus = 'pending' | 'completed' | 'failed'