@gravity-rail/sdk 0.5.0 → 0.6.0

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 (56) hide show
  1. package/dist/agui.cjs +78 -0
  2. package/dist/agui.cjs.map +1 -0
  3. package/dist/agui.d.cts +13 -0
  4. package/dist/agui.d.ts +13 -0
  5. package/dist/agui.js +48 -0
  6. package/dist/agui.js.map +1 -0
  7. package/dist/audio.cjs +223 -0
  8. package/dist/audio.cjs.map +1 -0
  9. package/dist/audio.d.cts +25 -0
  10. package/dist/audio.d.ts +25 -0
  11. package/dist/audio.js +147 -0
  12. package/dist/audio.js.map +1 -0
  13. package/dist/chunk-BSOOMHW6.js +62 -0
  14. package/dist/chunk-BSOOMHW6.js.map +1 -0
  15. package/dist/{chunk-QZC4QPP2.js → chunk-DX42AMVM.js} +2 -31
  16. package/dist/chunk-DX42AMVM.js.map +1 -0
  17. package/dist/{index-CIwgGcAm.d.ts → client-BKGhDv14.d.cts} +37 -1617
  18. package/dist/{index-DNxSoo5S.d.cts → client-dP29995A.d.ts} +37 -1617
  19. package/dist/helpers.cjs +123 -0
  20. package/dist/helpers.cjs.map +1 -0
  21. package/dist/helpers.d.cts +28 -0
  22. package/dist/helpers.d.ts +28 -0
  23. package/dist/helpers.js +92 -0
  24. package/dist/helpers.js.map +1 -0
  25. package/dist/index-CBfaxd3y.d.cts +1589 -0
  26. package/dist/index-Q5qU2JFt.d.ts +1589 -0
  27. package/dist/index.cjs +1 -30
  28. package/dist/index.cjs.map +1 -1
  29. package/dist/index.d.cts +3 -2
  30. package/dist/index.d.ts +3 -2
  31. package/dist/index.js +1 -1
  32. package/dist/{inquiries-DiTDrTG2.d.cts → inquiries-BH6I8-SF.d.cts} +1 -1
  33. package/dist/{inquiries-DiTDrTG2.d.ts → inquiries-BH6I8-SF.d.ts} +1 -1
  34. package/dist/internal.cjs +1 -30
  35. package/dist/internal.cjs.map +1 -1
  36. package/dist/internal.d.cts +4 -3
  37. package/dist/internal.d.ts +4 -3
  38. package/dist/internal.js +1 -1
  39. package/dist/oauth-client.cjs +78 -0
  40. package/dist/oauth-client.cjs.map +1 -0
  41. package/dist/oauth-client.d.cts +15 -0
  42. package/dist/oauth-client.d.ts +15 -0
  43. package/dist/oauth-client.js +48 -0
  44. package/dist/oauth-client.js.map +1 -0
  45. package/dist/realtime.cjs +637 -0
  46. package/dist/realtime.cjs.map +1 -0
  47. package/dist/realtime.d.cts +94 -0
  48. package/dist/realtime.d.ts +94 -0
  49. package/dist/realtime.js +580 -0
  50. package/dist/realtime.js.map +1 -0
  51. package/dist/schemas.d.cts +2 -2
  52. package/dist/schemas.d.ts +2 -2
  53. package/dist/types-DkYyrvoC.d.cts +19 -0
  54. package/dist/types-DkYyrvoC.d.ts +19 -0
  55. package/package.json +27 -2
  56. package/dist/chunk-QZC4QPP2.js.map +0 -1
@@ -0,0 +1,62 @@
1
+ // src/audio/pcm.ts
2
+ var SERVER_SAMPLE_RATE = 24e3;
3
+ var TARGET_SAMPLE_RATE = 24e3;
4
+ var MONITOR_SAMPLE_RATE = 16e3;
5
+ function float32ArrayToBase64(float32Array) {
6
+ const int16Array = new Int16Array(float32Array.length);
7
+ for (let i = 0; i < float32Array.length; i += 1) {
8
+ const sample = Math.max(-1, Math.min(1, float32Array[i]));
9
+ int16Array[i] = Math.round(sample * 32767);
10
+ }
11
+ const uint8Array = new Uint8Array(int16Array.buffer);
12
+ let binaryString = "";
13
+ for (let i = 0; i < uint8Array.length; i += 1) {
14
+ binaryString += String.fromCharCode(uint8Array[i]);
15
+ }
16
+ return btoa(binaryString);
17
+ }
18
+ function base64ToFloat32Array(base64) {
19
+ const binaryString = atob(base64);
20
+ const len = binaryString.length / 2;
21
+ const float32Array = new Float32Array(len);
22
+ for (let i = 0; i < len; i += 1) {
23
+ const lo = binaryString.charCodeAt(i * 2);
24
+ const hi = binaryString.charCodeAt(i * 2 + 1);
25
+ let int16 = hi << 8 | lo;
26
+ if (int16 >= 32768) int16 -= 65536;
27
+ float32Array[i] = int16 / 32768;
28
+ }
29
+ return float32Array;
30
+ }
31
+ function concatFloat32Arrays(arrays) {
32
+ const totalLength = arrays.reduce((sum, arr) => sum + arr.length, 0);
33
+ const result = new Float32Array(totalLength);
34
+ let offset = 0;
35
+ for (const arr of arrays) {
36
+ result.set(arr, offset);
37
+ offset += arr.length;
38
+ }
39
+ return result;
40
+ }
41
+ function downsampleAudio(audioData, originalSampleRate, targetSampleRate) {
42
+ if (originalSampleRate === targetSampleRate) return audioData;
43
+ const ratio = originalSampleRate / targetSampleRate;
44
+ const newLength = Math.round(audioData.length / ratio);
45
+ const result = new Float32Array(newLength);
46
+ for (let i = 0; i < newLength; i += 1) {
47
+ const srcIndex = Math.floor(i * ratio);
48
+ result[i] = audioData[srcIndex];
49
+ }
50
+ return result;
51
+ }
52
+
53
+ export {
54
+ SERVER_SAMPLE_RATE,
55
+ TARGET_SAMPLE_RATE,
56
+ MONITOR_SAMPLE_RATE,
57
+ float32ArrayToBase64,
58
+ base64ToFloat32Array,
59
+ concatFloat32Arrays,
60
+ downsampleAudio
61
+ };
62
+ //# sourceMappingURL=chunk-BSOOMHW6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/audio/pcm.ts"],"sourcesContent":["/** PCM16 helpers aligned with main-app web voice (24 kHz). */\n\nexport const SERVER_SAMPLE_RATE = 24000;\nexport const TARGET_SAMPLE_RATE = 24000;\nexport const MONITOR_SAMPLE_RATE = 16000;\n\nexport function float32ArrayToBase64(float32Array: Float32Array): string {\n const int16Array = new Int16Array(float32Array.length);\n for (let i = 0; i < float32Array.length; i += 1) {\n const sample = Math.max(-1, Math.min(1, float32Array[i]));\n int16Array[i] = Math.round(sample * 32767);\n }\n const uint8Array = new Uint8Array(int16Array.buffer);\n let binaryString = '';\n for (let i = 0; i < uint8Array.length; i += 1) {\n binaryString += String.fromCharCode(uint8Array[i]);\n }\n return btoa(binaryString);\n}\n\nexport function base64ToFloat32Array(base64: string): Float32Array {\n const binaryString = atob(base64);\n const len = binaryString.length / 2;\n const float32Array = new Float32Array(len);\n for (let i = 0; i < len; i += 1) {\n const lo = binaryString.charCodeAt(i * 2);\n const hi = binaryString.charCodeAt(i * 2 + 1);\n let int16 = (hi << 8) | lo;\n if (int16 >= 0x8000) int16 -= 0x10000;\n float32Array[i] = int16 / 32768;\n }\n return float32Array;\n}\n\nexport function concatFloat32Arrays(arrays: Float32Array[]): Float32Array {\n const totalLength = arrays.reduce((sum, arr) => sum + arr.length, 0);\n const result = new Float32Array(totalLength);\n let offset = 0;\n for (const arr of arrays) {\n result.set(arr, offset);\n offset += arr.length;\n }\n return result;\n}\n\nexport function downsampleAudio(\n audioData: Float32Array,\n originalSampleRate: number,\n targetSampleRate: number\n): Float32Array {\n if (originalSampleRate === targetSampleRate) return audioData;\n const ratio = originalSampleRate / targetSampleRate;\n const newLength = Math.round(audioData.length / ratio);\n const result = new Float32Array(newLength);\n for (let i = 0; i < newLength; i += 1) {\n const srcIndex = Math.floor(i * ratio);\n result[i] = audioData[srcIndex];\n }\n return result;\n}\n"],"mappings":";AAEO,IAAM,qBAAqB;AAC3B,IAAM,qBAAqB;AAC3B,IAAM,sBAAsB;AAE5B,SAAS,qBAAqB,cAAoC;AACtE,QAAM,aAAa,IAAI,WAAW,aAAa,MAAM;AACrD,WAAS,IAAI,GAAG,IAAI,aAAa,QAAQ,KAAK,GAAG;AAC9C,UAAM,SAAS,KAAK,IAAI,IAAI,KAAK,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC;AACxD,eAAW,CAAC,IAAI,KAAK,MAAM,SAAS,KAAK;AAAA,EAC5C;AACA,QAAM,aAAa,IAAI,WAAW,WAAW,MAAM;AACnD,MAAI,eAAe;AACnB,WAAS,IAAI,GAAG,IAAI,WAAW,QAAQ,KAAK,GAAG;AAC5C,oBAAgB,OAAO,aAAa,WAAW,CAAC,CAAC;AAAA,EACpD;AACA,SAAO,KAAK,YAAY;AAC3B;AAEO,SAAS,qBAAqB,QAA8B;AAChE,QAAM,eAAe,KAAK,MAAM;AAChC,QAAM,MAAM,aAAa,SAAS;AAClC,QAAM,eAAe,IAAI,aAAa,GAAG;AACzC,WAAS,IAAI,GAAG,IAAI,KAAK,KAAK,GAAG;AAC9B,UAAM,KAAK,aAAa,WAAW,IAAI,CAAC;AACxC,UAAM,KAAK,aAAa,WAAW,IAAI,IAAI,CAAC;AAC5C,QAAI,QAAS,MAAM,IAAK;AACxB,QAAI,SAAS,MAAQ,UAAS;AAC9B,iBAAa,CAAC,IAAI,QAAQ;AAAA,EAC7B;AACA,SAAO;AACV;AAEO,SAAS,oBAAoB,QAAsC;AACvE,QAAM,cAAc,OAAO,OAAO,CAAC,KAAK,QAAQ,MAAM,IAAI,QAAQ,CAAC;AACnE,QAAM,SAAS,IAAI,aAAa,WAAW;AAC3C,MAAI,SAAS;AACb,aAAW,OAAO,QAAQ;AACvB,WAAO,IAAI,KAAK,MAAM;AACtB,cAAU,IAAI;AAAA,EACjB;AACA,SAAO;AACV;AAEO,SAAS,gBACb,WACA,oBACA,kBACa;AACb,MAAI,uBAAuB,iBAAkB,QAAO;AACpD,QAAM,QAAQ,qBAAqB;AACnC,QAAM,YAAY,KAAK,MAAM,UAAU,SAAS,KAAK;AACrD,QAAM,SAAS,IAAI,aAAa,SAAS;AACzC,WAAS,IAAI,GAAG,IAAI,WAAW,KAAK,GAAG;AACpC,UAAM,WAAW,KAAK,MAAM,IAAI,KAAK;AACrC,WAAO,CAAC,IAAI,UAAU,QAAQ;AAAA,EACjC;AACA,SAAO;AACV;","names":[]}
@@ -4465,7 +4465,7 @@ var OrgApi = class extends BaseApiClient {
4465
4465
  );
4466
4466
  }
4467
4467
  /**
4468
- * Purchase a phone number from Twilio for this org.
4468
+ * Purchase a phone number from Twilio for this org inventory (org admin only).
4469
4469
  */
4470
4470
  async purchasePhoneNumber(orgUuid, phoneNumber, numberType) {
4471
4471
  return this.fetch(`o/${orgUuid}/phone-numbers/purchase`, {
@@ -4892,31 +4892,6 @@ var PhoneNumbersApi = class extends BaseApiClient {
4892
4892
  body: JSON.stringify({ providerPhoneUuid })
4893
4893
  });
4894
4894
  }
4895
- async searchAvailablePhoneNumbers(wid, params) {
4896
- const searchParams = new URLSearchParams();
4897
- if (params.country) searchParams.set("country", params.country);
4898
- if (params.numberType) searchParams.set("number_type", params.numberType);
4899
- if (params.areaCode) searchParams.set("area_code", params.areaCode);
4900
- if (params.contains) searchParams.set("contains", params.contains);
4901
- if (params.city) searchParams.set("city", params.city);
4902
- if (params.state) searchParams.set("state", params.state);
4903
- if (params.limit) searchParams.set("limit", String(params.limit));
4904
- const qs = searchParams.toString();
4905
- return this.fetch(
4906
- `w/${wid}/phone-numbers/search${qs ? `?${qs}` : ""}`
4907
- );
4908
- }
4909
- async purchasePhoneNumber(wid, request, idempotencyKey) {
4910
- const headers = {};
4911
- if (idempotencyKey) {
4912
- headers["Idempotency-Key"] = idempotencyKey;
4913
- }
4914
- return this.fetch(`w/${wid}/phone-numbers/purchase`, {
4915
- method: "POST",
4916
- body: JSON.stringify(request),
4917
- headers
4918
- });
4919
- }
4920
4895
  async releasePhoneNumber(wid, id) {
4921
4896
  return this.fetch(`w/${wid}/phone-numbers/${id}/release`, {
4922
4897
  method: "POST"
@@ -8267,8 +8242,6 @@ function bindCommunicationsMethods(target, phoneNumbers, inboxes, notificationRu
8267
8242
  target.getPhoneNumberVoicemails = phoneNumbers.getPhoneNumberVoicemails.bind(phoneNumbers);
8268
8243
  target.fetchVoicemailAudio = phoneNumbers.fetchVoicemailAudio.bind(phoneNumbers);
8269
8244
  target.updateVoicemailStatus = phoneNumbers.updateVoicemailStatus.bind(phoneNumbers);
8270
- target.searchAvailablePhoneNumbers = phoneNumbers.searchAvailablePhoneNumbers.bind(phoneNumbers);
8271
- target.purchasePhoneNumber = phoneNumbers.purchasePhoneNumber.bind(phoneNumbers);
8272
8245
  target.releasePhoneNumber = phoneNumbers.releasePhoneNumber.bind(phoneNumbers);
8273
8246
  target.getLinkablePhones = phoneNumbers.getLinkablePhones.bind(phoneNumbers);
8274
8247
  target.linkPhoneNumber = phoneNumbers.linkPhoneNumber.bind(phoneNumbers);
@@ -9246,8 +9219,6 @@ var GravityRailClient = class {
9246
9219
  getPhoneNumberVoicemails;
9247
9220
  fetchVoicemailAudio;
9248
9221
  updateVoicemailStatus;
9249
- searchAvailablePhoneNumbers;
9250
- purchasePhoneNumber;
9251
9222
  releasePhoneNumber;
9252
9223
  getLinkablePhones;
9253
9224
  linkPhoneNumber;
@@ -11003,4 +10974,4 @@ export {
11003
10974
  ScopeManager,
11004
10975
  SCOPE_PRESETS
11005
10976
  };
11006
- //# sourceMappingURL=chunk-QZC4QPP2.js.map
10977
+ //# sourceMappingURL=chunk-DX42AMVM.js.map