@routr/processor 2.0.8-alpha.21 → 2.0.8-alpha.23
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.
- package/dist/alterations.d.ts +1 -0
- package/dist/alterations.js +33 -1
- package/package.json +5 -4
package/dist/alterations.d.ts
CHANGED
|
@@ -11,3 +11,4 @@ export declare const removeAuthorization: (request: MessageRequest) => MessageRe
|
|
|
11
11
|
export declare const removeSelfRoutes: (request: MessageRequest) => MessageRequest;
|
|
12
12
|
export declare const removeTopVia: (request: MessageRequest) => MessageRequest;
|
|
13
13
|
export declare const decreaseMaxForwards: (request: MessageRequest) => MessageRequest;
|
|
14
|
+
export declare const enforceE164: (enforceE164: boolean, validateMobilePrefix: boolean) => (request: MessageRequest) => MessageRequest;
|
package/dist/alterations.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.decreaseMaxForwards = exports.removeTopVia = exports.removeSelfRoutes = exports.removeAuthorization = exports.removeXEdgePortRef = exports.addXEdgePortRef = exports.addSelfRecordRoute = exports.applyXHeaders = exports.addRouteToPeerEdgePort = exports.addRouteToNextHop = exports.addSelfVia = exports.updateRequestURI = void 0;
|
|
3
|
+
exports.enforceE164 = exports.decreaseMaxForwards = exports.removeTopVia = exports.removeSelfRoutes = exports.removeAuthorization = exports.removeXEdgePortRef = exports.addXEdgePortRef = exports.addSelfRecordRoute = exports.applyXHeaders = exports.addRouteToPeerEdgePort = exports.addRouteToNextHop = exports.addSelfVia = exports.updateRequestURI = void 0;
|
|
4
4
|
/*
|
|
5
5
|
* Copyright (C) 2022 by Fonoster Inc (https://fonoster.com)
|
|
6
6
|
* http://github.com/fonoster/routr
|
|
@@ -20,6 +20,7 @@ exports.decreaseMaxForwards = exports.removeTopVia = exports.removeSelfRoutes =
|
|
|
20
20
|
* limitations under the License.
|
|
21
21
|
*/
|
|
22
22
|
const common_1 = require("@routr/common");
|
|
23
|
+
const phone_1 = require("phone");
|
|
23
24
|
const helper_1 = require("./helper");
|
|
24
25
|
// Q: Should we deprecate this method since we are not doing strict routing?
|
|
25
26
|
const updateRequestURI = (route) => (request) => {
|
|
@@ -208,3 +209,34 @@ const decreaseMaxForwards = (request) => {
|
|
|
208
209
|
return req;
|
|
209
210
|
};
|
|
210
211
|
exports.decreaseMaxForwards = decreaseMaxForwards;
|
|
212
|
+
// Will do the best effort to normalize from/to/requestUri users as e164 values
|
|
213
|
+
const enforceE164 = (enforceE164, validateMobilePrefix) => (request) => {
|
|
214
|
+
var _a, _b, _c;
|
|
215
|
+
if (!enforceE164)
|
|
216
|
+
return request;
|
|
217
|
+
const req = common_1.Helper.deepCopy(request);
|
|
218
|
+
// Removes the + to ensure not having duplicates
|
|
219
|
+
const fromUser = (_a = req.message.from.address.uri.user) === null || _a === void 0 ? void 0 : _a.replace("+", "");
|
|
220
|
+
const toUser = (_b = req.message.to.address.uri.user) === null || _b === void 0 ? void 0 : _b.replace("+", "");
|
|
221
|
+
const requestUriUser = (_c = req.message.requestUri.user) === null || _c === void 0 ? void 0 : _c.replace("+", "");
|
|
222
|
+
// Normalizing as e164
|
|
223
|
+
const normalizedTo = (0, phone_1.phone)(`+${toUser}`, { validateMobilePrefix });
|
|
224
|
+
const normalizedFrom = (0, phone_1.phone)(`+${fromUser}`, {
|
|
225
|
+
validateMobilePrefix: true
|
|
226
|
+
});
|
|
227
|
+
const normalizedReqUri = (0, phone_1.phone)(`+${requestUriUser}`, {
|
|
228
|
+
validateMobilePrefix
|
|
229
|
+
});
|
|
230
|
+
// If the normalization worked we overwrite the original values
|
|
231
|
+
if (normalizedFrom.isValid) {
|
|
232
|
+
req.message.from.address.uri.user = normalizedFrom.phoneNumber;
|
|
233
|
+
}
|
|
234
|
+
if (normalizedTo.isValid) {
|
|
235
|
+
req.message.to.address.uri.user = normalizedTo.phoneNumber;
|
|
236
|
+
}
|
|
237
|
+
if (normalizedReqUri.isValid) {
|
|
238
|
+
req.message.requestUri.user = normalizedReqUri.phoneNumber;
|
|
239
|
+
}
|
|
240
|
+
return req;
|
|
241
|
+
};
|
|
242
|
+
exports.enforceE164 = enforceE164;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@routr/processor",
|
|
3
|
-
"version": "2.0.8-alpha.
|
|
3
|
+
"version": "2.0.8-alpha.23",
|
|
4
4
|
"description": "Processor server and API",
|
|
5
5
|
"author": "Pedro Sanders <psanders@fonoster.com>",
|
|
6
6
|
"homepage": "https://github.com/fonoster/routr#readme",
|
|
@@ -23,8 +23,9 @@
|
|
|
23
23
|
"@opentelemetry/sdk-trace-base": "^1.0.4",
|
|
24
24
|
"@opentelemetry/sdk-trace-node": "^1.0.4",
|
|
25
25
|
"@opentelemetry/semantic-conventions": "^1.0.4",
|
|
26
|
-
"@routr/common": "^2.0.8-alpha.
|
|
27
|
-
"fp-ts": "^2.11.8"
|
|
26
|
+
"@routr/common": "^2.0.8-alpha.23",
|
|
27
|
+
"fp-ts": "^2.11.8",
|
|
28
|
+
"phone": "^3.1.32"
|
|
28
29
|
},
|
|
29
30
|
"directories": {
|
|
30
31
|
"src": "src",
|
|
@@ -43,5 +44,5 @@
|
|
|
43
44
|
"bugs": {
|
|
44
45
|
"url": "https://github.com/fonoster/routr/issues"
|
|
45
46
|
},
|
|
46
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "1347b753f0dbdd3bdf423f2691867aa250b768af"
|
|
47
48
|
}
|