@fonoster/common 0.5.5 → 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 (88) hide show
  1. package/README.md +3 -0
  2. package/dist/constants.d.ts +4 -0
  3. package/dist/constants.js +6 -0
  4. package/dist/errors.d.ts +8 -0
  5. package/dist/errors.js +95 -0
  6. package/dist/grpcStatusMap.d.ts +4 -0
  7. package/dist/{envs.js → grpcStatusMap.js} +8 -6
  8. package/dist/index.d.ts +7 -8
  9. package/dist/index.js +38 -14
  10. package/dist/notifications/compileTemplate.d.ts +6 -0
  11. package/dist/{env_is_set.js → notifications/compileTemplate.js} +12 -14
  12. package/dist/notifications/createEmailSender.d.ts +17 -0
  13. package/dist/notifications/createEmailSender.js +55 -0
  14. package/dist/notifications/index.d.ts +2 -0
  15. package/dist/notifications/index.js +36 -0
  16. package/dist/protos/acls.proto +119 -0
  17. package/dist/protos/agents.proto +155 -0
  18. package/dist/protos/applications.proto +154 -0
  19. package/dist/protos/calls.proto +162 -0
  20. package/dist/protos/credentials.proto +119 -0
  21. package/dist/protos/domains.proto +127 -0
  22. package/dist/protos/identity.proto +286 -0
  23. package/dist/protos/numbers.proto +155 -0
  24. package/dist/protos/secrets.proto +113 -0
  25. package/dist/protos/trunks.proto +164 -0
  26. package/dist/protos/voice.proto +421 -0
  27. package/dist/tts/AzureVoices.d.ts +523 -0
  28. package/dist/tts/AzureVoices.js +3622 -0
  29. package/dist/tts/GoogleVoices.d.ts +475 -0
  30. package/dist/tts/GoogleVoices.js +3284 -0
  31. package/dist/tts/index.d.ts +3 -0
  32. package/dist/tts/index.js +37 -0
  33. package/dist/tts/types.d.ts +164 -0
  34. package/dist/tts/types.js +186 -0
  35. package/dist/utils/assertEnvsAreSet.d.ts +7 -0
  36. package/dist/utils/assertEnvsAreSet.js +37 -0
  37. package/dist/utils/assertFileExists.d.ts +5 -0
  38. package/dist/utils/assertFileExists.js +38 -0
  39. package/dist/utils/createInterceptingCall.d.ts +7 -0
  40. package/dist/utils/createInterceptingCall.js +9 -0
  41. package/dist/utils/createService.d.ts +9 -0
  42. package/dist/{service_runner.js → utils/createService.js} +15 -40
  43. package/dist/utils/datesMapper.d.ts +9 -0
  44. package/dist/utils/datesMapper.js +8 -0
  45. package/dist/utils/getServerCredentials.d.ts +10 -0
  46. package/dist/{trust_util.js → utils/getServerCredentials.js} +33 -37
  47. package/dist/utils/index.d.ts +8 -0
  48. package/dist/utils/index.js +42 -0
  49. package/dist/utils/toCamelCase.d.ts +2 -0
  50. package/dist/utils/toCamelCase.js +27 -0
  51. package/dist/utils/toPascalCase.d.ts +2 -0
  52. package/dist/{speech/plugin.js → utils/toPascalCase.js} +9 -13
  53. package/dist/voice/Dial.d.ts +23 -0
  54. package/dist/voice/Dial.js +19 -0
  55. package/dist/voice/Gather.d.ts +18 -0
  56. package/dist/voice/Gather.js +9 -0
  57. package/dist/voice/Mute.d.ts +13 -0
  58. package/dist/voice/Mute.js +9 -0
  59. package/dist/voice/Play.d.ts +12 -0
  60. package/dist/voice/PlayDtmf.d.ts +5 -0
  61. package/dist/voice/PlaybackControl.d.ts +13 -0
  62. package/dist/voice/PlaybackControl.js +11 -0
  63. package/dist/voice/Record.d.ts +18 -0
  64. package/dist/voice/Record.js +7 -0
  65. package/dist/voice/Say.d.ts +15 -0
  66. package/dist/voice/Say.js +2 -0
  67. package/dist/voice/Stream.d.ts +41 -0
  68. package/dist/voice/Stream.js +39 -0
  69. package/dist/voice/Verb.d.ts +9 -0
  70. package/dist/{healthcheck.js → voice/Verb.js} +2 -5
  71. package/dist/voice/index.d.ts +11 -0
  72. package/dist/voice/index.js +45 -0
  73. package/dist/voice/voice.d.ts +101 -0
  74. package/dist/voice/voice.js +44 -0
  75. package/package.json +28 -25
  76. package/LICENSE +0 -21
  77. package/dist/api_client.d.ts +0 -27
  78. package/dist/api_client.js +0 -110
  79. package/dist/env_is_set.d.ts +0 -1
  80. package/dist/envs.d.ts +0 -4
  81. package/dist/healthcheck.d.ts +0 -2
  82. package/dist/service_runner.d.ts +0 -13
  83. package/dist/speech/plugin.d.ts +0 -6
  84. package/dist/speech/types.d.ts +0 -17
  85. package/dist/trust_util.d.ts +0 -4
  86. package/dist/types.d.ts +0 -6
  87. /package/dist/{speech/types.js → voice/Play.js} +0 -0
  88. /package/dist/{types.js → voice/PlayDtmf.js} +0 -0
@@ -0,0 +1,3 @@
1
+ export * from "./GoogleVoices";
2
+ export * from "./AzureVoices";
3
+ export * from "./types";
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ /*
18
+ * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
19
+ * http://github.com/fonoster/fonoster
20
+ *
21
+ * This file is part of Fonoster
22
+ *
23
+ * Licensed under the MIT License (the "License");
24
+ * you may not use this file except in compliance with
25
+ * the License. You may obtain a copy of the License at
26
+ *
27
+ * https://opensource.org/licenses/MIT
28
+ *
29
+ * Unless required by applicable law or agreed to in writing, software
30
+ * distributed under the License is distributed on an "AS IS" BASIS,
31
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
32
+ * See the License for the specific language governing permissions and
33
+ * limitations under the License.
34
+ */
35
+ __exportStar(require("./GoogleVoices"), exports);
36
+ __exportStar(require("./AzureVoices"), exports);
37
+ __exportStar(require("./types"), exports);
@@ -0,0 +1,164 @@
1
+ declare enum VoiceLanguage {
2
+ AR_XA = "ar-XA",
3
+ AF_ZA = "af-ZA",
4
+ AM_ET = "am-ET",
5
+ AR_AE = "ar-AE",
6
+ AR_BH = "ar-BH",
7
+ AR_DZ = "ar-DZ",
8
+ AR_EG = "ar-EG",
9
+ AR_IQ = "ar-IQ",
10
+ AR_JO = "ar-JO",
11
+ AR_KW = "ar-KW",
12
+ AR_LB = "ar-LB",
13
+ AR_LY = "ar-LY",
14
+ AR_MA = "ar-MA",
15
+ AR_OM = "ar-OM",
16
+ AR_QA = "ar-QA",
17
+ AR_SA = "ar-SA",
18
+ AR_SY = "ar-SY",
19
+ AR_TN = "ar-TN",
20
+ AR_YE = "ar-YE",
21
+ AS_IN = "as-IN",
22
+ AZ_AZ = "az-AZ",
23
+ BG_BG = "bg-BG",
24
+ BN_BD = "bn-BD",
25
+ BN_IN = "bn-IN",
26
+ BS_BA = "bs-BA",
27
+ CA_ES = "ca-ES",
28
+ CMN_CN = "cmn-CN",
29
+ CMN_TW = "cmn-TW",
30
+ CS_CZ = "cs-CZ",
31
+ CY_GB = "cy-GB",
32
+ DA_DK = "da-DK",
33
+ DE_AT = "de-AT",
34
+ DE_CH = "de-CH",
35
+ DE_DE = "de-DE",
36
+ EL_GR = "el-GR",
37
+ EN_AU = "en-AU",
38
+ EN_CA = "en-CA",
39
+ EN_GB = "en-GB",
40
+ EN_HK = "en-HK",
41
+ EN_IE = "en-IE",
42
+ EN_IN = "en-IN",
43
+ EN_KE = "en-KE",
44
+ EN_NG = "en-NG",
45
+ EN_NZ = "en-NZ",
46
+ EN_PH = "en-PH",
47
+ EN_SG = "en-SG",
48
+ EN_TZ = "en-TZ",
49
+ EN_US = "en-US",
50
+ EN_ZA = "en-ZA",
51
+ ES_AR = "es-AR",
52
+ ES_BO = "es-BO",
53
+ ES_CL = "es-CL",
54
+ ES_CO = "es-CO",
55
+ ES_CR = "es-CR",
56
+ ES_CU = "es-CU",
57
+ ES_DO = "es-DO",
58
+ ES_EC = "es-EC",
59
+ ES_ES = "es-ES",
60
+ ES_GQ = "es-GQ",
61
+ ES_GT = "es-GT",
62
+ ES_HN = "es-HN",
63
+ ES_MX = "es-MX",
64
+ ES_NI = "es-NI",
65
+ ES_PA = "es-PA",
66
+ ES_PE = "es-PE",
67
+ ES_PR = "es-PR",
68
+ ES_PY = "es-PY",
69
+ ES_SV = "es-SV",
70
+ ES_US = "es-US",
71
+ ES_UY = "es-UY",
72
+ ES_VE = "es-VE",
73
+ ET_EE = "et-EE",
74
+ EU_ES = "eu-ES",
75
+ FA_IR = "fa-IR",
76
+ FI_FI = "fi-FI",
77
+ FIL_PH = "fil-PH",
78
+ FR_BE = "fr-BE",
79
+ FR_CA = "fr-CA",
80
+ FR_CH = "fr-CH",
81
+ FR_FR = "fr-FR",
82
+ GA_IE = "ga-IE",
83
+ GL_ES = "gl-ES",
84
+ GU_IN = "gu-IN",
85
+ HE_IL = "he-IL",
86
+ HI_IN = "hi-IN",
87
+ HR_HR = "hr-HR",
88
+ HU_HU = "hu-HU",
89
+ HY_AM = "hy-AM",
90
+ ID_ID = "id-ID",
91
+ IS_IS = "is-IS",
92
+ IT_IT = "it-IT",
93
+ JA_JP = "ja-JP",
94
+ JV_ID = "jv-ID",
95
+ KA_GE = "ka-GE",
96
+ KK_KZ = "kk-KZ",
97
+ KM_KH = "km-KH",
98
+ KN_IN = "kn-IN",
99
+ KO_KR = "ko-KR",
100
+ LO_LA = "lo-LA",
101
+ LT_LT = "lt-LT",
102
+ LV_LV = "lv-LV",
103
+ MK_MK = "mk-MK",
104
+ ML_IN = "ml-IN",
105
+ MN_MN = "mn-MN",
106
+ MR_IN = "mr-IN",
107
+ MS_MY = "ms-MY",
108
+ MT_MT = "mt-MT",
109
+ MY_MM = "my-MM",
110
+ NB_NO = "nb-NO",
111
+ NE_NP = "ne-NP",
112
+ NL_BE = "nl-BE",
113
+ NL_NL = "nl-NL",
114
+ OR_IN = "or-IN",
115
+ PA_IN = "pa-IN",
116
+ PL_PL = "pl-PL",
117
+ PS_AF = "ps-AF",
118
+ PT_BR = "pt-BR",
119
+ PT_PT = "pt-PT",
120
+ RO_RO = "ro-RO",
121
+ RU_RU = "ru-RU",
122
+ SI_LK = "si-LK",
123
+ SK_SK = "sk-SK",
124
+ SL_SI = "sl-SI",
125
+ SO_SO = "so-SO",
126
+ SQ_AL = "sq-AL",
127
+ SR_LATN_RS = "sr-Latn-RS",
128
+ SR_RS = "sr-RS",
129
+ SU_ID = "su-ID",
130
+ SV_SE = "sv-SE",
131
+ SW_KE = "sw-KE",
132
+ SW_TZ = "sw-TZ",
133
+ TA_IN = "ta-IN",
134
+ TA_LK = "ta-LK",
135
+ TA_MY = "ta-MY",
136
+ TA_SG = "ta-SG",
137
+ TE_IN = "te-IN",
138
+ TH_TH = "th-TH",
139
+ TR_TR = "tr-TR",
140
+ UK_UA = "uk-UA",
141
+ UR_IN = "ur-IN",
142
+ UR_PK = "ur-PK",
143
+ UZ_UZ = "uz-UZ",
144
+ VI_VN = "vi-VN",
145
+ WUU_CN = "wuu-CN",
146
+ YUE_CN = "yue-CN",
147
+ YUE_HK = "yue-HK",
148
+ ZH_CN = "zh-CN",
149
+ ZH_CN_GUANGXI = "zh-CN-guangxi",
150
+ ZH_CN_HENAN = "zh-CN-henan",
151
+ ZH_CN_LIAONING = "zh-CN-liaoning",
152
+ ZH_CN_SHAANXI = "zh-CN-shaanxi",
153
+ ZH_CN_SHANDONG = "zh-CN-shandong",
154
+ ZH_CN_SICHUAN = "zh-CN-sichuan",
155
+ ZH_HK = "zh-HK",
156
+ ZH_TW = "zh-TW",
157
+ ZU_ZA = "zu-ZA"
158
+ }
159
+ declare enum VoiceGender {
160
+ MALE = 0,
161
+ FEMALE = 1,
162
+ NEUTRAL = 2
163
+ }
164
+ export { VoiceLanguage, VoiceGender };
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VoiceGender = exports.VoiceLanguage = void 0;
4
+ /*
5
+ * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
6
+ * http://github.com/fonoster/fonoster
7
+ *
8
+ * This file is part of Fonoster
9
+ *
10
+ * Licensed under the MIT License (the "License");
11
+ * you may not use this file except in compliance with
12
+ * the License. You may obtain a copy of the License at
13
+ *
14
+ * https://opensource.org/licenses/MIT
15
+ *
16
+ * Unless required by applicable law or agreed to in writing, software
17
+ * distributed under the License is distributed on an "AS IS" BASIS,
18
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
+ * See the License for the specific language governing permissions and
20
+ * limitations under the License.
21
+ */
22
+ var VoiceLanguage;
23
+ (function (VoiceLanguage) {
24
+ VoiceLanguage["AR_XA"] = "ar-XA";
25
+ VoiceLanguage["AF_ZA"] = "af-ZA";
26
+ VoiceLanguage["AM_ET"] = "am-ET";
27
+ VoiceLanguage["AR_AE"] = "ar-AE";
28
+ VoiceLanguage["AR_BH"] = "ar-BH";
29
+ VoiceLanguage["AR_DZ"] = "ar-DZ";
30
+ VoiceLanguage["AR_EG"] = "ar-EG";
31
+ VoiceLanguage["AR_IQ"] = "ar-IQ";
32
+ VoiceLanguage["AR_JO"] = "ar-JO";
33
+ VoiceLanguage["AR_KW"] = "ar-KW";
34
+ VoiceLanguage["AR_LB"] = "ar-LB";
35
+ VoiceLanguage["AR_LY"] = "ar-LY";
36
+ VoiceLanguage["AR_MA"] = "ar-MA";
37
+ VoiceLanguage["AR_OM"] = "ar-OM";
38
+ VoiceLanguage["AR_QA"] = "ar-QA";
39
+ VoiceLanguage["AR_SA"] = "ar-SA";
40
+ VoiceLanguage["AR_SY"] = "ar-SY";
41
+ VoiceLanguage["AR_TN"] = "ar-TN";
42
+ VoiceLanguage["AR_YE"] = "ar-YE";
43
+ VoiceLanguage["AS_IN"] = "as-IN";
44
+ VoiceLanguage["AZ_AZ"] = "az-AZ";
45
+ VoiceLanguage["BG_BG"] = "bg-BG";
46
+ VoiceLanguage["BN_BD"] = "bn-BD";
47
+ VoiceLanguage["BN_IN"] = "bn-IN";
48
+ VoiceLanguage["BS_BA"] = "bs-BA";
49
+ VoiceLanguage["CA_ES"] = "ca-ES";
50
+ VoiceLanguage["CMN_CN"] = "cmn-CN";
51
+ VoiceLanguage["CMN_TW"] = "cmn-TW";
52
+ VoiceLanguage["CS_CZ"] = "cs-CZ";
53
+ VoiceLanguage["CY_GB"] = "cy-GB";
54
+ VoiceLanguage["DA_DK"] = "da-DK";
55
+ VoiceLanguage["DE_AT"] = "de-AT";
56
+ VoiceLanguage["DE_CH"] = "de-CH";
57
+ VoiceLanguage["DE_DE"] = "de-DE";
58
+ VoiceLanguage["EL_GR"] = "el-GR";
59
+ VoiceLanguage["EN_AU"] = "en-AU";
60
+ VoiceLanguage["EN_CA"] = "en-CA";
61
+ VoiceLanguage["EN_GB"] = "en-GB";
62
+ VoiceLanguage["EN_HK"] = "en-HK";
63
+ VoiceLanguage["EN_IE"] = "en-IE";
64
+ VoiceLanguage["EN_IN"] = "en-IN";
65
+ VoiceLanguage["EN_KE"] = "en-KE";
66
+ VoiceLanguage["EN_NG"] = "en-NG";
67
+ VoiceLanguage["EN_NZ"] = "en-NZ";
68
+ VoiceLanguage["EN_PH"] = "en-PH";
69
+ VoiceLanguage["EN_SG"] = "en-SG";
70
+ VoiceLanguage["EN_TZ"] = "en-TZ";
71
+ VoiceLanguage["EN_US"] = "en-US";
72
+ VoiceLanguage["EN_ZA"] = "en-ZA";
73
+ VoiceLanguage["ES_AR"] = "es-AR";
74
+ VoiceLanguage["ES_BO"] = "es-BO";
75
+ VoiceLanguage["ES_CL"] = "es-CL";
76
+ VoiceLanguage["ES_CO"] = "es-CO";
77
+ VoiceLanguage["ES_CR"] = "es-CR";
78
+ VoiceLanguage["ES_CU"] = "es-CU";
79
+ VoiceLanguage["ES_DO"] = "es-DO";
80
+ VoiceLanguage["ES_EC"] = "es-EC";
81
+ VoiceLanguage["ES_ES"] = "es-ES";
82
+ VoiceLanguage["ES_GQ"] = "es-GQ";
83
+ VoiceLanguage["ES_GT"] = "es-GT";
84
+ VoiceLanguage["ES_HN"] = "es-HN";
85
+ VoiceLanguage["ES_MX"] = "es-MX";
86
+ VoiceLanguage["ES_NI"] = "es-NI";
87
+ VoiceLanguage["ES_PA"] = "es-PA";
88
+ VoiceLanguage["ES_PE"] = "es-PE";
89
+ VoiceLanguage["ES_PR"] = "es-PR";
90
+ VoiceLanguage["ES_PY"] = "es-PY";
91
+ VoiceLanguage["ES_SV"] = "es-SV";
92
+ VoiceLanguage["ES_US"] = "es-US";
93
+ VoiceLanguage["ES_UY"] = "es-UY";
94
+ VoiceLanguage["ES_VE"] = "es-VE";
95
+ VoiceLanguage["ET_EE"] = "et-EE";
96
+ VoiceLanguage["EU_ES"] = "eu-ES";
97
+ VoiceLanguage["FA_IR"] = "fa-IR";
98
+ VoiceLanguage["FI_FI"] = "fi-FI";
99
+ VoiceLanguage["FIL_PH"] = "fil-PH";
100
+ VoiceLanguage["FR_BE"] = "fr-BE";
101
+ VoiceLanguage["FR_CA"] = "fr-CA";
102
+ VoiceLanguage["FR_CH"] = "fr-CH";
103
+ VoiceLanguage["FR_FR"] = "fr-FR";
104
+ VoiceLanguage["GA_IE"] = "ga-IE";
105
+ VoiceLanguage["GL_ES"] = "gl-ES";
106
+ VoiceLanguage["GU_IN"] = "gu-IN";
107
+ VoiceLanguage["HE_IL"] = "he-IL";
108
+ VoiceLanguage["HI_IN"] = "hi-IN";
109
+ VoiceLanguage["HR_HR"] = "hr-HR";
110
+ VoiceLanguage["HU_HU"] = "hu-HU";
111
+ VoiceLanguage["HY_AM"] = "hy-AM";
112
+ VoiceLanguage["ID_ID"] = "id-ID";
113
+ VoiceLanguage["IS_IS"] = "is-IS";
114
+ VoiceLanguage["IT_IT"] = "it-IT";
115
+ VoiceLanguage["JA_JP"] = "ja-JP";
116
+ VoiceLanguage["JV_ID"] = "jv-ID";
117
+ VoiceLanguage["KA_GE"] = "ka-GE";
118
+ VoiceLanguage["KK_KZ"] = "kk-KZ";
119
+ VoiceLanguage["KM_KH"] = "km-KH";
120
+ VoiceLanguage["KN_IN"] = "kn-IN";
121
+ VoiceLanguage["KO_KR"] = "ko-KR";
122
+ VoiceLanguage["LO_LA"] = "lo-LA";
123
+ VoiceLanguage["LT_LT"] = "lt-LT";
124
+ VoiceLanguage["LV_LV"] = "lv-LV";
125
+ VoiceLanguage["MK_MK"] = "mk-MK";
126
+ VoiceLanguage["ML_IN"] = "ml-IN";
127
+ VoiceLanguage["MN_MN"] = "mn-MN";
128
+ VoiceLanguage["MR_IN"] = "mr-IN";
129
+ VoiceLanguage["MS_MY"] = "ms-MY";
130
+ VoiceLanguage["MT_MT"] = "mt-MT";
131
+ VoiceLanguage["MY_MM"] = "my-MM";
132
+ VoiceLanguage["NB_NO"] = "nb-NO";
133
+ VoiceLanguage["NE_NP"] = "ne-NP";
134
+ VoiceLanguage["NL_BE"] = "nl-BE";
135
+ VoiceLanguage["NL_NL"] = "nl-NL";
136
+ VoiceLanguage["OR_IN"] = "or-IN";
137
+ VoiceLanguage["PA_IN"] = "pa-IN";
138
+ VoiceLanguage["PL_PL"] = "pl-PL";
139
+ VoiceLanguage["PS_AF"] = "ps-AF";
140
+ VoiceLanguage["PT_BR"] = "pt-BR";
141
+ VoiceLanguage["PT_PT"] = "pt-PT";
142
+ VoiceLanguage["RO_RO"] = "ro-RO";
143
+ VoiceLanguage["RU_RU"] = "ru-RU";
144
+ VoiceLanguage["SI_LK"] = "si-LK";
145
+ VoiceLanguage["SK_SK"] = "sk-SK";
146
+ VoiceLanguage["SL_SI"] = "sl-SI";
147
+ VoiceLanguage["SO_SO"] = "so-SO";
148
+ VoiceLanguage["SQ_AL"] = "sq-AL";
149
+ VoiceLanguage["SR_LATN_RS"] = "sr-Latn-RS";
150
+ VoiceLanguage["SR_RS"] = "sr-RS";
151
+ VoiceLanguage["SU_ID"] = "su-ID";
152
+ VoiceLanguage["SV_SE"] = "sv-SE";
153
+ VoiceLanguage["SW_KE"] = "sw-KE";
154
+ VoiceLanguage["SW_TZ"] = "sw-TZ";
155
+ VoiceLanguage["TA_IN"] = "ta-IN";
156
+ VoiceLanguage["TA_LK"] = "ta-LK";
157
+ VoiceLanguage["TA_MY"] = "ta-MY";
158
+ VoiceLanguage["TA_SG"] = "ta-SG";
159
+ VoiceLanguage["TE_IN"] = "te-IN";
160
+ VoiceLanguage["TH_TH"] = "th-TH";
161
+ VoiceLanguage["TR_TR"] = "tr-TR";
162
+ VoiceLanguage["UK_UA"] = "uk-UA";
163
+ VoiceLanguage["UR_IN"] = "ur-IN";
164
+ VoiceLanguage["UR_PK"] = "ur-PK";
165
+ VoiceLanguage["UZ_UZ"] = "uz-UZ";
166
+ VoiceLanguage["VI_VN"] = "vi-VN";
167
+ VoiceLanguage["WUU_CN"] = "wuu-CN";
168
+ VoiceLanguage["YUE_CN"] = "yue-CN";
169
+ VoiceLanguage["YUE_HK"] = "yue-HK";
170
+ VoiceLanguage["ZH_CN"] = "zh-CN";
171
+ VoiceLanguage["ZH_CN_GUANGXI"] = "zh-CN-guangxi";
172
+ VoiceLanguage["ZH_CN_HENAN"] = "zh-CN-henan";
173
+ VoiceLanguage["ZH_CN_LIAONING"] = "zh-CN-liaoning";
174
+ VoiceLanguage["ZH_CN_SHAANXI"] = "zh-CN-shaanxi";
175
+ VoiceLanguage["ZH_CN_SHANDONG"] = "zh-CN-shandong";
176
+ VoiceLanguage["ZH_CN_SICHUAN"] = "zh-CN-sichuan";
177
+ VoiceLanguage["ZH_HK"] = "zh-HK";
178
+ VoiceLanguage["ZH_TW"] = "zh-TW";
179
+ VoiceLanguage["ZU_ZA"] = "zu-ZA";
180
+ })(VoiceLanguage || (exports.VoiceLanguage = VoiceLanguage = {}));
181
+ var VoiceGender;
182
+ (function (VoiceGender) {
183
+ VoiceGender[VoiceGender["MALE"] = 0] = "MALE";
184
+ VoiceGender[VoiceGender["FEMALE"] = 1] = "FEMALE";
185
+ VoiceGender[VoiceGender["NEUTRAL"] = 2] = "NEUTRAL";
186
+ })(VoiceGender || (exports.VoiceGender = VoiceGender = {}));
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Function that asserts that the given environment variable is set.
3
+ *
4
+ * @param {string[]} variables environment variables to check
5
+ */
6
+ declare function assertEnvsAreSet(variables: string[]): void;
7
+ export { assertEnvsAreSet };
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.assertEnvsAreSet = void 0;
4
+ /*
5
+ * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
6
+ * http://github.com/fonoster/fonoster
7
+ *
8
+ * This file is part of Fonoster
9
+ *
10
+ * Licensed under the MIT License (the "License");
11
+ * you may not use this file except in compliance with
12
+ * the License. You may obtain a copy of the License at
13
+ *
14
+ * https://opensource.org/licenses/MIT
15
+ *
16
+ * Unless required by applicable law or agreed to in writing, software
17
+ * distributed under the License is distributed on an "AS IS" BASIS,
18
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
+ * See the License for the specific language governing permissions and
20
+ * limitations under the License.
21
+ */
22
+ const logger_1 = require("@fonoster/logger");
23
+ /**
24
+ * Function that asserts that the given environment variable is set.
25
+ *
26
+ * @param {string[]} variables environment variables to check
27
+ */
28
+ function assertEnvsAreSet(variables) {
29
+ variables.forEach((variable) => {
30
+ if (!(variable in process.env)) {
31
+ const logger = (0, logger_1.getLogger)({ service: "common", filePath: __filename });
32
+ logger.error(`the environment variable ${variable} is required but was not found`);
33
+ process.exit(1);
34
+ }
35
+ });
36
+ }
37
+ exports.assertEnvsAreSet = assertEnvsAreSet;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Function that asserts that the given file exists.
3
+ * @param {string} file file to check
4
+ */
5
+ export declare function assertFileExists(file: string): void;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.assertFileExists = void 0;
7
+ /*
8
+ * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
9
+ * http://github.com/fonoster/fonoster
10
+ *
11
+ * This file is part of Fonoster
12
+ *
13
+ * Licensed under the MIT License (the "License");
14
+ * you may not use this file except in compliance with
15
+ * the License. You may obtain a copy of the License at
16
+ *
17
+ * https://opensource.org/licenses/MIT
18
+ *
19
+ * Unless required by applicable law or agreed to in writing, software
20
+ * distributed under the License is distributed on an "AS IS" BASIS,
21
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22
+ * See the License for the specific language governing permissions and
23
+ * limitations under the License.
24
+ */
25
+ const fs_1 = __importDefault(require("fs"));
26
+ const logger_1 = require("@fonoster/logger");
27
+ const logger = (0, logger_1.getLogger)({ service: "common", filePath: __filename });
28
+ /**
29
+ * Function that asserts that the given file exists.
30
+ * @param {string} file file to check
31
+ */
32
+ function assertFileExists(file) {
33
+ if (!fs_1.default.existsSync(file)) {
34
+ logger.error(`the file ${file} is required but does not exist`);
35
+ process.exit(1);
36
+ }
37
+ }
38
+ exports.assertFileExists = assertFileExists;
@@ -0,0 +1,7 @@
1
+ import { status as GRPCStatus, ServerInterceptingCall } from "@grpc/grpc-js";
2
+ declare function createInterceptingCall(params: {
3
+ call: ServerInterceptingCall;
4
+ code: GRPCStatus;
5
+ details: string;
6
+ }): ServerInterceptingCall;
7
+ export { createInterceptingCall };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createInterceptingCall = void 0;
4
+ function createInterceptingCall(params) {
5
+ const { call, code, details } = params;
6
+ call.sendStatus({ code, details });
7
+ return call;
8
+ }
9
+ exports.createInterceptingCall = createInterceptingCall;
@@ -0,0 +1,9 @@
1
+ import * as grpc from "@grpc/grpc-js";
2
+ type ServiceDefinitionParams = {
3
+ serviceName: string;
4
+ pckg: string;
5
+ proto: string;
6
+ version: string;
7
+ };
8
+ declare function createServiceDefiniton(params: ServiceDefinitionParams): grpc.ServiceDefinition<grpc.UntypedServiceImplementation>;
9
+ export { createServiceDefiniton, ServiceDefinitionParams };
@@ -22,14 +22,10 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
- /* eslint-disable @typescript-eslint/explicit-module-boundary-types */
30
- /* eslint-disable require-jsdoc */
26
+ exports.createServiceDefiniton = void 0;
31
27
  /*
32
- * Copyright (C) 2023 by Fonoster Inc (https://fonoster.com)
28
+ * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
33
29
  * http://github.com/fonoster/fonoster
34
30
  *
35
31
  * This file is part of Fonoster
@@ -47,38 +43,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
47
43
  * limitations under the License.
48
44
  */
49
45
  const grpc = __importStar(require("@grpc/grpc-js"));
50
- const trust_util_1 = require("./trust_util");
51
- const grpc_health_check_1 = require("@fonoster/grpc-health-check");
52
- const logger_1 = require("@fonoster/logger");
53
- const env_is_set_1 = __importDefault(require("./env_is_set"));
54
- const interceptor = require("grpc-interceptors");
55
- const BIND_ADDR = "0.0.0.0:50052";
56
- const logger = (0, logger_1.getLogger)({ service: "common", filePath: __filename });
57
- function run(srvInfList, middlewareList) {
58
- const grpcServer = new grpc.Server();
59
- // Wrapped server
60
- const server = interceptor.serverProxy((0, grpc_health_check_1.useHealth)(grpcServer));
61
- logger.info(`service runner`, {
62
- bindAddr: BIND_ADDR,
63
- apiVersion: srvInfList[0].version
64
- });
65
- middlewareList?.forEach((middleware) => {
66
- server.use(middleware.middlewareObj);
67
- logger.info(`service runner`, {
68
- middleware: middleware.name
69
- });
70
- });
71
- srvInfList.forEach((srvInf) => {
72
- // TODO: Perhaps this method should be simplified now that we are using less services
73
- (0, env_is_set_1.default)("apiserver");
74
- server.addService(srvInf.service, srvInf.server);
75
- logger.info(`service runner`, {
76
- service: srvInf.name
77
- });
78
- });
79
- server.bindAsync(BIND_ADDR, (0, trust_util_1.getServerCredentials)(), () => {
80
- server.start();
81
- });
82
- logger.info("service runner online");
46
+ const protoLoader = __importStar(require("@grpc/proto-loader"));
47
+ const loadOptions = {
48
+ keepCase: false,
49
+ longs: String,
50
+ enums: String,
51
+ defaults: false,
52
+ oneofs: true
53
+ };
54
+ function createServiceDefiniton(params) {
55
+ const pathToProto = `${__dirname}/../protos/${params.proto}`;
56
+ const definitions = protoLoader.loadSync(pathToProto, loadOptions);
57
+ return grpc.loadPackageDefinition(definitions).fonoster[params.pckg][params.version][params.serviceName].service;
83
58
  }
84
- exports.default = run;
59
+ exports.createServiceDefiniton = createServiceDefiniton;
@@ -0,0 +1,9 @@
1
+ type ObjectWithDates = {
2
+ createdAt: Date;
3
+ updatedAt: Date;
4
+ };
5
+ declare const datesMapper: <T extends ObjectWithDates>(item: T) => T & {
6
+ createdAt: number;
7
+ updatedAt: number;
8
+ };
9
+ export { datesMapper };
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.datesMapper = void 0;
4
+ const datesMapper = (item) => {
5
+ var _a, _b;
6
+ return (Object.assign(Object.assign({}, item), { createdAt: (_a = item === null || item === void 0 ? void 0 : item.createdAt) === null || _a === void 0 ? void 0 : _a.getTime(), updatedAt: (_b = item === null || item === void 0 ? void 0 : item.updatedAt) === null || _b === void 0 ? void 0 : _b.getTime() }));
7
+ };
8
+ exports.datesMapper = datesMapper;
@@ -0,0 +1,10 @@
1
+ import * as grpc from "@grpc/grpc-js";
2
+ type CredentialsConfig = {
3
+ tlsOn?: boolean;
4
+ verifyClientCert?: boolean;
5
+ caCert?: string;
6
+ serverCert?: string;
7
+ serverKey?: string;
8
+ };
9
+ declare function getServerCredentials(config: CredentialsConfig): Promise<grpc.ServerCredentials>;
10
+ export { getServerCredentials, CredentialsConfig };