topsyde-utils 1.0.6 → 1.0.8
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/README.md +29 -48
- package/dist/application.js +41 -0
- package/dist/application.js.map +1 -0
- package/dist/consts.js +34 -0
- package/dist/consts.js.map +1 -0
- package/dist/enums.js +19 -0
- package/dist/enums.js.map +1 -0
- package/dist/errors.js +46 -0
- package/dist/errors.js.map +1 -0
- package/dist/guards.js +42 -0
- package/dist/guards.js.map +1 -0
- package/dist/index.js +79 -1035
- package/dist/index.js.map +1 -22
- package/dist/initializable.js +309 -0
- package/dist/initializable.js.map +1 -0
- package/dist/lib.js +460 -0
- package/dist/lib.js.map +1 -0
- package/dist/router/index.d.ts +5 -5
- package/dist/router/index.js +30 -0
- package/dist/router/index.js.map +1 -0
- package/dist/router/router.internal.js +47 -0
- package/dist/router/router.internal.js.map +1 -0
- package/dist/router/router.js +43 -0
- package/dist/router/router.js.map +1 -0
- package/dist/router/routes.js +5 -0
- package/dist/router/routes.js.map +1 -0
- package/dist/server/controller.js +55 -0
- package/dist/server/controller.js.map +1 -0
- package/dist/server/index.d.ts +2 -2
- package/dist/server/index.js +26 -0
- package/dist/server/index.js.map +1 -0
- package/dist/singleton.js +142 -0
- package/dist/singleton.js.map +1 -0
- package/dist/throwable.js +70 -0
- package/dist/throwable.js.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/package.json +12 -12
package/dist/lib.js
ADDED
@@ -0,0 +1,460 @@
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
+
}) : function(o, v) {
|
16
|
+
o["default"] = v;
|
17
|
+
});
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
19
|
+
var ownKeys = function(o) {
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
21
|
+
var ar = [];
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
23
|
+
return ar;
|
24
|
+
};
|
25
|
+
return ownKeys(o);
|
26
|
+
};
|
27
|
+
return function (mod) {
|
28
|
+
if (mod && mod.__esModule) return mod;
|
29
|
+
var result = {};
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
31
|
+
__setModuleDefault(result, mod);
|
32
|
+
return result;
|
33
|
+
};
|
34
|
+
})();
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
37
|
+
};
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
39
|
+
exports.Debug = void 0;
|
40
|
+
const fs = __importStar(require("fs"));
|
41
|
+
const path = __importStar(require("path"));
|
42
|
+
const enums_1 = require("./enums");
|
43
|
+
const throwable_1 = __importDefault(require("./throwable"));
|
44
|
+
class Lib {
|
45
|
+
static Log(...args) {
|
46
|
+
const timestamp = new Date().toLocaleTimeString();
|
47
|
+
console.log(`[${timestamp}]:`, ...args);
|
48
|
+
}
|
49
|
+
static LogObject(object, text) {
|
50
|
+
const timestamp = new Date().toLocaleTimeString();
|
51
|
+
console.log(`[${timestamp}]:`, text ?? "", JSON.stringify(object, null, 2));
|
52
|
+
}
|
53
|
+
static Warn(...args) {
|
54
|
+
const timestamp = new Date().toLocaleTimeString();
|
55
|
+
console.error(`[${timestamp}] Handled Error: `, ...args);
|
56
|
+
}
|
57
|
+
static $Log(...args) {
|
58
|
+
const timestamp = new Date().toLocaleTimeString();
|
59
|
+
console.error(`[${timestamp}]`, ...args);
|
60
|
+
}
|
61
|
+
static secondsToMilliseconds(seconds) {
|
62
|
+
return seconds * 1000;
|
63
|
+
}
|
64
|
+
static minutesToMilliseconds(minutes) {
|
65
|
+
return minutes * 60 * 1000;
|
66
|
+
}
|
67
|
+
static hoursToMilliseconds(hours) {
|
68
|
+
return hours * 60 * 60 * 1000;
|
69
|
+
}
|
70
|
+
static GetTimestamp(milliseconds_ago) {
|
71
|
+
const now = new Date();
|
72
|
+
return new Date(now.getTime() - milliseconds_ago);
|
73
|
+
}
|
74
|
+
static GetDateTimestamp(date, format = "DD/MM/YYYY HH:mm", isUTC = false) {
|
75
|
+
if (typeof date === "string") {
|
76
|
+
const formatParts = format.split(/[-\/. :]/);
|
77
|
+
const dateParts = date.split(/[-\/. :]/);
|
78
|
+
let day;
|
79
|
+
let month;
|
80
|
+
let year;
|
81
|
+
let hours = 0;
|
82
|
+
let minutes = 0;
|
83
|
+
formatParts.forEach((part, index) => {
|
84
|
+
switch (part) {
|
85
|
+
case "DD":
|
86
|
+
case "dd":
|
87
|
+
day = parseInt(dateParts[index], 10);
|
88
|
+
break;
|
89
|
+
case "MM":
|
90
|
+
month = parseInt(dateParts[index], 10) - 1; // Months are 0-based in JavaScript Date
|
91
|
+
break;
|
92
|
+
case "YYYY":
|
93
|
+
case "yyyy":
|
94
|
+
year = parseInt(dateParts[index], 10);
|
95
|
+
break;
|
96
|
+
case "HH":
|
97
|
+
case "hh":
|
98
|
+
hours = parseInt(dateParts[index], 10);
|
99
|
+
break;
|
100
|
+
case "mm":
|
101
|
+
minutes = parseInt(dateParts[index], 10);
|
102
|
+
break;
|
103
|
+
}
|
104
|
+
});
|
105
|
+
if (day === undefined || month === undefined || year === undefined) {
|
106
|
+
throw new Error("Invalid date format or date string");
|
107
|
+
}
|
108
|
+
let dateObj;
|
109
|
+
if (isUTC) {
|
110
|
+
dateObj = new Date(Date.UTC(year, month, day, hours, minutes));
|
111
|
+
}
|
112
|
+
else {
|
113
|
+
dateObj = new Date(year, month, day, hours, minutes);
|
114
|
+
}
|
115
|
+
return dateObj.getTime();
|
116
|
+
}
|
117
|
+
else {
|
118
|
+
return date.getTime();
|
119
|
+
}
|
120
|
+
}
|
121
|
+
static calculatePercentage(x, y) {
|
122
|
+
if (y === 0) {
|
123
|
+
throw new Error("The denominator (y) cannot be zero.");
|
124
|
+
}
|
125
|
+
return x / y;
|
126
|
+
}
|
127
|
+
static MYSQLTimestamp() {
|
128
|
+
const now = new Date();
|
129
|
+
const year = now.getFullYear();
|
130
|
+
const month = now.getMonth() + 1;
|
131
|
+
const day = now.getDate();
|
132
|
+
const hours = now.getHours();
|
133
|
+
const minutes = now.getMinutes();
|
134
|
+
const seconds = now.getSeconds();
|
135
|
+
const formattedDate = `${year}-${month.toString().padStart(2, "0")}-${day.toString().padStart(2, "0")}`;
|
136
|
+
const formattedTime = `${hours.toString().padStart(2, "0")}:${minutes.toString().padStart(2, "0")}:${seconds.toString().padStart(2, "0")}`;
|
137
|
+
return `${formattedDate} ${formattedTime}`;
|
138
|
+
}
|
139
|
+
static FormatUnixToDate(unix_time_stamp, in_milliseconds = false) {
|
140
|
+
const date = new Date(unix_time_stamp * (in_milliseconds ? 1 : 1000));
|
141
|
+
return date;
|
142
|
+
}
|
143
|
+
static FormatDate(date, format = "MM/dd/yyyy") {
|
144
|
+
try {
|
145
|
+
const leadingZero = (value) => (value < 10 ? `0${value}` : `${value}`);
|
146
|
+
if (!date)
|
147
|
+
throw new Error("Lib.FormatDate() Exception: Date is required");
|
148
|
+
if (typeof date === "string") {
|
149
|
+
date = new Date(date);
|
150
|
+
}
|
151
|
+
const day = leadingZero(date.getDate());
|
152
|
+
const month = leadingZero(date.getMonth() + 1);
|
153
|
+
const year = date.getFullYear();
|
154
|
+
const hours = leadingZero(date.getHours());
|
155
|
+
const minutes = leadingZero(date.getMinutes());
|
156
|
+
const seconds = leadingZero(date.getSeconds());
|
157
|
+
let result = format
|
158
|
+
.replace(/DD|dd/g, day)
|
159
|
+
.replace(/MM/g, month)
|
160
|
+
.replace(/yyyy|YYYY/g, year.toString());
|
161
|
+
if (format.includes("HH")) {
|
162
|
+
result = result.replace(/HH/g, hours);
|
163
|
+
}
|
164
|
+
if (format.toLowerCase().includes("mm")) {
|
165
|
+
result = result.replace(/mm/g, minutes);
|
166
|
+
}
|
167
|
+
if (format.includes("ss")) {
|
168
|
+
result = result.replace(/ss/g, seconds);
|
169
|
+
}
|
170
|
+
return result;
|
171
|
+
}
|
172
|
+
catch (e) {
|
173
|
+
throw e;
|
174
|
+
}
|
175
|
+
}
|
176
|
+
static DaysBetweenDates(startDate, endDate, format = "MM/dd/yyyy") {
|
177
|
+
if (startDate === null || startDate === undefined || endDate === null || endDate === undefined) {
|
178
|
+
throw new Error("Lib.DaysBetweenDates() Exception: Dates are required" + startDate + " " + endDate);
|
179
|
+
}
|
180
|
+
const start = new Date(this.FormatDate(startDate, format)).getTime();
|
181
|
+
const end = new Date(this.FormatDate(endDate, format)).getTime();
|
182
|
+
const difference = end - start;
|
183
|
+
const daysPassed = difference / (1000 * 3600 * 24);
|
184
|
+
return Math.floor(daysPassed);
|
185
|
+
}
|
186
|
+
static IsPastDate(date, format = "MM/dd/yyyy HH:mm:ss", debug = false, currentDate) {
|
187
|
+
const truncateToSecond = (d) => new Date(Math.floor(d.getTime() / 1000) * 1000);
|
188
|
+
const now = truncateToSecond(currentDate ? (typeof currentDate === "string" ? new Date(currentDate) : currentDate) : new Date());
|
189
|
+
const check = truncateToSecond(typeof date === "string" ? new Date(date) : date);
|
190
|
+
if (debug) {
|
191
|
+
Debug.Log("Now:", this.FormatDate(now, format));
|
192
|
+
Debug.Log("Check:", this.FormatDate(check, format));
|
193
|
+
}
|
194
|
+
return now.getTime() > check.getTime();
|
195
|
+
}
|
196
|
+
static IsPastDateFrom(date, from, format = "MM/dd/yyyy") {
|
197
|
+
const now = this.FormatDate(from, format);
|
198
|
+
const check = this.FormatDate(date, format);
|
199
|
+
return new Date(now).getTime() > new Date(check).getTime();
|
200
|
+
}
|
201
|
+
static addTimeFromDate(date, milliseconds) {
|
202
|
+
const dateObj = new Date(typeof date === "string" ? new Date(date).getTime() : date.getTime() + milliseconds);
|
203
|
+
return dateObj;
|
204
|
+
}
|
205
|
+
static UUID(minLength = 36) {
|
206
|
+
const template = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";
|
207
|
+
let uuid = template.replace(/[xy]/g, function (c) {
|
208
|
+
const r = (Math.random() * 16) | 0, v = c === "x" ? r : (r & 0x3) | 0x8;
|
209
|
+
return v.toString(16);
|
210
|
+
});
|
211
|
+
// If the generated UUID is shorter than the minimum length, pad it with additional random characters
|
212
|
+
while (uuid.length < minLength) {
|
213
|
+
uuid += ((Math.random() * 16) | 0).toString(16);
|
214
|
+
}
|
215
|
+
return uuid.substring(0, minLength);
|
216
|
+
}
|
217
|
+
static Debounce(callback, delay = 500) {
|
218
|
+
let timeout;
|
219
|
+
return (...args) => {
|
220
|
+
clearTimeout(timeout);
|
221
|
+
timeout = setTimeout(() => {
|
222
|
+
return callback(...args);
|
223
|
+
}, delay);
|
224
|
+
};
|
225
|
+
}
|
226
|
+
static IsNil(value) {
|
227
|
+
return value === null || value === undefined;
|
228
|
+
}
|
229
|
+
static IsPrimitive(value) {
|
230
|
+
return this.IsNumber(value) || this.IsString(value) || this.IsBoolean(value);
|
231
|
+
}
|
232
|
+
static EmptyObject(value) {
|
233
|
+
let empty_object = true;
|
234
|
+
if (this.GetType(value) !== "object") {
|
235
|
+
empty_object = false;
|
236
|
+
return empty_object;
|
237
|
+
}
|
238
|
+
if (Object.keys(value).length === 0) {
|
239
|
+
empty_object = true;
|
240
|
+
return empty_object;
|
241
|
+
}
|
242
|
+
for (const k in value) {
|
243
|
+
if (!this.IsNil(value[k]) && value[k] !== "") {
|
244
|
+
empty_object = false;
|
245
|
+
}
|
246
|
+
}
|
247
|
+
return empty_object;
|
248
|
+
}
|
249
|
+
static IsNumpty(value, _objectsOnly = false) {
|
250
|
+
return typeof value === "number" ? false : this.IsNil(value) || this.IsEmpty(value, _objectsOnly);
|
251
|
+
}
|
252
|
+
static IsEmpty(value, _objectsOnly = false) {
|
253
|
+
return ((this.GetType(value) === "array" && value.length === 0 && !_objectsOnly) ||
|
254
|
+
(this.GetType(value) === "object" && this.EmptyObject(value)) ||
|
255
|
+
(typeof value === "string" && value.trim().length === 0));
|
256
|
+
}
|
257
|
+
static IsArray(variable) {
|
258
|
+
return this.GetType(variable) === enums_1.E_IS.ARRAY;
|
259
|
+
}
|
260
|
+
static IsString(variable) {
|
261
|
+
return this.GetType(variable) === enums_1.E_IS.STRING;
|
262
|
+
}
|
263
|
+
static IsNumber(variable) {
|
264
|
+
return this.GetType(variable) === enums_1.E_IS.NUMBER;
|
265
|
+
}
|
266
|
+
static IsObject(variable) {
|
267
|
+
return this.GetType(variable) === enums_1.E_IS.OBJECT;
|
268
|
+
}
|
269
|
+
static IsFunction(variable) {
|
270
|
+
return this.GetType(variable) === enums_1.E_IS.FUNCTION;
|
271
|
+
}
|
272
|
+
static IsRegex(variable) {
|
273
|
+
return this.GetType(variable) === enums_1.E_IS.REGEX;
|
274
|
+
}
|
275
|
+
static IsBoolean(variable) {
|
276
|
+
return this.GetType(variable, true) === enums_1.E_IS.BOOLEAN;
|
277
|
+
}
|
278
|
+
static GetType(value, asTypeOf = false) {
|
279
|
+
if (asTypeOf) {
|
280
|
+
return typeof value;
|
281
|
+
}
|
282
|
+
if (value === "0" || value === "1") {
|
283
|
+
return "number";
|
284
|
+
}
|
285
|
+
if (value === true) {
|
286
|
+
return true;
|
287
|
+
}
|
288
|
+
else if (value === false) {
|
289
|
+
return false;
|
290
|
+
}
|
291
|
+
else if (value === null || value === undefined) {
|
292
|
+
return null;
|
293
|
+
}
|
294
|
+
else if (Array.isArray(value)) {
|
295
|
+
return "array";
|
296
|
+
}
|
297
|
+
else if (value instanceof RegExp) {
|
298
|
+
return "regex";
|
299
|
+
}
|
300
|
+
else if (!isNaN(Number(value))) {
|
301
|
+
return "number";
|
302
|
+
}
|
303
|
+
else if (typeof value === "string") {
|
304
|
+
return "string";
|
305
|
+
}
|
306
|
+
else if ({}.toString.call(value) === "[object Function]" || typeof value === "function") {
|
307
|
+
return "function";
|
308
|
+
}
|
309
|
+
else {
|
310
|
+
return "object";
|
311
|
+
}
|
312
|
+
}
|
313
|
+
static GetProjectRoot(startDir = __dirname, rootReference = "package.json") {
|
314
|
+
let currentDir = startDir;
|
315
|
+
while (!fs.existsSync(path.join(currentDir, rootReference))) {
|
316
|
+
const parentDir = path.resolve(currentDir, "..");
|
317
|
+
if (parentDir === currentDir) {
|
318
|
+
throw new Error("Unable to find project root");
|
319
|
+
}
|
320
|
+
currentDir = parentDir;
|
321
|
+
}
|
322
|
+
return currentDir;
|
323
|
+
}
|
324
|
+
static async RunTaskWithTimeout(task, timeout) {
|
325
|
+
return Promise.race([task(), new Promise((_, reject) => setTimeout(() => reject(new Error("Task timed out")), timeout))]);
|
326
|
+
}
|
327
|
+
static GetFolderPath(folder) {
|
328
|
+
return path.join(this.GetProjectRoot(), folder);
|
329
|
+
}
|
330
|
+
static GetFilePath(folder, file) {
|
331
|
+
return path.join(this.GetFolderPath(folder), file);
|
332
|
+
}
|
333
|
+
static async CreateDirectory(folderToCreate) {
|
334
|
+
const directoryPath = Lib.GetFolderPath(folderToCreate);
|
335
|
+
await fs.promises.access(directoryPath, fs.constants.F_OK).catch(async () => {
|
336
|
+
await fs.promises.mkdir(directoryPath, { recursive: true });
|
337
|
+
});
|
338
|
+
return directoryPath;
|
339
|
+
}
|
340
|
+
static async DeleteDirectory(folderToDelete) {
|
341
|
+
const directoryPath = path.join(this.GetProjectRoot(), folderToDelete);
|
342
|
+
await fs.promises.rm(directoryPath, { recursive: true, force: true });
|
343
|
+
}
|
344
|
+
static async CreateFile(folderPath, filePath, content) {
|
345
|
+
await Lib.CreateDirectory(folderPath);
|
346
|
+
const file = Lib.GetFilePath(folderPath, filePath);
|
347
|
+
await fs.promises.writeFile(file, content, "utf8");
|
348
|
+
}
|
349
|
+
static GetFile(filePathFromRoot) {
|
350
|
+
return fs.createReadStream(filePathFromRoot);
|
351
|
+
}
|
352
|
+
static GetFilesInDirectory(directoryPath) {
|
353
|
+
return fs.readdirSync(directoryPath);
|
354
|
+
}
|
355
|
+
static async DeleteFile(filePathFromRoot) {
|
356
|
+
await fs.promises.unlink(filePathFromRoot);
|
357
|
+
}
|
358
|
+
static Timestamp(log = false) {
|
359
|
+
const currentTime = new Date().toLocaleTimeString();
|
360
|
+
if (log)
|
361
|
+
console.log(`[${currentTime}]`);
|
362
|
+
return currentTime;
|
363
|
+
}
|
364
|
+
static RemoveWhitespace(value) {
|
365
|
+
return value.replace(/\s/g, "");
|
366
|
+
}
|
367
|
+
static msToString(ms) {
|
368
|
+
if (ms === 0)
|
369
|
+
return "0ms"; // Handle zero duration case
|
370
|
+
const seconds = Math.floor(ms / 1000);
|
371
|
+
const minutes = Math.floor(seconds / 60);
|
372
|
+
const hours = Math.floor(minutes / 60);
|
373
|
+
let output = hours > 0 ? `${hours}h ` : "";
|
374
|
+
output += minutes > 0 ? `${minutes % 60}m ` : "";
|
375
|
+
output += seconds % 60 > 0 ? `${seconds % 60}s ` : "";
|
376
|
+
output += ms % 1000 > 0 ? `${(ms % 1000).toFixed(2)}ms` : "";
|
377
|
+
return output.trim();
|
378
|
+
}
|
379
|
+
static FormatPhone(phone_number) {
|
380
|
+
let output = phone_number;
|
381
|
+
//remove all non-digit characters and whitespaces using regex
|
382
|
+
output = output.replace(/\D/g, "");
|
383
|
+
//if phone number doesn't start with + add +
|
384
|
+
if (!output.startsWith("+")) {
|
385
|
+
output = `+${output}`;
|
386
|
+
}
|
387
|
+
return output;
|
388
|
+
}
|
389
|
+
static ToMB(bytes, as_KB = true, decimalPlaces = 2) {
|
390
|
+
const kb = bytes / 1024;
|
391
|
+
return (as_KB ? kb : kb / 1024).toFixed(decimalPlaces);
|
392
|
+
}
|
393
|
+
static ToGB(bytes, as_KB = true, decimalPlaces = 2) {
|
394
|
+
const mb = this.ToMB(bytes, as_KB, decimalPlaces);
|
395
|
+
return (parseInt(mb) / 1024).toFixed(decimalPlaces);
|
396
|
+
}
|
397
|
+
static async RetryHandler(func, retries = 3, ...args) {
|
398
|
+
let attempts = 0;
|
399
|
+
let toThrow;
|
400
|
+
while (attempts < retries) {
|
401
|
+
try {
|
402
|
+
return await func(...args);
|
403
|
+
}
|
404
|
+
catch (e) {
|
405
|
+
attempts++;
|
406
|
+
toThrow = e;
|
407
|
+
if (attempts <= retries && !throwable_1.default.IsThrowable(e)) {
|
408
|
+
Lib.$Log(`Attempt ${attempts} failed. Retrying...(${func.name})`);
|
409
|
+
if (attempts == 1)
|
410
|
+
Lib.Warn(toThrow);
|
411
|
+
// Lib.Warn(toThrow, { hint: `Attempt ${attempts} failed. Retrying...(${func.name})`, data: JSON.stringify(args) });
|
412
|
+
// Wait for 1 second before retrying
|
413
|
+
await new Promise((resolve) => setTimeout(resolve, 1000));
|
414
|
+
}
|
415
|
+
}
|
416
|
+
}
|
417
|
+
throw toThrow;
|
418
|
+
}
|
419
|
+
static Difference(x, y) {
|
420
|
+
return x.filter((x) => !y.includes(x));
|
421
|
+
}
|
422
|
+
static async ReadFileContent(filePath) {
|
423
|
+
return fs.promises.readFile(filePath, "utf8");
|
424
|
+
}
|
425
|
+
static async measureExecutionTime(func, ...args) {
|
426
|
+
const start = performance.now();
|
427
|
+
const result = await func(...args);
|
428
|
+
const end = performance.now();
|
429
|
+
return { result, time: this.msToString(end - start) };
|
430
|
+
}
|
431
|
+
static ToCamelCase(str) {
|
432
|
+
return str.replace(/(?:^\w|[A-Z]|\b\w)/g, (word, index) => (index === 0 ? word.toLowerCase() : word.toUpperCase())).replace(/\s+/g, "");
|
433
|
+
}
|
434
|
+
static ToSnakeCase(str) {
|
435
|
+
return str.replace(/([a-z])([A-Z])/g, "$1_$2").toLowerCase();
|
436
|
+
}
|
437
|
+
static ToKebebCase(str) {
|
438
|
+
return str.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
|
439
|
+
}
|
440
|
+
}
|
441
|
+
exports.default = Lib;
|
442
|
+
class Debug {
|
443
|
+
static Log(...args) {
|
444
|
+
if (process.env.NODE_ENV === "production")
|
445
|
+
return;
|
446
|
+
Lib.Log(...args);
|
447
|
+
}
|
448
|
+
static $Log(...args) {
|
449
|
+
if (process.env.NODE_ENV === "production")
|
450
|
+
return;
|
451
|
+
Lib.$Log(...args);
|
452
|
+
}
|
453
|
+
static LogObject(object, text) {
|
454
|
+
if (process.env.NODE_ENV === "production")
|
455
|
+
return;
|
456
|
+
Lib.LogObject(object, text);
|
457
|
+
}
|
458
|
+
}
|
459
|
+
exports.Debug = Debug;
|
460
|
+
//# sourceMappingURL=lib.js.map
|
package/dist/lib.js.map
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"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"}
|
package/dist/router/index.d.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
export * from
|
2
|
-
export * from
|
3
|
-
export { default as Router } from
|
4
|
-
export * from
|
5
|
-
export { default as Router_internal } from
|
1
|
+
export * from './routes';
|
2
|
+
export * from './router';
|
3
|
+
export { default as Router } from './router';
|
4
|
+
export * from './router.internal';
|
5
|
+
export { default as Router_internal } from './router.internal';
|
@@ -0,0 +1,30 @@
|
|
1
|
+
"use strict";
|
2
|
+
// This file is auto-generated by scripts/generate-indexes.sh
|
3
|
+
// Do not edit this file directly
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
5
|
+
if (k2 === undefined) k2 = k;
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
9
|
+
}
|
10
|
+
Object.defineProperty(o, k2, desc);
|
11
|
+
}) : (function(o, m, k, k2) {
|
12
|
+
if (k2 === undefined) k2 = k;
|
13
|
+
o[k2] = m[k];
|
14
|
+
}));
|
15
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
16
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
17
|
+
};
|
18
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
19
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
20
|
+
};
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
22
|
+
exports.Router_internal = exports.Router = void 0;
|
23
|
+
__exportStar(require("./routes"), exports);
|
24
|
+
__exportStar(require("./router"), exports);
|
25
|
+
var router_1 = require("./router");
|
26
|
+
Object.defineProperty(exports, "Router", { enumerable: true, get: function () { return __importDefault(router_1).default; } });
|
27
|
+
__exportStar(require("./router.internal"), exports);
|
28
|
+
var router_internal_1 = require("./router.internal");
|
29
|
+
Object.defineProperty(exports, "Router_internal", { enumerable: true, get: function () { return __importDefault(router_internal_1).default; } });
|
30
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":";AAAA,6DAA6D;AAC7D,iCAAiC;;;;;;;;;;;;;;;;;;;;AAEjC,2CAAyB;AACzB,2CAAyB;AACzB,mCAA6C;AAApC,iHAAA,OAAO,OAAU;AAC1B,oDAAkC;AAClC,qDAA+D;AAAtD,mIAAA,OAAO,OAAmB"}
|
@@ -0,0 +1,47 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const __1 = require("..");
|
4
|
+
const errors_1 = require("../errors");
|
5
|
+
const lib_1 = require("../lib");
|
6
|
+
class Router_Internal {
|
7
|
+
constructor(routes) {
|
8
|
+
this.registry = new Map();
|
9
|
+
this.routes = routes ?? {};
|
10
|
+
}
|
11
|
+
async post(req) {
|
12
|
+
return await this.handleRequest(req);
|
13
|
+
}
|
14
|
+
async get(req) {
|
15
|
+
return await this.handleRequest(req);
|
16
|
+
}
|
17
|
+
async handleRequest(request) {
|
18
|
+
const path = this.getPath(request);
|
19
|
+
const output = await this.resolve(path).call(request);
|
20
|
+
return output;
|
21
|
+
}
|
22
|
+
getPath(request) {
|
23
|
+
return new URL(request.url).pathname;
|
24
|
+
}
|
25
|
+
resolve(path) {
|
26
|
+
const controllerKey = path.split("/")[1];
|
27
|
+
return this.register(controllerKey, () => this.controllerFactory(controllerKey));
|
28
|
+
}
|
29
|
+
register(controllerKey, factory) {
|
30
|
+
if (!this.registry.has(controllerKey)) {
|
31
|
+
this.registry.set(controllerKey, factory());
|
32
|
+
lib_1.Debug.Log(`Caching controller: /${controllerKey}`);
|
33
|
+
}
|
34
|
+
return this.registry.get(controllerKey);
|
35
|
+
}
|
36
|
+
setRoutes(routes) {
|
37
|
+
this.routes = routes;
|
38
|
+
}
|
39
|
+
controllerFactory(controllerKey) {
|
40
|
+
if (!(controllerKey in this.routes))
|
41
|
+
throw new __1.Throwable(`${errors_1.ERROR_CODE.INVALID_CONTROLLER}: ${controllerKey}`, { logError: false });
|
42
|
+
const ControllerClass = this.routes[controllerKey];
|
43
|
+
return new ControllerClass();
|
44
|
+
}
|
45
|
+
}
|
46
|
+
exports.default = Router_Internal;
|
47
|
+
//# sourceMappingURL=router.internal.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"router.internal.js","sourceRoot":"","sources":["../../src/router/router.internal.ts"],"names":[],"mappings":";;AAAA,0BAA+B;AAC/B,sCAAuC;AACvC,gCAA+B;AAI/B,MAAM,eAAe;IAIpB,YAAY,MAAe;QAHnB,aAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;QAIhD,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,IAAI,CAAI,GAAY;QACzB,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,GAAY;QACxB,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAEO,KAAK,CAAC,aAAa,CAAI,OAAgB;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAI,OAAO,CAAC,CAAC;QACzD,OAAO,MAAM,CAAC;IACf,CAAC;IAEO,OAAO,CAAC,OAAgB;QAC/B,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;IACtC,CAAC;IAEO,OAAO,CAAC,IAAY;QAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,CAAC;IAClF,CAAC;IAEO,QAAQ,CAAC,aAAqB,EAAE,OAAyB;QAChE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC;YAC5C,WAAK,CAAC,GAAG,CAAC,wBAAwB,aAAa,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAe,CAAC;IACvD,CAAC;IAEM,SAAS,CAAC,MAAc;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;IAEO,iBAAiB,CAAC,aAAqB;QAC9C,IAAI,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,aAAS,CAAC,GAAG,mBAAU,CAAC,kBAAkB,KAAK,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAEpI,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,aAAyC,CAAC,CAAC;QAE/E,OAAO,IAAI,eAAe,EAAE,CAAC;IAC9B,CAAC;CACD;AAED,kBAAe,eAAe,CAAC"}
|
@@ -0,0 +1,43 @@
|
|
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
|
+
const errors_1 = require("../errors");
|
7
|
+
const guards_1 = __importDefault(require("../guards"));
|
8
|
+
const singleton_1 = __importDefault(require("../singleton"));
|
9
|
+
const router_internal_1 = __importDefault(require("./router.internal"));
|
10
|
+
class Router extends singleton_1.default {
|
11
|
+
constructor(routes) {
|
12
|
+
super();
|
13
|
+
this.internal = new router_internal_1.default(routes);
|
14
|
+
}
|
15
|
+
setRoutes(routes) {
|
16
|
+
this.internal.setRoutes(routes);
|
17
|
+
}
|
18
|
+
static async Call(request) {
|
19
|
+
if (guards_1.default.IsNil(request))
|
20
|
+
throw errors_1.ERROR_CODE.NO_REQUEST;
|
21
|
+
const methods = this.getMethodMap();
|
22
|
+
const method = methods[request.method];
|
23
|
+
if (guards_1.default.IsNil(method))
|
24
|
+
throw errors_1.ERROR_CODE.INVALID_METHOD;
|
25
|
+
return await method(request);
|
26
|
+
}
|
27
|
+
static SetRoutes(routes) {
|
28
|
+
Router.GetInstance().setRoutes(routes);
|
29
|
+
}
|
30
|
+
static getMethodMap() {
|
31
|
+
const router = Router.GetInstance();
|
32
|
+
return {
|
33
|
+
GET: async (req) => await router.internal.get(req),
|
34
|
+
POST: async (req) => await router.internal.post(req),
|
35
|
+
};
|
36
|
+
}
|
37
|
+
static GetQueryParams(request) {
|
38
|
+
const url = new URL(request.url);
|
39
|
+
return url.searchParams;
|
40
|
+
}
|
41
|
+
}
|
42
|
+
exports.default = Router;
|
43
|
+
//# sourceMappingURL=router.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/router/router.ts"],"names":[],"mappings":";;;;;AAAA,sCAAuC;AACvC,uDAA+B;AAC/B,6DAAqC;AACrC,wEAAgD;AAOhD,MAAM,MAAO,SAAQ,mBAAS;IAG7B,YAAmB,MAAe;QACjC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAG,IAAI,yBAAe,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IAEO,SAAS,CAAC,MAAc;QAC/B,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAI,OAAgB;QAC3C,IAAI,gBAAM,CAAC,KAAK,CAAC,OAAO,CAAC;YAAE,MAAM,mBAAU,CAAC,UAAU,CAAC;QACvD,MAAM,OAAO,GAAiB,IAAI,CAAC,YAAY,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAEvC,IAAI,gBAAM,CAAC,KAAK,CAAC,MAAM,CAAC;YAAE,MAAM,mBAAU,CAAC,cAAc,CAAC;QAE1D,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAEM,MAAM,CAAC,SAAS,CAAC,MAAc;QACrC,MAAM,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAEO,MAAM,CAAC,YAAY;QAC1B,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QACpC,OAAO;YACN,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;YAClD,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC;SACpD,CAAC;IACH,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,OAAgB;QAC5C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjC,OAAO,GAAG,CAAC,YAAY,CAAC;IACzB,CAAC;CACD;AAED,kBAAe,MAAM,CAAC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/router/routes.ts"],"names":[],"mappings":";;;AAMa,QAAA,MAAM,GAAW,EAAE,CAAC"}
|