@speech-sdk/core 0.0.3 → 0.0.5

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.
Files changed (81) hide show
  1. package/README.md +37 -0
  2. package/dist/audio-tags.d.ts +6 -0
  3. package/dist/audio-tags.d.ts.map +1 -0
  4. package/dist/audio-tags.js +17 -0
  5. package/dist/audio-tags.js.map +1 -0
  6. package/dist/errors.d.ts +1 -1
  7. package/dist/errors.d.ts.map +1 -1
  8. package/dist/errors.js +5 -5
  9. package/dist/errors.js.map +1 -1
  10. package/dist/generate-speech.d.ts +2 -2
  11. package/dist/generate-speech.d.ts.map +1 -1
  12. package/dist/generate-speech.js +29 -6
  13. package/dist/generate-speech.js.map +1 -1
  14. package/dist/index.d.ts +6 -5
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +4 -2
  17. package/dist/index.js.map +1 -1
  18. package/dist/provider-utils.d.ts.map +1 -1
  19. package/dist/provider-utils.js +16 -12
  20. package/dist/provider-utils.js.map +1 -1
  21. package/dist/providers/cartesia/index.d.ts +9 -3
  22. package/dist/providers/cartesia/index.d.ts.map +1 -1
  23. package/dist/providers/cartesia/index.js +159 -15
  24. package/dist/providers/cartesia/index.js.map +1 -1
  25. package/dist/providers/deepgram/index.d.ts +2 -2
  26. package/dist/providers/deepgram/index.d.ts.map +1 -1
  27. package/dist/providers/deepgram/index.js +16 -9
  28. package/dist/providers/deepgram/index.js.map +1 -1
  29. package/dist/providers/elevenlabs/index.d.ts +9 -5
  30. package/dist/providers/elevenlabs/index.d.ts.map +1 -1
  31. package/dist/providers/elevenlabs/index.js +166 -33
  32. package/dist/providers/elevenlabs/index.js.map +1 -1
  33. package/dist/providers/fal/index.d.ts +6 -6
  34. package/dist/providers/fal/index.d.ts.map +1 -1
  35. package/dist/providers/fal/index.js +52 -17
  36. package/dist/providers/fal/index.js.map +1 -1
  37. package/dist/providers/fish-audio/index.d.ts +6 -2
  38. package/dist/providers/fish-audio/index.d.ts.map +1 -1
  39. package/dist/providers/fish-audio/index.js +24 -10
  40. package/dist/providers/fish-audio/index.js.map +1 -1
  41. package/dist/providers/google/index.d.ts +3 -3
  42. package/dist/providers/google/index.d.ts.map +1 -1
  43. package/dist/providers/google/index.js +80 -15
  44. package/dist/providers/google/index.js.map +1 -1
  45. package/dist/providers/hume/index.d.ts +3 -3
  46. package/dist/providers/hume/index.d.ts.map +1 -1
  47. package/dist/providers/hume/index.js +43 -15
  48. package/dist/providers/hume/index.js.map +1 -1
  49. package/dist/providers/mistral/index.d.ts +2 -2
  50. package/dist/providers/mistral/index.d.ts.map +1 -1
  51. package/dist/providers/mistral/index.js +33 -16
  52. package/dist/providers/mistral/index.js.map +1 -1
  53. package/dist/providers/murf/index.d.ts +3 -3
  54. package/dist/providers/murf/index.d.ts.map +1 -1
  55. package/dist/providers/murf/index.js +62 -14
  56. package/dist/providers/murf/index.js.map +1 -1
  57. package/dist/providers/openai/index.d.ts +4 -4
  58. package/dist/providers/openai/index.d.ts.map +1 -1
  59. package/dist/providers/openai/index.js +99 -18
  60. package/dist/providers/openai/index.js.map +1 -1
  61. package/dist/providers/resemble/index.d.ts +2 -2
  62. package/dist/providers/resemble/index.d.ts.map +1 -1
  63. package/dist/providers/resemble/index.js +41 -10
  64. package/dist/providers/resemble/index.js.map +1 -1
  65. package/dist/providers/unreal-speech/index.d.ts +2 -2
  66. package/dist/providers/unreal-speech/index.d.ts.map +1 -1
  67. package/dist/providers/unreal-speech/index.js +20 -13
  68. package/dist/providers/unreal-speech/index.js.map +1 -1
  69. package/dist/resolve-provider.d.ts +1 -1
  70. package/dist/resolve-provider.d.ts.map +1 -1
  71. package/dist/resolve-provider.js +34 -34
  72. package/dist/resolve-provider.js.map +1 -1
  73. package/dist/speech-provider.d.ts +10 -6
  74. package/dist/speech-provider.d.ts.map +1 -1
  75. package/dist/speech-result.d.ts +4 -3
  76. package/dist/speech-result.d.ts.map +1 -1
  77. package/dist/speech-result.js +9 -7
  78. package/dist/speech-result.js.map +1 -1
  79. package/dist/types.d.ts +7 -7
  80. package/dist/types.d.ts.map +1 -1
  81. package/package.json +6 -2
@@ -1,47 +1,47 @@
1
- import { SpeechSDKError } from './errors.js';
2
- import { OpenAISpeechProvider } from './providers/openai/index.js';
3
- import { ElevenLabsSpeechProvider } from './providers/elevenlabs/index.js';
4
- import { DeepgramSpeechProvider } from './providers/deepgram/index.js';
5
- import { CartesiaSpeechProvider } from './providers/cartesia/index.js';
6
- import { HumeSpeechProvider } from './providers/hume/index.js';
7
- import { GoogleSpeechProvider } from './providers/google/index.js';
8
- import { FishAudioSpeechProvider } from './providers/fish-audio/index.js';
9
- import { UnrealSpeechProvider } from './providers/unreal-speech/index.js';
10
- import { MurfSpeechProvider } from './providers/murf/index.js';
11
- import { ResembleSpeechProvider } from './providers/resemble/index.js';
12
- import { FalSpeechProvider } from './providers/fal/index.js';
13
- import { MistralSpeechProvider } from './providers/mistral/index.js';
1
+ import { SpeechSDKError } from "./errors.js";
2
+ import { CartesiaSpeechProvider } from "./providers/cartesia/index.js";
3
+ import { DeepgramSpeechProvider } from "./providers/deepgram/index.js";
4
+ import { ElevenLabsSpeechProvider } from "./providers/elevenlabs/index.js";
5
+ import { FalSpeechProvider } from "./providers/fal/index.js";
6
+ import { FishAudioSpeechProvider } from "./providers/fish-audio/index.js";
7
+ import { GoogleSpeechProvider } from "./providers/google/index.js";
8
+ import { HumeSpeechProvider } from "./providers/hume/index.js";
9
+ import { MistralSpeechProvider } from "./providers/mistral/index.js";
10
+ import { MurfSpeechProvider } from "./providers/murf/index.js";
11
+ import { OpenAISpeechProvider } from "./providers/openai/index.js";
12
+ import { ResembleSpeechProvider } from "./providers/resemble/index.js";
13
+ import { UnrealSpeechProvider } from "./providers/unreal-speech/index.js";
14
14
  function isResolvedModel(model) {
15
15
  return (model != null &&
16
- typeof model === 'object' &&
17
- 'provider' in model &&
18
- 'modelId' in model);
16
+ typeof model === "object" &&
17
+ "provider" in model &&
18
+ "modelId" in model);
19
19
  }
20
20
  function createBuiltinProvider(name) {
21
21
  switch (name) {
22
- case 'openai':
22
+ case "openai":
23
23
  return new OpenAISpeechProvider({});
24
- case 'elevenlabs':
24
+ case "elevenlabs":
25
25
  return new ElevenLabsSpeechProvider({});
26
- case 'deepgram':
26
+ case "deepgram":
27
27
  return new DeepgramSpeechProvider({});
28
- case 'cartesia':
28
+ case "cartesia":
29
29
  return new CartesiaSpeechProvider({});
30
- case 'hume':
30
+ case "hume":
31
31
  return new HumeSpeechProvider({});
32
- case 'google':
32
+ case "google":
33
33
  return new GoogleSpeechProvider({});
34
- case 'fish-audio':
34
+ case "fish-audio":
35
35
  return new FishAudioSpeechProvider({});
36
- case 'unreal-speech':
36
+ case "unreal-speech":
37
37
  return new UnrealSpeechProvider({});
38
- case 'murf':
38
+ case "murf":
39
39
  return new MurfSpeechProvider({});
40
- case 'resemble':
40
+ case "resemble":
41
41
  return new ResembleSpeechProvider({});
42
- case 'fal-ai':
42
+ case "fal-ai":
43
43
  return new FalSpeechProvider({});
44
- case 'mistral':
44
+ case "mistral":
45
45
  return new MistralSpeechProvider({});
46
46
  default:
47
47
  throw new SpeechSDKError(`Unknown provider: ${name}`);
@@ -51,17 +51,17 @@ export function resolveModel(model) {
51
51
  if (isResolvedModel(model)) {
52
52
  return model;
53
53
  }
54
- const slashIndex = model.indexOf('/');
54
+ const slashIndex = model.indexOf("/");
55
55
  let providerName;
56
56
  let modelId;
57
- if (slashIndex !== -1) {
58
- providerName = model.slice(0, slashIndex);
59
- modelId = model.slice(slashIndex + 1);
60
- }
61
- else {
57
+ if (slashIndex === -1) {
62
58
  providerName = model;
63
59
  modelId = undefined;
64
60
  }
61
+ else {
62
+ providerName = model.slice(0, slashIndex);
63
+ modelId = model.slice(slashIndex + 1);
64
+ }
65
65
  const provider = createBuiltinProvider(providerName);
66
66
  return {
67
67
  provider,
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-provider.js","sourceRoot":"","sources":["../src/resolve-provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,SAAS,eAAe,CAAC,KAAc;IACrC,OAAO,CACL,KAAK,IAAI,IAAI;QACb,OAAO,KAAK,KAAK,QAAQ;QACzB,UAAU,IAAI,KAAK;QACnB,SAAS,IAAI,KAAK,CACnB,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IACzC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,IAAI,oBAAoB,CAAC,EAAE,CAAC,CAAC;QACtC,KAAK,YAAY;YACf,OAAO,IAAI,wBAAwB,CAAC,EAAE,CAAC,CAAC;QAC1C,KAAK,UAAU;YACb,OAAO,IAAI,sBAAsB,CAAC,EAAE,CAAC,CAAC;QACxC,KAAK,UAAU;YACb,OAAO,IAAI,sBAAsB,CAAC,EAAE,CAAC,CAAC;QAC5C,KAAK,MAAM;YACL,OAAO,IAAI,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACpC,KAAK,QAAQ;YACX,OAAO,IAAI,oBAAoB,CAAC,EAAE,CAAC,CAAC;QAC1C,KAAK,YAAY;YACX,OAAO,IAAI,uBAAuB,CAAC,EAAE,CAAC,CAAC;QACzC,KAAK,eAAe;YAClB,OAAO,IAAI,oBAAoB,CAAC,EAAE,CAAC,CAAC;QACtC,KAAK,MAAM;YACT,OAAO,IAAI,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACpC,KAAK,UAAU;YACb,OAAO,IAAI,sBAAsB,CAAC,EAAE,CAAC,CAAC;QAC5C,KAAK,QAAQ;YACP,OAAO,IAAI,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACnC,KAAK,SAAS;YACZ,OAAO,IAAI,qBAAqB,CAAC,EAAE,CAAC,CAAC;QACvC;YACE,MAAM,IAAI,cAAc,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,KAA6B;IAE7B,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACtC,IAAI,YAAoB,CAAC;IACzB,IAAI,OAA2B,CAAC;IAEhC,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;QACtB,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;QAC1C,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,YAAY,GAAG,KAAK,CAAC;QACrB,OAAO,GAAG,SAAS,CAAC;IACtB,CAAC;IAED,MAAM,QAAQ,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAC;IACrD,OAAO;QACL,QAAQ;QACR,OAAO,EAAE,OAAO,IAAI,QAAQ,CAAC,YAAY;KAC1C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"resolve-provider.js","sourceRoot":"","sources":["../src/resolve-provider.ts"],"names":[],"mappings":"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"}
@@ -4,17 +4,15 @@ export type Voice = string | {
4
4
  audio: string | Uint8Array;
5
5
  };
6
6
  export interface ModelInfo {
7
+ audioTags: boolean;
7
8
  id: string;
9
+ inlineVoiceCloning: boolean;
8
10
  languages: readonly string[];
9
- releaseDate: string;
10
11
  openSource: boolean;
11
- inlineVoiceCloning: boolean;
12
- zeroDataRetention: boolean;
12
+ releaseDate: string;
13
13
  }
14
14
  export interface SpeechProvider<TModel extends string = string, TVoice extends Voice = Voice> {
15
- id: string;
16
15
  defaultModel: TModel;
17
- models: readonly ModelInfo[];
18
16
  generate(options: {
19
17
  modelId: string;
20
18
  text: string;
@@ -27,9 +25,15 @@ export interface SpeechProvider<TModel extends string = string, TVoice extends V
27
25
  mediaType: string;
28
26
  providerMetadata?: Record<string, unknown>;
29
27
  }>;
28
+ id: string;
29
+ models: readonly ModelInfo[];
30
+ processAudioTags?(text: string, modelId: string): {
31
+ text: string;
32
+ warnings: string[];
33
+ };
30
34
  }
31
35
  export interface ResolvedModel<TVoice extends Voice = Voice> {
32
- provider: SpeechProvider<string, TVoice>;
33
36
  modelId: string;
37
+ provider: SpeechProvider<string, TVoice>;
34
38
  }
35
39
  //# sourceMappingURL=speech-provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"speech-provider.d.ts","sourceRoot":"","sources":["../src/speech-provider.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,GACb,MAAM,GACN;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GACf;IAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAAA;CAAE,CAAA;AAElC,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc,CAC7B,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,MAAM,SAAS,KAAK,GAAG,KAAK;IAE5B,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,SAAS,SAAS,EAAE,CAAC;IAE7B,QAAQ,CAAC,OAAO,EAAE;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1C,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAClC,GAAG,OAAO,CAAC;QACV,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC;QAC3B,SAAS,EAAE,MAAM,CAAC;QAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC5C,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,aAAa,CAAC,MAAM,SAAS,KAAK,GAAG,KAAK;IACzD,QAAQ,EAAE,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,OAAO,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"speech-provider.d.ts","sourceRoot":"","sources":["../src/speech-provider.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAAA;CAAE,CAAC;AAE9E,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB,EAAE,OAAO,CAAC;IAC5B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc,CAC7B,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,MAAM,SAAS,KAAK,GAAG,KAAK;IAE5B,YAAY,EAAE,MAAM,CAAC;IAErB,QAAQ,CAAC,OAAO,EAAE;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1C,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAClC,GAAG,OAAO,CAAC;QACV,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC;QAC3B,SAAS,EAAE,MAAM,CAAC;QAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC5C,CAAC,CAAC;IACH,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,SAAS,SAAS,EAAE,CAAC;IAE7B,gBAAgB,CAAC,CACf,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CACzC;AAED,MAAM,WAAW,aAAa,CAAC,MAAM,SAAS,KAAK,GAAG,KAAK;IACzD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C"}
@@ -1,18 +1,19 @@
1
1
  export interface GeneratedAudioFile {
2
- readonly uint8Array: Uint8Array;
3
2
  readonly base64: string;
4
3
  readonly mediaType: string;
4
+ readonly uint8Array: Uint8Array;
5
5
  }
6
6
  export interface SpeechResult {
7
7
  readonly audio: GeneratedAudioFile;
8
8
  readonly providerMetadata?: Record<string, unknown>;
9
+ readonly warnings?: string[];
9
10
  }
10
11
  export declare class DefaultGeneratedAudioFile implements GeneratedAudioFile {
11
12
  readonly mediaType: string;
12
- private _data;
13
+ private readonly _data;
13
14
  private _uint8Array?;
14
15
  private _base64?;
15
- constructor({ data, mediaType }: {
16
+ constructor({ data, mediaType, }: {
16
17
  data: string | Uint8Array;
17
18
  mediaType: string;
18
19
  });
@@ -1 +1 @@
1
- {"version":3,"file":"speech-result.d.ts","sourceRoot":"","sources":["../src/speech-result.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;IACnC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrD;AAED,qBAAa,yBAA0B,YAAW,kBAAkB;IAClE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,WAAW,CAAC,CAAa;IACjC,OAAO,CAAC,OAAO,CAAC,CAAS;gBAEb,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IAKjF,IAAI,UAAU,IAAI,UAAU,CAa3B;IAED,IAAI,MAAM,IAAI,MAAM,CAYnB;CACF"}
1
+ {"version":3,"file":"speech-result.d.ts","sourceRoot":"","sources":["../src/speech-result.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;IACnC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,qBAAa,yBAA0B,YAAW,kBAAkB;IAClE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAsB;IAC5C,OAAO,CAAC,WAAW,CAAC,CAAa;IACjC,OAAO,CAAC,OAAO,CAAC,CAAS;gBAEb,EACV,IAAI,EACJ,SAAS,GACV,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IAKnD,IAAI,UAAU,IAAI,UAAU,CAe3B;IAED,IAAI,MAAM,IAAI,MAAM,CAcnB;CACF"}
@@ -3,13 +3,14 @@ export class DefaultGeneratedAudioFile {
3
3
  _data;
4
4
  _uint8Array;
5
5
  _base64;
6
- constructor({ data, mediaType }) {
6
+ constructor({ data, mediaType, }) {
7
7
  this._data = data;
8
8
  this.mediaType = mediaType;
9
9
  }
10
10
  get uint8Array() {
11
- if (this._uint8Array != null)
11
+ if (this._uint8Array != null) {
12
12
  return this._uint8Array;
13
+ }
13
14
  if (this._data instanceof Uint8Array) {
14
15
  this._uint8Array = this._data;
15
16
  }
@@ -24,15 +25,16 @@ export class DefaultGeneratedAudioFile {
24
25
  return this._uint8Array;
25
26
  }
26
27
  get base64() {
27
- if (this._base64 != null)
28
+ if (this._base64 != null) {
28
29
  return this._base64;
29
- if (typeof this._data === 'string') {
30
+ }
31
+ if (typeof this._data === "string") {
30
32
  this._base64 = this._data;
31
33
  }
32
34
  else {
33
- let binaryString = '';
34
- for (let i = 0; i < this._data.length; i++) {
35
- binaryString += String.fromCharCode(this._data[i]);
35
+ let binaryString = "";
36
+ for (const byte of this._data) {
37
+ binaryString += String.fromCharCode(byte);
36
38
  }
37
39
  this._base64 = btoa(binaryString);
38
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"speech-result.js","sourceRoot":"","sources":["../src/speech-result.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,yBAAyB;IAC3B,SAAS,CAAS;IAEnB,KAAK,CAAsB;IAC3B,WAAW,CAAc;IACzB,OAAO,CAAU;IAEzB,YAAY,EAAE,IAAI,EAAE,SAAS,EAAoD;QAC/E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,IAAI,UAAU;QACZ,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC;QACtD,IAAI,IAAI,CAAC,KAAK,YAAY,UAAU,EAAE,CAAC;YACrC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7C,KAAK,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACxC,CAAC;YACD,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAC3B,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,MAAM;QACR,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC;QAC9C,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,IAAI,YAAY,GAAG,EAAE,CAAC;YACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,CAAC;YACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF"}
1
+ {"version":3,"file":"speech-result.js","sourceRoot":"","sources":["../src/speech-result.ts"],"names":[],"mappings":"AAYA,MAAM,OAAO,yBAAyB;IAC3B,SAAS,CAAS;IAEV,KAAK,CAAsB;IACpC,WAAW,CAAc;IACzB,OAAO,CAAU;IAEzB,YAAY,EACV,IAAI,EACJ,SAAS,GACwC;QACjD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,IAAI,UAAU;QACZ,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,YAAY,UAAU,EAAE,CAAC;YACrC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7C,KAAK,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACxC,CAAC;YACD,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAC3B,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,MAAM;QACR,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,IAAI,YAAY,GAAG,EAAE,CAAC;YACtB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC9B,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC5C,CAAC;YACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF"}
package/dist/types.d.ts CHANGED
@@ -1,11 +1,11 @@
1
- import type { ResolvedModel, Voice } from './speech-provider.js';
2
- export type GenerateSpeechOptions<V extends Voice = Voice> = {
1
+ import type { ResolvedModel, Voice } from "./speech-provider.js";
2
+ export interface GenerateSpeechOptions<V extends Voice = Voice> {
3
+ abortSignal?: AbortSignal;
4
+ headers?: Record<string, string>;
5
+ maxRetries?: number;
3
6
  model: string | ResolvedModel<V>;
7
+ providerOptions?: Record<string, unknown>;
4
8
  text: string;
5
9
  voice: V;
6
- providerOptions?: Record<string, unknown>;
7
- maxRetries?: number;
8
- abortSignal?: AbortSignal;
9
- headers?: Record<string, string>;
10
- };
10
+ }
11
11
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAEjE,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI;IAC3D,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,CAAC,CAAC;IACT,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAEjE,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK;IAC5D,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,CAAC,CAAC;CACV"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@speech-sdk/core",
3
- "version": "0.0.3",
3
+ "version": "0.0.5",
4
4
  "description": "Universal, cross-platform text-to-speech SDK with multi-provider support.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -80,9 +80,11 @@
80
80
  "p-retry": "^8.0.0"
81
81
  },
82
82
  "devDependencies": {
83
+ "@biomejs/biome": "2.4.9",
83
84
  "@types/node": "^25.5.0",
84
85
  "dotenv": "^17.3.1",
85
86
  "typescript": "^5.8.0",
87
+ "ultracite": "7.4.2",
86
88
  "vitest": "^3.1.0"
87
89
  },
88
90
  "scripts": {
@@ -90,6 +92,8 @@
90
92
  "test": "vitest run",
91
93
  "test:watch": "vitest",
92
94
  "test:e2e": "vitest run --config vitest.config.e2e.ts",
93
- "typecheck": "tsc --noEmit"
95
+ "typecheck": "tsc --noEmit",
96
+ "check": "ultracite check",
97
+ "fix": "ultracite fix"
94
98
  }
95
99
  }