express-ext 0.3.3 → 0.3.4
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/lib/index.js +52 -0
- package/package.json +1 -1
- package/src/index.ts +50 -0
package/lib/index.js
CHANGED
|
@@ -346,3 +346,55 @@ function toMap(errors) {
|
|
|
346
346
|
return errorMap;
|
|
347
347
|
}
|
|
348
348
|
exports.toMap = toMap;
|
|
349
|
+
var map = {
|
|
350
|
+
'&': '&',
|
|
351
|
+
'<': '<',
|
|
352
|
+
'>': '>',
|
|
353
|
+
'"': '"',
|
|
354
|
+
"'": ''',
|
|
355
|
+
'`': '`',
|
|
356
|
+
};
|
|
357
|
+
function escapeHtml(input) {
|
|
358
|
+
return input.replace(/[&<>"'`]/g, function (char) {
|
|
359
|
+
return map[char];
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
var s = 'string';
|
|
363
|
+
var o = 'object';
|
|
364
|
+
function escapeHTML(obj) {
|
|
365
|
+
if (!obj || typeof obj !== s) {
|
|
366
|
+
return obj;
|
|
367
|
+
}
|
|
368
|
+
var keys = Object.keys(obj);
|
|
369
|
+
for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
|
|
370
|
+
var key = keys_1[_i];
|
|
371
|
+
var v = obj[key];
|
|
372
|
+
if (typeof v === s) {
|
|
373
|
+
obj[key] = escapeHtml(v);
|
|
374
|
+
} else if (Array.isArray(v) && v.length > 0) {
|
|
375
|
+
var v1 = v[0];
|
|
376
|
+
if (typeof v1 === o && !(v1 instanceof Date)) {
|
|
377
|
+
for (var _a = 0, v_1 = v; _a < v_1.length; _a++) {
|
|
378
|
+
var item = v_1[_a];
|
|
379
|
+
escapeHTML(item);
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
} else if (typeof v === o && !(v instanceof Date)) {
|
|
383
|
+
escapeHTML(obj[key]);
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
return obj;
|
|
387
|
+
}
|
|
388
|
+
function escapeArray(arrs) {
|
|
389
|
+
if (!arrs) {
|
|
390
|
+
return arrs;
|
|
391
|
+
}
|
|
392
|
+
if (arrs.length > 0) {
|
|
393
|
+
for (var _i = 0, arrs_1 = arrs; _i < arrs_1.length; _i++) {
|
|
394
|
+
var obj = arrs_1[_i];
|
|
395
|
+
escapeHTML(obj);
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
|
+
return arrs;
|
|
399
|
+
}
|
|
400
|
+
exports.escapeArray = escapeArray;
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -8,6 +8,7 @@ import { LoadSearchController } from './LoadSearchController';
|
|
|
8
8
|
import { LogController } from './LogController';
|
|
9
9
|
import { Controller, Service } from './LowCodeController';
|
|
10
10
|
import { ErrorMessage } from './metadata';
|
|
11
|
+
import { StringMap } from './resources';
|
|
11
12
|
import { SearchController } from './SearchController';
|
|
12
13
|
|
|
13
14
|
export { HealthController as HealthHandler, LoadController as LoadHandler, LogController as LogHandler, LoadController as ViewHandler };
|
|
@@ -331,3 +332,52 @@ export function toMap(errors: ErrorMessage[]): ErrorMap {
|
|
|
331
332
|
}
|
|
332
333
|
return errorMap;
|
|
333
334
|
}
|
|
335
|
+
const map: StringMap = {
|
|
336
|
+
'&': '&',
|
|
337
|
+
'<': '<',
|
|
338
|
+
'>': '>',
|
|
339
|
+
'"': '"',
|
|
340
|
+
"'": ''',
|
|
341
|
+
'`': '`',
|
|
342
|
+
};
|
|
343
|
+
function escapeHtml(input: string): string {
|
|
344
|
+
return input.replace(/[&<>"'`]/g, function (char) {
|
|
345
|
+
return map[char];
|
|
346
|
+
});
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
const s = 'string';
|
|
350
|
+
const o = 'object';
|
|
351
|
+
function escapeHTML(obj: any): any {
|
|
352
|
+
if (!obj || typeof obj !== s) {
|
|
353
|
+
return obj;
|
|
354
|
+
}
|
|
355
|
+
const keys = Object.keys(obj);
|
|
356
|
+
for (const key of keys) {
|
|
357
|
+
const v = obj[key];
|
|
358
|
+
if (typeof v === s) {
|
|
359
|
+
obj[key] = escapeHtml(v);
|
|
360
|
+
} else if (Array.isArray(v) && v.length > 0) {
|
|
361
|
+
const v1 = v[0];
|
|
362
|
+
if (typeof v1 === o && !(v1 instanceof Date)) {
|
|
363
|
+
for (const item of v) {
|
|
364
|
+
escapeHTML(item);
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
} else if (typeof v === o && !(v instanceof Date)) {
|
|
368
|
+
escapeHTML(obj[key]);
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
return obj;
|
|
372
|
+
}
|
|
373
|
+
export function escapeArray<T>(arrs: T[]): T[] {
|
|
374
|
+
if (!arrs) {
|
|
375
|
+
return arrs;
|
|
376
|
+
}
|
|
377
|
+
if (arrs.length > 0) {
|
|
378
|
+
for (const obj of arrs) {
|
|
379
|
+
escapeHTML(obj);
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
return arrs;
|
|
383
|
+
}
|