@eka-care/ekascribe-ts-sdk 1.4.43 → 1.4.45

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.
@@ -1,3 +1,3 @@
1
1
  import { TPostTransactionInitRequest, TPostTransactionResponse } from '../../constants/types';
2
- declare function postTransactionInit({ mode, txn_id, s3Url, input_language, output_format_template, model_training_consent, auto_download, transfer, system_info, patient_details, model_type, version, flavour, }: TPostTransactionInitRequest): Promise<TPostTransactionResponse>;
2
+ declare function postTransactionInit({ mode, txn_id, s3Url, input_language, output_format_template, model_training_consent, auto_download, transfer, system_info, patient_details, model_type, version, flavour, batch_s3_url, }: TPostTransactionInitRequest): Promise<TPostTransactionResponse>;
3
3
  export default postTransactionInit;
@@ -1,7 +1,7 @@
1
1
  import { SDK_STATUS_CODE } from '../../constants/constant';
2
2
  import fetchWrapper from '../../fetch-client';
3
3
  import { GET_EKA_VOICE_HOST_V2 } from '../../fetch-client/helper';
4
- async function postTransactionInit({ mode, txn_id, s3Url, input_language, output_format_template, model_training_consent, auto_download, transfer, system_info, patient_details, model_type, version, flavour, }) {
4
+ async function postTransactionInit({ mode, txn_id, s3Url, input_language, output_format_template, model_training_consent, auto_download, transfer, system_info, patient_details, model_type, version, flavour, batch_s3_url, }) {
5
5
  try {
6
6
  const headers = new Headers();
7
7
  headers.append('Content-Type', 'application/json');
@@ -18,6 +18,7 @@ async function postTransactionInit({ mode, txn_id, s3Url, input_language, output
18
18
  model_type,
19
19
  version,
20
20
  flavour,
21
+ batch_s3_url,
21
22
  };
22
23
  const options = {
23
24
  method: 'POST',
@@ -65,6 +65,10 @@ declare class VadWebClient {
65
65
  * Pause VAD
66
66
  */
67
67
  pauseVad(): void;
68
+ /**
69
+ * End VAD
70
+ */
71
+ destroyVad(): void;
68
72
  /**
69
73
  * reset vadWeb instance
70
74
  */
@@ -329,6 +329,13 @@ class VadWebClient {
329
329
  this.micVad.pause();
330
330
  this.recording_started = false;
331
331
  }
332
+ /**
333
+ * End VAD
334
+ */
335
+ destroyVad() {
336
+ this.micVad.destroy();
337
+ this.recording_started = false;
338
+ }
332
339
  /**
333
340
  * reset vadWeb instance
334
341
  */
@@ -20,6 +20,8 @@ export type TGetConfigV2Response = {
20
20
  dob: string;
21
21
  gen: 'F' | 'M' | 'O';
22
22
  s: string;
23
+ is_paid_doc: boolean;
24
+ uuid: string;
23
25
  };
24
26
  wid: string;
25
27
  };
@@ -121,7 +123,12 @@ export type TPostTransactionInitRequest = {
121
123
  model_type: string;
122
124
  version?: string;
123
125
  flavour?: string;
126
+ batch_s3_url?: string;
124
127
  };
128
+ export interface TPostV1UploadAudioFilesRequest extends TPostTransactionInitRequest {
129
+ action: string;
130
+ audioFiles: File[] | Blob[];
131
+ }
125
132
  export type TPostTransactionCommitRequest = {
126
133
  audioFiles: string[];
127
134
  txnId: string;
package/dist/index.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import { TGetStatusResponse } from './api/transaction/get-voice-api-v3-status';
2
- import { TEndRecordingResponse, TErrorCallback, TFileUploadProgressCallback, TGetTransactionHistoryResponse, TPatchTransactionRequest, TPatchVoiceApiV2ConfigRequest, TPostTransactionResponse, TPostV1ConvertToTemplateRequest, TPostV1TemplateRequest, TPostV1TemplateSectionRequest, TStartRecordingRequest } from './constants/types';
2
+ import { TEndRecordingResponse, TErrorCallback, TFileUploadProgressCallback, TGetTransactionHistoryResponse, TPatchTransactionRequest, TPatchVoiceApiV2ConfigRequest, TPostTransactionResponse, TPostV1ConvertToTemplateRequest, TPostV1TemplateRequest, TPostV1TemplateSectionRequest, TPostV1UploadAudioFilesRequest, TStartRecordingRequest } from './constants/types';
3
3
  import { TSearchSessionsByPatientRequest } from './utils/search-sessions-by-patient-name';
4
- import { TFullAudioRequest } from './main/upload-full-audio-with-presigned-url';
5
4
  declare class EkaScribe {
6
5
  private static instance;
7
6
  private vadInstance;
@@ -21,6 +20,7 @@ declare class EkaScribe {
21
20
  initTransaction(request: TStartRecordingRequest): Promise<import("./constants/types").TStartRecordingResponse>;
22
21
  startRecording(): Promise<import("./constants/types").TStartRecordingResponse>;
23
22
  reinitializeVad(): void;
23
+ destroyVad(): void;
24
24
  pauseRecording(): import("./constants/types").TPauseRecordingResponse;
25
25
  resumeRecording(): import("./constants/types").TPauseRecordingResponse;
26
26
  endRecording(): Promise<TEndRecordingResponse>;
@@ -65,7 +65,7 @@ declare class EkaScribe {
65
65
  deleteTemplateSection(section_id: string): Promise<import("./constants/types").TPostV1TemplateSectionResponse>;
66
66
  postTransactionConvertToTemplate({ txn_id, template_id }: TPostV1ConvertToTemplateRequest): Promise<import("./constants/types").TPostV1ConvertToTemplateResponse>;
67
67
  searchSessionsByPatientName(request: TSearchSessionsByPatientRequest): Promise<unknown>;
68
- uploadAudioWithPresignedUrl(request: TFullAudioRequest): Promise<import("./main/upload-full-audio-with-presigned-url").TFullAudioUploadResponse>;
68
+ uploadAudioWithPresignedUrl(request: TPostV1UploadAudioFilesRequest): Promise<import("./main/upload-full-audio-with-presigned-url").TFullAudioUploadResponse>;
69
69
  }
70
70
  export declare const getEkaScribeInstance: ({ access_token, env, clientId, }: {
71
71
  access_token?: string;
package/dist/index.js CHANGED
@@ -29,7 +29,7 @@ import patchVoiceApiV2Config from './api/config/patch-voice-api-v2-config';
29
29
  import cookV1MediaAiCreateTemplate from './api/templates/cook-v1-medai-ai-create-template';
30
30
  import postV1ConvertToTemplate from './api/templates/post-transaction-convert-to-template';
31
31
  import searchSessionsByPatient from './utils/search-sessions-by-patient-name';
32
- import { postV1UploadAudioFiles, } from './main/upload-full-audio-with-presigned-url';
32
+ import { postV1UploadAudioFiles } from './main/upload-full-audio-with-presigned-url';
33
33
  class EkaScribe {
34
34
  // Private constructor to prevent direct instantiation
35
35
  constructor() {
@@ -104,6 +104,9 @@ class EkaScribe {
104
104
  reinitializeVad() {
105
105
  this.vadInstance.reinitializeVad();
106
106
  }
107
+ destroyVad() {
108
+ this.vadInstance.destroyVad();
109
+ }
107
110
  pauseRecording() {
108
111
  console.log('Pausing recording...');
109
112
  const pauseRecordingResponse = pauseVoiceRecording();
@@ -1,12 +1,8 @@
1
1
  import { ERROR_CODE } from '../constants/enums';
2
+ import { TPostV1UploadAudioFilesRequest } from '../constants/types';
2
3
  export type TFullAudioUploadResponse = {
3
4
  error_code?: ERROR_CODE;
4
5
  status_code: number;
5
6
  message: string;
6
7
  };
7
- export type TFullAudioRequest = {
8
- txn_id: string;
9
- action: string;
10
- audioFiles: File[] | Blob[];
11
- };
12
- export declare function postV1UploadAudioFiles({ audioFiles, txn_id, action, }: TFullAudioRequest): Promise<TFullAudioUploadResponse>;
8
+ export declare function postV1UploadAudioFiles({ audioFiles, txn_id, action, transfer, mode, s3Url, input_language, output_format_template, model_training_consent, auto_download, system_info, patient_details, model_type, version, flavour, }: TPostV1UploadAudioFilesRequest): Promise<TFullAudioUploadResponse>;
@@ -1,16 +1,10 @@
1
1
  import postV1FileUpload from '../api/post-v1-file-upload';
2
+ import postTransactionInit from '../api/transaction/post-transaction-init';
2
3
  import uploadFilesWithPresignedUrl from '../api/upload-audio-with-presigned-url';
3
4
  import { SDK_STATUS_CODE } from '../constants/constant';
4
5
  import { ERROR_CODE } from '../constants/enums';
5
- export async function postV1UploadAudioFiles({ audioFiles, txn_id, action, }) {
6
+ export async function postV1UploadAudioFiles({ audioFiles, txn_id, action, transfer, mode, s3Url, input_language, output_format_template, model_training_consent, auto_download, system_info, patient_details, model_type, version, flavour, }) {
6
7
  try {
7
- if (!audioFiles || audioFiles.length === 0) {
8
- return {
9
- error_code: ERROR_CODE.INVALID_REQUEST,
10
- status_code: SDK_STATUS_CODE.BAD_REQUEST,
11
- message: 'No audio files provided',
12
- };
13
- }
14
8
  // Step 1: Get presigned URL
15
9
  const presignedUrlResponse = await postV1FileUpload({ txn_id, action });
16
10
  if (presignedUrlResponse.code !== 200) {
@@ -25,9 +19,40 @@ export async function postV1UploadAudioFiles({ audioFiles, txn_id, action, }) {
25
19
  audioFiles,
26
20
  presignedUrlResponse,
27
21
  });
22
+ if (uploadResponse.code !== 200) {
23
+ return {
24
+ error_code: ERROR_CODE.AUDIO_UPLOAD_FAILED,
25
+ status_code: uploadResponse.code || SDK_STATUS_CODE.INTERNAL_SERVER_ERROR,
26
+ message: uploadResponse.message || 'File uploaded.',
27
+ };
28
+ }
29
+ const batch_s3_url = presignedUrlResponse.uploadData.url + presignedUrlResponse.folderPath;
30
+ const initTransactionResponse = await postTransactionInit({
31
+ mode,
32
+ txn_id,
33
+ s3Url,
34
+ input_language,
35
+ output_format_template,
36
+ model_training_consent,
37
+ auto_download,
38
+ transfer,
39
+ system_info,
40
+ patient_details,
41
+ model_type,
42
+ version,
43
+ flavour,
44
+ batch_s3_url,
45
+ });
46
+ if (initTransactionResponse.code >= 400) {
47
+ return {
48
+ error_code: ERROR_CODE.TXN_INIT_FAILED,
49
+ status_code: initTransactionResponse.code || SDK_STATUS_CODE.INTERNAL_SERVER_ERROR,
50
+ message: initTransactionResponse.message || 'Transaction initialization failed.',
51
+ };
52
+ }
28
53
  return {
29
- status_code: uploadResponse.code || SDK_STATUS_CODE.INTERNAL_SERVER_ERROR,
30
- message: uploadResponse.message || 'File uploaded.',
54
+ status_code: SDK_STATUS_CODE.SUCCESS,
55
+ message: 'Transaction initialized successfully.',
31
56
  };
32
57
  }
33
58
  catch (error) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eka-care/ekascribe-ts-sdk",
3
- "version": "1.4.43",
3
+ "version": "1.4.45",
4
4
  "main": "dist/index.js",
5
5
  "repository": "git@github.com:eka-care/eka-js-sdk.git",
6
6
  "author": "Sanikagoyal28 <sanikagoyal9@gmail.com>",