test-entity-library-asm 1.6.9 → 1.7.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.
- package/dist/index.d.ts +3 -0
- package/dist/index.js +27 -9
- package/package.json +1 -1
- package/src/index.ts +34 -10
package/dist/index.d.ts
CHANGED
|
@@ -2,3 +2,6 @@ import { DataSource } from 'typeorm';
|
|
|
2
2
|
export declare function createDataBaseSource(): DataSource;
|
|
3
3
|
export declare function showEntity(entityName: string): Promise<any>;
|
|
4
4
|
export declare function callStoredProcedure(storedProcedure: any, elements: any): Promise<any>;
|
|
5
|
+
import { NextFunction, Request, Response } from 'express';
|
|
6
|
+
export declare function timezoneMiddleware(req: Request, res: Response, next: NextFunction): void;
|
|
7
|
+
export declare function getTimeZone(): string;
|
package/dist/index.js
CHANGED
|
@@ -36,11 +36,10 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.callStoredProcedure = exports.showEntity = exports.createDataBaseSource = void 0;
|
|
39
|
+
exports.getTimeZone = exports.timezoneMiddleware = exports.callStoredProcedure = exports.showEntity = exports.createDataBaseSource = void 0;
|
|
40
40
|
var dotenv_1 = require("dotenv");
|
|
41
41
|
var path_1 = require("path");
|
|
42
42
|
var typeorm_1 = require("typeorm");
|
|
43
|
-
var timezoneMiddleware_1 = require("./middlewares/timezoneMiddleware");
|
|
44
43
|
var connection = null;
|
|
45
44
|
// DOCUMENTATION: Función para crear la conexión de la base de datos
|
|
46
45
|
// AUTHOR: jgomezp97@gmail.com
|
|
@@ -119,10 +118,29 @@ function callStoredProcedure(storedProcedure, elements) {
|
|
|
119
118
|
});
|
|
120
119
|
}
|
|
121
120
|
exports.callStoredProcedure = callStoredProcedure;
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
}
|
|
121
|
+
var async_hooks_1 = require("async_hooks");
|
|
122
|
+
var asyncLocalStorage = new async_hooks_1.AsyncLocalStorage();
|
|
123
|
+
function timezoneMiddleware(req, res, next) {
|
|
124
|
+
var userTimeZone = req.headers['user-timezone'];
|
|
125
|
+
if (Array.isArray(userTimeZone)) {
|
|
126
|
+
userTimeZone = userTimeZone[0];
|
|
127
|
+
}
|
|
128
|
+
userTimeZone = userTimeZone || 'UTC';
|
|
129
|
+
asyncLocalStorage.run(new Map([['timezone', userTimeZone]]), function () {
|
|
130
|
+
next();
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
exports.timezoneMiddleware = timezoneMiddleware;
|
|
134
|
+
function getTimeZone() {
|
|
135
|
+
var _a;
|
|
136
|
+
var store = asyncLocalStorage.getStore();
|
|
137
|
+
return (_a = store === null || store === void 0 ? void 0 : store.get('timezone')) !== null && _a !== void 0 ? _a : 'UTC';
|
|
138
|
+
}
|
|
139
|
+
exports.getTimeZone = getTimeZone;
|
|
140
|
+
// module.exports = {
|
|
141
|
+
// createDataBaseSource,
|
|
142
|
+
// showEntity,
|
|
143
|
+
// callStoredProcedure,
|
|
144
|
+
// timezoneMiddleware,
|
|
145
|
+
// getTimeZone,
|
|
146
|
+
// }
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -2,10 +2,6 @@ import { config } from 'dotenv'
|
|
|
2
2
|
import { resolve } from 'path'
|
|
3
3
|
import { DataSource } from 'typeorm'
|
|
4
4
|
import { IType } from './interfaces'
|
|
5
|
-
import {
|
|
6
|
-
getTimeZone,
|
|
7
|
-
timezoneMiddleware,
|
|
8
|
-
} from './middlewares/timezoneMiddleware'
|
|
9
5
|
|
|
10
6
|
let connection: DataSource | null = null
|
|
11
7
|
|
|
@@ -69,10 +65,38 @@ export async function callStoredProcedure(storedProcedure: any, elements: any) {
|
|
|
69
65
|
}
|
|
70
66
|
}
|
|
71
67
|
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
68
|
+
import { AsyncLocalStorage } from 'async_hooks'
|
|
69
|
+
import { NextFunction, Request, Response } from 'express'
|
|
70
|
+
|
|
71
|
+
const asyncLocalStorage = new AsyncLocalStorage<Map<string, string>>()
|
|
72
|
+
|
|
73
|
+
export function timezoneMiddleware(
|
|
74
|
+
req: Request,
|
|
75
|
+
res: Response,
|
|
76
|
+
next: NextFunction
|
|
77
|
+
) {
|
|
78
|
+
let userTimeZone = req.headers['user-timezone']
|
|
79
|
+
|
|
80
|
+
if (Array.isArray(userTimeZone)) {
|
|
81
|
+
userTimeZone = userTimeZone[0]
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
userTimeZone = userTimeZone || 'UTC'
|
|
85
|
+
|
|
86
|
+
asyncLocalStorage.run(new Map([['timezone', userTimeZone]]), () => {
|
|
87
|
+
next()
|
|
88
|
+
})
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
export function getTimeZone(): string {
|
|
92
|
+
const store = asyncLocalStorage.getStore()
|
|
93
|
+
return store?.get('timezone') ?? 'UTC'
|
|
78
94
|
}
|
|
95
|
+
|
|
96
|
+
// module.exports = {
|
|
97
|
+
// createDataBaseSource,
|
|
98
|
+
// showEntity,
|
|
99
|
+
// callStoredProcedure,
|
|
100
|
+
// timezoneMiddleware,
|
|
101
|
+
// getTimeZone,
|
|
102
|
+
// }
|