@mrxsys/mrx-core 2.11.0-2-and-276-20251029 → 2.11.0-3-and-276-20251029

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 (146) hide show
  1. package/dist/chunk-0d0zd2yg.js +8 -0
  2. package/dist/chunk-12qzn7jw.js +7 -0
  3. package/dist/chunk-441xs5k1.js +53 -0
  4. package/dist/chunk-4v86f7gp.js +59 -0
  5. package/dist/chunk-6w9ja96e.js +9 -0
  6. package/dist/chunk-7t524zqh.js +26 -0
  7. package/dist/chunk-8tffnbpn.js +7 -0
  8. package/dist/chunk-9cgzhc50.js +15 -0
  9. package/dist/chunk-9d3zvgp6.js +9 -0
  10. package/dist/chunk-9dzsj7f2.js +23 -0
  11. package/dist/chunk-9r5anep5.js +11 -0
  12. package/dist/chunk-afd82epa.js +201 -0
  13. package/dist/chunk-afyz8rg5.js +209 -0
  14. package/dist/chunk-dre2fgj0.js +7 -0
  15. package/dist/chunk-e30paw8a.js +101 -0
  16. package/dist/chunk-eeb7yskp.js +61 -0
  17. package/dist/chunk-fs3wm3p4.js +32 -0
  18. package/dist/chunk-grfyngq0.js +39 -0
  19. package/dist/chunk-gtn1kn0z.js +79 -0
  20. package/dist/chunk-jksb9ers.js +7 -0
  21. package/dist/chunk-m3grz32t.js +27 -0
  22. package/dist/chunk-mvrxngm7.js +41 -0
  23. package/dist/chunk-n0n14mf8.js +7 -0
  24. package/dist/chunk-p14h6jfs.js +365 -0
  25. package/dist/chunk-pjv1ekwr.js +284 -0
  26. package/dist/chunk-rz5p4j3p.js +13 -0
  27. package/dist/chunk-spnh9dzk.js +10 -0
  28. package/dist/chunk-sqts8vyk.js +60 -0
  29. package/dist/chunk-w7h898m3.js +14 -0
  30. package/dist/chunk-xhhj1gvj.js +9 -0
  31. package/dist/chunk-z0ct35ft.js +8 -0
  32. package/dist/errors/enums/index.js +7 -0
  33. package/dist/errors/index.js +12 -0
  34. package/dist/errors/utils/index.js +16 -0
  35. package/dist/errors/utils/is-nowarajs-error.ts.d.ts +2 -2
  36. package/dist/modules/data/enums/index.js +7 -0
  37. package/dist/modules/data/index.js +17 -0
  38. package/dist/modules/data/transformers/camel-case.d.ts +2 -2
  39. package/dist/modules/data/transformers/index.js +32 -0
  40. package/dist/modules/data/transformers/kebab-case.d.ts +2 -2
  41. package/dist/modules/data/transformers/pascal-case.d.ts +2 -2
  42. package/dist/modules/data/transformers/snake-case.d.ts +2 -2
  43. package/dist/modules/data/types/index.js +1 -0
  44. package/dist/modules/data/types/transform-object-keys.d.ts +4 -4
  45. package/dist/modules/database/enums/index.js +9 -0
  46. package/dist/modules/database/events/index.js +1 -0
  47. package/dist/modules/database/events/mssql-event-map.d.ts +1 -1
  48. package/dist/modules/database/events/table-event-map.d.ts +1 -1
  49. package/dist/modules/database/index.js +16 -0
  50. package/dist/modules/database/mssql.d.ts +2 -2
  51. package/dist/modules/database/table.d.ts +2 -2
  52. package/dist/modules/database/types/index.js +1 -0
  53. package/dist/modules/elysia/cache/cache.d.ts +1 -1
  54. package/dist/modules/elysia/cache/index.js +90 -0
  55. package/dist/modules/elysia/cache/types/index.js +1 -0
  56. package/dist/modules/elysia/crud/crud.d.ts +2 -2
  57. package/dist/modules/elysia/crud/enums/index.js +7 -0
  58. package/dist/modules/elysia/crud/index.js +153 -0
  59. package/dist/modules/elysia/crud/operations/count.d.ts +3 -3
  60. package/dist/modules/elysia/crud/operations/delete.d.ts +3 -3
  61. package/dist/modules/elysia/crud/operations/deleteOne.d.ts +3 -3
  62. package/dist/modules/elysia/crud/operations/find.d.ts +3 -3
  63. package/dist/modules/elysia/crud/operations/findOne.d.ts +3 -3
  64. package/dist/modules/elysia/crud/operations/index.js +34 -0
  65. package/dist/modules/elysia/crud/operations/insert.d.ts +3 -3
  66. package/dist/modules/elysia/crud/operations/update.d.ts +3 -3
  67. package/dist/modules/elysia/crud/operations/updateOne.d.ts +3 -3
  68. package/dist/modules/elysia/crud/operations/utils/get-db-injection.d.ts +1 -1
  69. package/dist/modules/elysia/crud/types/crud-options.d.ts +1 -1
  70. package/dist/modules/elysia/crud/types/crud-schema-models-type.d.ts +9 -9
  71. package/dist/modules/elysia/crud/types/delete-schema.d.ts +2 -2
  72. package/dist/modules/elysia/crud/types/find-schema.d.ts +3 -3
  73. package/dist/modules/elysia/crud/types/index.js +1 -0
  74. package/dist/modules/elysia/crud/types/insert-schema.d.ts +1 -1
  75. package/dist/modules/elysia/crud/types/properties-schema.d.ts +1 -1
  76. package/dist/modules/elysia/crud/types/response-200-schema.d.ts +1 -1
  77. package/dist/modules/elysia/crud/types/update-schema.d.ts +2 -2
  78. package/dist/modules/elysia/crud/utils/create-adaptive-where-clause-schema.d.ts +1 -1
  79. package/dist/modules/elysia/crud/utils/create-count-response-200-schema.d.ts +1 -1
  80. package/dist/modules/elysia/crud/utils/create-count-schema.d.ts +1 -1
  81. package/dist/modules/elysia/crud/utils/create-delete-schema.d.ts +1 -1
  82. package/dist/modules/elysia/crud/utils/create-filters-schema.d.ts +1 -1
  83. package/dist/modules/elysia/crud/utils/create-find-schema.d.ts +1 -1
  84. package/dist/modules/elysia/crud/utils/create-id-param-schema.d.ts +1 -1
  85. package/dist/modules/elysia/crud/utils/create-insert-schema.d.ts +1 -1
  86. package/dist/modules/elysia/crud/utils/create-order-schema.d.ts +1 -1
  87. package/dist/modules/elysia/crud/utils/create-properties-schema.d.ts +1 -1
  88. package/dist/modules/elysia/crud/utils/create-q-schema.d.ts +1 -1
  89. package/dist/modules/elysia/crud/utils/create-response-200-schema.d.ts +1 -1
  90. package/dist/modules/elysia/crud/utils/create-selected-fields-schema.d.ts +1 -1
  91. package/dist/modules/elysia/crud/utils/create-update-one-schema.d.ts +1 -1
  92. package/dist/modules/elysia/crud/utils/create-update-schema.d.ts +1 -1
  93. package/dist/modules/elysia/crud/utils/index.js +41 -0
  94. package/dist/modules/elysia/db-resolver/db-resolver.d.ts +2 -2
  95. package/dist/modules/elysia/db-resolver/enums/index.js +7 -0
  96. package/dist/modules/elysia/db-resolver/index.js +18 -0
  97. package/dist/modules/elysia/error/enums/index.js +7 -0
  98. package/dist/modules/elysia/error/error.d.ts +51 -0
  99. package/dist/modules/elysia/error/index.js +76 -0
  100. package/dist/modules/elysia/microservice/enums/index.js +7 -0
  101. package/dist/modules/elysia/microservice/index.js +100 -0
  102. package/dist/modules/elysia/rate-limit/enums/index.js +7 -0
  103. package/dist/modules/elysia/rate-limit/index.js +81 -0
  104. package/dist/modules/elysia/rate-limit/rate-limit.d.ts +1 -1
  105. package/dist/modules/elysia/rate-limit/types/index.js +1 -0
  106. package/dist/modules/jwt/enums/index.js +11 -0
  107. package/dist/modules/jwt/index.js +51 -0
  108. package/dist/modules/jwt/utils/index.js +9 -0
  109. package/dist/modules/kv-store/bun-redis/bun-redis-store.d.ts +1 -1
  110. package/dist/modules/kv-store/bun-redis/index.js +84 -0
  111. package/dist/modules/kv-store/enums/index.js +7 -0
  112. package/dist/modules/kv-store/ioredis/index.js +86 -0
  113. package/dist/modules/kv-store/ioredis/ioredis-store.d.ts +1 -1
  114. package/dist/modules/kv-store/memory/index.js +9 -0
  115. package/dist/modules/kv-store/memory/memory-store.d.ts +1 -1
  116. package/dist/modules/kv-store/types/index.js +1 -0
  117. package/dist/modules/logger/enums/index.js +7 -0
  118. package/dist/modules/logger/events/index.js +1 -0
  119. package/dist/modules/logger/events/logger-events.d.ts +1 -1
  120. package/dist/modules/logger/index.js +208 -0
  121. package/dist/modules/logger/logger.d.ts +1 -1
  122. package/dist/modules/logger/sinks/console-logger.d.ts +2 -2
  123. package/dist/modules/logger/sinks/devnull-logger.d.ts +1 -1
  124. package/dist/modules/logger/sinks/file-logger/file-logger.d.ts +2 -2
  125. package/dist/modules/logger/sinks/index.js +66 -0
  126. package/dist/modules/logger/types/index.js +1 -0
  127. package/dist/modules/mailer/enums/index.js +7 -0
  128. package/dist/modules/mailer/index.js +55 -0
  129. package/dist/modules/mailer/types/index.js +1 -0
  130. package/dist/modules/repository/index.js +12 -0
  131. package/dist/modules/repository/repository.d.ts +2 -2
  132. package/dist/modules/repository/types/index.js +1 -0
  133. package/dist/modules/repository/types/query-options.d.ts +1 -1
  134. package/dist/modules/singleton-manager/enums/index.js +7 -0
  135. package/dist/modules/singleton-manager/index.js +9 -0
  136. package/dist/modules/totp/enums/index.js +7 -0
  137. package/dist/modules/totp/index.js +104 -0
  138. package/dist/modules/totp/types/index.js +1 -0
  139. package/dist/modules/totp/utils/index.js +76 -0
  140. package/dist/modules/typed-event-emitter/index.js +7 -0
  141. package/dist/modules/typed-event-emitter/types/index.js +1 -0
  142. package/dist/shared/enums/index.js +7 -0
  143. package/dist/shared/types/index.js +1 -0
  144. package/dist/shared/utils/flatten.d.ts +1 -1
  145. package/dist/shared/utils/index.js +30 -0
  146. package/package.json +1 -1
@@ -0,0 +1,101 @@
1
+ // @bun
2
+ import {
3
+ KV_STORE_ERROR_KEYS
4
+ } from "./chunk-xhhj1gvj.js";
5
+ import {
6
+ BaseError
7
+ } from "./chunk-9cgzhc50.js";
8
+
9
+ // source/modules/kv-store/memory/memory-store.ts
10
+ class MemoryStore {
11
+ _store = new Map;
12
+ _cleanupInterval;
13
+ _cleanupTimer = null;
14
+ constructor(cleanupIntervalMs) {
15
+ this._cleanupInterval = cleanupIntervalMs ?? 300000;
16
+ this._startCleanup();
17
+ }
18
+ get(key) {
19
+ const entry = this._store.get(key);
20
+ if (!entry)
21
+ return null;
22
+ const now = Date.now();
23
+ if (now > entry.expiresAt && entry.expiresAt !== -1) {
24
+ this._store.delete(key);
25
+ return null;
26
+ }
27
+ return entry.value;
28
+ }
29
+ set(key, value, ttlSec) {
30
+ const expiresAt = ttlSec ? Date.now() + ttlSec * 1000 : -1;
31
+ this._store.set(key, { value, expiresAt });
32
+ }
33
+ increment(key, amount = 1) {
34
+ const current = this.get(key);
35
+ const entry = this._store.get(key);
36
+ if (current !== null && typeof current !== "number")
37
+ throw new BaseError(KV_STORE_ERROR_KEYS.NOT_INTEGER);
38
+ const currentValue = current ?? 0;
39
+ const newValue = currentValue + amount;
40
+ const expiresAt = entry ? entry.expiresAt : -1;
41
+ this._store.set(key, { value: newValue, expiresAt });
42
+ return newValue;
43
+ }
44
+ decrement(key, amount = 1) {
45
+ const current = this.get(key);
46
+ const entry = this._store.get(key);
47
+ if (current !== null && typeof current !== "number")
48
+ throw new BaseError(KV_STORE_ERROR_KEYS.NOT_INTEGER);
49
+ const currentValue = current ?? 0;
50
+ const newValue = currentValue - amount;
51
+ const expiresAt = entry ? entry.expiresAt : -1;
52
+ this._store.set(key, { value: newValue, expiresAt });
53
+ return newValue;
54
+ }
55
+ del(key) {
56
+ return this._store.delete(key);
57
+ }
58
+ expire(key, ttlSec) {
59
+ const entry = this._store.get(key);
60
+ if (!entry)
61
+ return false;
62
+ entry.expiresAt = Date.now() + ttlSec * 1000;
63
+ return true;
64
+ }
65
+ ttl(key) {
66
+ const entry = this._store.get(key);
67
+ if (!entry)
68
+ return -1;
69
+ if (entry.expiresAt === -1)
70
+ return -1;
71
+ const remaining = entry.expiresAt - Date.now();
72
+ return remaining > 0 ? Math.ceil(remaining / 1000) : -1;
73
+ }
74
+ clean() {
75
+ const sizeBefore = this._store.size;
76
+ this._store.clear();
77
+ return sizeBefore;
78
+ }
79
+ _startCleanup() {
80
+ if (this._cleanupTimer)
81
+ return;
82
+ this._cleanupTimer = setInterval(() => {
83
+ this._removeExpiredEntries();
84
+ }, this._cleanupInterval);
85
+ }
86
+ _removeExpiredEntries() {
87
+ const now = Date.now();
88
+ for (const [key, entry] of this._store.entries())
89
+ if (entry.expiresAt !== -1 && now > entry.expiresAt)
90
+ this._store.delete(key);
91
+ }
92
+ destroy() {
93
+ if (this._cleanupTimer) {
94
+ clearInterval(this._cleanupTimer);
95
+ this._cleanupTimer = null;
96
+ }
97
+ this._store.clear();
98
+ }
99
+ }
100
+
101
+ export { MemoryStore };
@@ -0,0 +1,61 @@
1
+ // @bun
2
+ import {
3
+ PARSE_HUMAN_TIME_TO_SECONDS_ERROR_KEYS
4
+ } from "./chunk-12qzn7jw.js";
5
+ import {
6
+ BaseError
7
+ } from "./chunk-9cgzhc50.js";
8
+
9
+ // source/modules/jwt/utils/parse-human-time-to-seconds.ts
10
+ var TIME_UNITS = {
11
+ SECOND: 1,
12
+ MINUTE: 60,
13
+ HOUR: 60 * 60,
14
+ DAY: 60 * 60 * 24,
15
+ WEEK: 60 * 60 * 24 * 7,
16
+ YEAR: 60 * 60 * 24 * 365.25
17
+ };
18
+ var TIME_EXPRESSION_REGEX = /^(\+|-)? ?(\d+|\d+\.\d+) ?(seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)(?: (ago|from now))?$/i;
19
+ var UNIT_MAPPINGS = {
20
+ s: TIME_UNITS.SECOND,
21
+ sec: TIME_UNITS.SECOND,
22
+ secs: TIME_UNITS.SECOND,
23
+ second: TIME_UNITS.SECOND,
24
+ seconds: TIME_UNITS.SECOND,
25
+ m: TIME_UNITS.MINUTE,
26
+ min: TIME_UNITS.MINUTE,
27
+ mins: TIME_UNITS.MINUTE,
28
+ minute: TIME_UNITS.MINUTE,
29
+ minutes: TIME_UNITS.MINUTE,
30
+ h: TIME_UNITS.HOUR,
31
+ hr: TIME_UNITS.HOUR,
32
+ hrs: TIME_UNITS.HOUR,
33
+ hour: TIME_UNITS.HOUR,
34
+ hours: TIME_UNITS.HOUR,
35
+ d: TIME_UNITS.DAY,
36
+ day: TIME_UNITS.DAY,
37
+ days: TIME_UNITS.DAY,
38
+ w: TIME_UNITS.WEEK,
39
+ week: TIME_UNITS.WEEK,
40
+ weeks: TIME_UNITS.WEEK,
41
+ y: TIME_UNITS.YEAR,
42
+ yr: TIME_UNITS.YEAR,
43
+ yrs: TIME_UNITS.YEAR,
44
+ year: TIME_UNITS.YEAR,
45
+ years: TIME_UNITS.YEAR
46
+ };
47
+ var parseHumanTimeToSeconds = (timeExpression) => {
48
+ const match = TIME_EXPRESSION_REGEX.exec(timeExpression);
49
+ if (!match || match[4] && match[1])
50
+ throw new BaseError(PARSE_HUMAN_TIME_TO_SECONDS_ERROR_KEYS.INVALID_TIME_EXPRESSION);
51
+ const [, sign, valueStr, unitStr, direction] = match;
52
+ const value = parseFloat(valueStr);
53
+ const unit = unitStr.toLowerCase();
54
+ const multiplier = UNIT_MAPPINGS[unit];
55
+ const seconds = Math.round(value * multiplier);
56
+ if (sign === "-" || direction === "ago")
57
+ return -seconds;
58
+ return seconds;
59
+ };
60
+
61
+ export { parseHumanTimeToSeconds };
@@ -0,0 +1,32 @@
1
+ // @bun
2
+ import {
3
+ SINGLETON_MANAGER_ERROR_KEYS
4
+ } from "./chunk-z0ct35ft.js";
5
+ import {
6
+ BaseError
7
+ } from "./chunk-9cgzhc50.js";
8
+
9
+ // source/modules/singleton-manager/singleton-manager.ts
10
+ class SingletonManager {
11
+ static _registry = new Map;
12
+ static register(name, instance) {
13
+ if (this._registry.has(name))
14
+ throw new BaseError(SINGLETON_MANAGER_ERROR_KEYS.CLASS_INSTANCE_ALREADY_REGISTERED, { name });
15
+ this._registry.set(name, instance);
16
+ }
17
+ static unregister(name) {
18
+ if (!this._registry.has(name))
19
+ throw new BaseError(SINGLETON_MANAGER_ERROR_KEYS.CLASS_INSTANCE_NOT_REGISTERED, { name });
20
+ this._registry.delete(name);
21
+ }
22
+ static get(name) {
23
+ if (!this._registry.has(name))
24
+ throw new BaseError(SINGLETON_MANAGER_ERROR_KEYS.CLASS_INSTANCE_NOT_REGISTERED, { name });
25
+ return this._registry.get(name);
26
+ }
27
+ static has(name) {
28
+ return this._registry.has(name);
29
+ }
30
+ }
31
+
32
+ export { SingletonManager };
@@ -0,0 +1,39 @@
1
+ // @bun
2
+ // source/shared/utils/is-date-string.ts
3
+ var isDateString = (v) => typeof v === "string" && new Date(v).toString() !== "Invalid Date";
4
+
5
+ // source/shared/utils/stream.ts
6
+ var makeStreamAsyncIterable = (stream) => {
7
+ const asyncIterable = {
8
+ [Symbol.asyncIterator]: () => ({
9
+ next() {
10
+ return new Promise((resolve, reject) => {
11
+ const cleanup = () => {
12
+ stream.off("data", onData);
13
+ stream.off("end", onEnd);
14
+ stream.off("error", onError);
15
+ };
16
+ const onData = (data) => {
17
+ cleanup();
18
+ resolve({ value: data, done: false });
19
+ };
20
+ const onEnd = () => {
21
+ cleanup();
22
+ resolve({ value: undefined, done: true });
23
+ };
24
+ const onError = (error) => {
25
+ cleanup();
26
+ reject(error);
27
+ };
28
+ stream.on("data", onData);
29
+ stream.on("end", onEnd);
30
+ stream.on("error", onError);
31
+ });
32
+ }
33
+ })
34
+ };
35
+ stream[Symbol.asyncIterator] = asyncIterable[Symbol.asyncIterator];
36
+ return stream;
37
+ };
38
+
39
+ export { isDateString, makeStreamAsyncIterable };
@@ -0,0 +1,79 @@
1
+ // @bun
2
+ import {
3
+ DATA_ERROR_KEYS
4
+ } from "./chunk-jksb9ers.js";
5
+ import {
6
+ BaseError
7
+ } from "./chunk-9cgzhc50.js";
8
+
9
+ // source/modules/data/data.ts
10
+ var _validateDataNull = (data) => {
11
+ if (data === null || data === undefined)
12
+ throw new BaseError(DATA_ERROR_KEYS.DATA_IS_NULL);
13
+ };
14
+ var filterByKeyExclusion = (data, keys, excludeNullUndefined) => {
15
+ _validateDataNull(data);
16
+ const filteredData = {};
17
+ for (const key in data) {
18
+ const typedKey = key;
19
+ if (!keys.includes(typedKey) && (!excludeNullUndefined || data[typedKey] !== null && data[typedKey] !== undefined))
20
+ filteredData[key] = data[typedKey];
21
+ }
22
+ return filteredData;
23
+ };
24
+ var filterByKeyExclusionRecursive = (data, keys, excludeNullUndefined = false) => {
25
+ _validateDataNull(data);
26
+ const filteredData = {};
27
+ for (const key in data) {
28
+ const typedKey = key;
29
+ if (!keys.includes(typedKey) && (!excludeNullUndefined || data[typedKey] !== null && data[typedKey] !== undefined))
30
+ if (typeof data[typedKey] === "object" && data[typedKey] !== null && !Array.isArray(data[typedKey]))
31
+ filteredData[key] = filterByKeyExclusionRecursive(data[typedKey], keys, excludeNullUndefined);
32
+ else if (Array.isArray(data[typedKey]))
33
+ filteredData[key] = data[typedKey].map((item) => {
34
+ if (typeof item === "object" && item !== null && !Array.isArray(item))
35
+ return filterByKeyExclusionRecursive(item, keys, excludeNullUndefined);
36
+ return item;
37
+ });
38
+ else
39
+ filteredData[key] = data[typedKey];
40
+ }
41
+ for (const symbol of Object.getOwnPropertySymbols(data))
42
+ filteredData[symbol] = data[symbol];
43
+ return filteredData;
44
+ };
45
+ var filterByKeyInclusion = (data, keys, excludeNullUndefined, throwIfDataIsNull = true) => {
46
+ if (throwIfDataIsNull)
47
+ _validateDataNull(data);
48
+ const filteredData = {};
49
+ for (const key of keys) {
50
+ const typedKey = key;
51
+ if (typedKey in data && (!excludeNullUndefined || data[typedKey] !== null && data[typedKey] !== undefined))
52
+ filteredData[key] = data[typedKey];
53
+ }
54
+ return filteredData;
55
+ };
56
+ var filterByValue = (data, predicate, excludeNullUndefined = false, throwIfDataIsNull = true) => {
57
+ if (throwIfDataIsNull)
58
+ _validateDataNull(data);
59
+ const filteredData = {};
60
+ for (const key in data)
61
+ if (Object.hasOwn(data, key)) {
62
+ const typedKey = key;
63
+ if (predicate(data[typedKey]) && (!excludeNullUndefined || data[typedKey] !== null && data[typedKey] !== undefined))
64
+ filteredData[typedKey] = data[typedKey];
65
+ }
66
+ return filteredData;
67
+ };
68
+ var transformKeys = (data, transformer, throwIfDataIsNull = true) => {
69
+ if (throwIfDataIsNull)
70
+ _validateDataNull(data);
71
+ const result = {};
72
+ for (const key in data) {
73
+ const transformedKey = transformer.convertCase(key);
74
+ result[transformedKey] = data[key];
75
+ }
76
+ return result;
77
+ };
78
+
79
+ export { filterByKeyExclusion, filterByKeyExclusionRecursive, filterByKeyInclusion, filterByValue, transformKeys };
@@ -0,0 +1,7 @@
1
+ // @bun
2
+ // source/modules/data/enums/data-error-keys.ts
3
+ var DATA_ERROR_KEYS = {
4
+ DATA_IS_NULL: "mrx-core.data.error.is_null"
5
+ };
6
+
7
+ export { DATA_ERROR_KEYS };
@@ -0,0 +1,27 @@
1
+ // @bun
2
+ // source/modules/totp/utils/create-counter-buffer.ts
3
+ var createCounterBuffer = (counter) => {
4
+ const counterBuffer = new ArrayBuffer(8);
5
+ const counterView = new DataView(counterBuffer);
6
+ if (typeof counter === "bigint")
7
+ counterView.setBigUint64(0, counter, false);
8
+ else
9
+ counterView.setUint32(4, counter, false);
10
+ return counterBuffer;
11
+ };
12
+
13
+ // source/modules/totp/utils/dynamic-truncation.ts
14
+ var dynamicTruncation = (hmacArray, digits) => {
15
+ const offset = hmacArray[hmacArray.length - 1] & 15;
16
+ const code = ((hmacArray[offset] & 127) << 24 | (hmacArray[offset + 1] & 255) << 16 | (hmacArray[offset + 2] & 255) << 8 | hmacArray[offset + 3] & 255) % 10 ** digits;
17
+ return code.toString().padStart(digits, "0");
18
+ };
19
+
20
+ // source/modules/totp/utils/generate-hmac.ts
21
+ import { webcrypto } from "crypto";
22
+ var generateHmac = async (key, data) => {
23
+ const hmac = await webcrypto.subtle.sign("HMAC", key, data);
24
+ return new Uint8Array(hmac);
25
+ };
26
+
27
+ export { createCounterBuffer, dynamicTruncation, generateHmac };
@@ -0,0 +1,41 @@
1
+ // @bun
2
+ // source/modules/typed-event-emitter/typed-event-emitter.ts
3
+ import { EventEmitter } from "events";
4
+
5
+ class TypedEventEmitter extends EventEmitter {
6
+ emit(event, ...args) {
7
+ return super.emit(event, ...args);
8
+ }
9
+ on(event, listener) {
10
+ return super.on(event, listener);
11
+ }
12
+ once(event, listener) {
13
+ return super.once(event, listener);
14
+ }
15
+ addListener(event, listener) {
16
+ return super.addListener(event, listener);
17
+ }
18
+ removeListener(event, listener) {
19
+ return super.removeListener(event, listener);
20
+ }
21
+ off(event, listener) {
22
+ return super.off(event, listener);
23
+ }
24
+ listenerCount(event) {
25
+ return super.listenerCount(event);
26
+ }
27
+ listeners(event) {
28
+ return super.listeners(event);
29
+ }
30
+ rawListeners(event) {
31
+ return super.rawListeners(event);
32
+ }
33
+ prependListener(event, listener) {
34
+ return super.prependListener(event, listener);
35
+ }
36
+ prependOnceListener(event, listener) {
37
+ return super.prependOnceListener(event, listener);
38
+ }
39
+ }
40
+
41
+ export { TypedEventEmitter };
@@ -0,0 +1,7 @@
1
+ // @bun
2
+ // source/shared/enums/utils-error-keys.ts
3
+ var UTILS_ERROR_KEYS = {
4
+ INVALID_ENVIRONMENT: "mrx-core.utils.error.invalid_environment"
5
+ };
6
+
7
+ export { UTILS_ERROR_KEYS };