@shohaghinfo/aerojs 0.3.0 → 0.4.1

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 (112) hide show
  1. package/AGENTS.md +226 -0
  2. package/README.md +149 -9
  3. package/dist/audit/audit-trail.d.ts +5 -6
  4. package/dist/audit/audit-trail.d.ts.map +1 -1
  5. package/dist/audit/audit-trail.js +5 -6
  6. package/dist/audit/audit-trail.js.map +1 -1
  7. package/dist/auth/auth-manager.d.ts +5 -5
  8. package/dist/auth/auth-manager.js +5 -5
  9. package/dist/auth/bouncer.d.ts +8 -15
  10. package/dist/auth/bouncer.d.ts.map +1 -1
  11. package/dist/auth/bouncer.js +10 -17
  12. package/dist/auth/bouncer.js.map +1 -1
  13. package/dist/auth/guards/api-token-guard.d.ts +2 -4
  14. package/dist/auth/guards/api-token-guard.d.ts.map +1 -1
  15. package/dist/auth/guards/api-token-guard.js +2 -4
  16. package/dist/auth/guards/api-token-guard.js.map +1 -1
  17. package/dist/auth/guards/jwt-guard.d.ts +3 -4
  18. package/dist/auth/guards/jwt-guard.d.ts.map +1 -1
  19. package/dist/auth/guards/jwt-guard.js +2 -3
  20. package/dist/auth/guards/jwt-guard.js.map +1 -1
  21. package/dist/auth/guards/session-guard.d.ts +2 -4
  22. package/dist/auth/guards/session-guard.d.ts.map +1 -1
  23. package/dist/auth/guards/session-guard.js +2 -4
  24. package/dist/auth/guards/session-guard.js.map +1 -1
  25. package/dist/auth/policy.js +1 -1
  26. package/dist/auth/policy.js.map +1 -1
  27. package/dist/cli/commands/make.js +1 -1
  28. package/dist/cli/runner.js +1 -1
  29. package/dist/core/application.d.ts +10 -0
  30. package/dist/core/application.d.ts.map +1 -1
  31. package/dist/core/application.js +13 -0
  32. package/dist/core/application.js.map +1 -1
  33. package/dist/core/context.d.ts +1 -0
  34. package/dist/core/context.d.ts.map +1 -1
  35. package/dist/core/context.js +3 -0
  36. package/dist/core/context.js.map +1 -1
  37. package/dist/database/connection.d.ts +32 -0
  38. package/dist/database/connection.d.ts.map +1 -1
  39. package/dist/database/connection.js +51 -0
  40. package/dist/database/connection.js.map +1 -1
  41. package/dist/database/index.d.ts +1 -1
  42. package/dist/database/index.d.ts.map +1 -1
  43. package/dist/database/index.js +1 -1
  44. package/dist/database/index.js.map +1 -1
  45. package/dist/database/model-hooks.d.ts +5 -5
  46. package/dist/database/model-hooks.js +11 -11
  47. package/dist/database/model.d.ts +58 -58
  48. package/dist/database/model.d.ts.map +1 -1
  49. package/dist/database/model.js +133 -71
  50. package/dist/database/model.js.map +1 -1
  51. package/dist/database/query-builder.d.ts +24 -7
  52. package/dist/database/query-builder.d.ts.map +1 -1
  53. package/dist/database/query-builder.js +88 -37
  54. package/dist/database/query-builder.js.map +1 -1
  55. package/dist/events/event-bus.d.ts +47 -75
  56. package/dist/events/event-bus.d.ts.map +1 -1
  57. package/dist/events/event-bus.js +14 -23
  58. package/dist/events/event-bus.js.map +1 -1
  59. package/dist/index.d.ts +3 -3
  60. package/dist/index.d.ts.map +1 -1
  61. package/dist/index.js +6 -6
  62. package/dist/index.js.map +1 -1
  63. package/dist/notifications/notification-manager.d.ts +1 -1
  64. package/dist/notifications/notification-manager.js +1 -1
  65. package/dist/queue/dashboard.d.ts +30 -0
  66. package/dist/queue/dashboard.d.ts.map +1 -0
  67. package/dist/queue/dashboard.js +371 -0
  68. package/dist/queue/dashboard.js.map +1 -0
  69. package/dist/queue/index.d.ts +1 -0
  70. package/dist/queue/index.d.ts.map +1 -1
  71. package/dist/queue/index.js +1 -0
  72. package/dist/queue/index.js.map +1 -1
  73. package/dist/queue/queue-manager.d.ts +31 -1
  74. package/dist/queue/queue-manager.d.ts.map +1 -1
  75. package/dist/queue/queue-manager.js +60 -0
  76. package/dist/queue/queue-manager.js.map +1 -1
  77. package/dist/queue/worker.d.ts +3 -0
  78. package/dist/queue/worker.d.ts.map +1 -1
  79. package/dist/queue/worker.js +9 -0
  80. package/dist/queue/worker.js.map +1 -1
  81. package/dist/scheduler/scheduler.d.ts +5 -5
  82. package/dist/scheduler/scheduler.js +5 -5
  83. package/dist/security/encryption.d.ts +60 -0
  84. package/dist/security/encryption.d.ts.map +1 -0
  85. package/dist/security/encryption.js +120 -0
  86. package/dist/security/encryption.js.map +1 -0
  87. package/dist/security/fingerprint.d.ts +47 -0
  88. package/dist/security/fingerprint.d.ts.map +1 -0
  89. package/dist/security/fingerprint.js +83 -0
  90. package/dist/security/fingerprint.js.map +1 -0
  91. package/dist/security/index.d.ts +2 -0
  92. package/dist/security/index.d.ts.map +1 -1
  93. package/dist/security/index.js +2 -0
  94. package/dist/security/index.js.map +1 -1
  95. package/dist/session/cookie-session-driver.d.ts +34 -0
  96. package/dist/session/cookie-session-driver.d.ts.map +1 -0
  97. package/dist/session/cookie-session-driver.js +57 -0
  98. package/dist/session/cookie-session-driver.js.map +1 -0
  99. package/dist/session/index.d.ts +8 -0
  100. package/dist/session/index.d.ts.map +1 -0
  101. package/dist/session/index.js +8 -0
  102. package/dist/session/index.js.map +1 -0
  103. package/dist/session/session-driver.d.ts +2 -2
  104. package/dist/session/session-driver.js +2 -2
  105. package/dist/session/session-manager.d.ts +4 -4
  106. package/dist/session/session-manager.d.ts.map +1 -1
  107. package/dist/session/session-manager.js +10 -5
  108. package/dist/session/session-manager.js.map +1 -1
  109. package/dist/tcp/mllp.d.ts +1 -1
  110. package/dist/tcp/mllp.js +2 -2
  111. package/dist/tcp/mllp.js.map +1 -1
  112. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fingerprint.js","sourceRoot":"","sources":["../../src/security/fingerprint.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AA2BtC,MAAM,OAAO,kBAAkB;IAC7B;;OAEG;IACI,MAAM,CAAC,QAAQ,CAAC,GAAgB,EAAE,UAA8B,EAAE;QACvE,MAAM,SAAS,GAAG,OAAO,CAAC,EAAE,KAAK,KAAK,CAAC;QACvC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,KAAK,CAAC;QAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,KAAK,KAAK,CAAC;QACrD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,uBAAuB,CAAC;QAErD,MAAM,UAAU,GAAa,EAAE,CAAC;QAEhC,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACzC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,YAAY,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YAChD,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,cAAc,CAAC,CAAC;QACjF,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACd,+CAA+C;YAC/C,MAAM,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YACrD,MAAM,KAAK,GAAG,OAAO,SAAS,KAAK,QAAQ;gBACzC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE;gBACjC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,IAAK,GAAG,CAAC,GAAG,CAAC,GAAW,EAAE,MAAM,EAAE,aAAa,IAAI,WAAW,CAAC,CAAC;YAC3E,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,WAAW,CAAC,CAAC;QACxC,CAAC;QAED,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAC9B,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBAC1C,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC7C,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,IAAI,KAAK,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACpD,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,MAAM,CAAC,GAAgB,EAAE,mBAA2B,EAAE,UAA8B,EAAE;QAClG,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,OAAO,CAAC,MAAM,KAAK,mBAAmB,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAChE,OAAO,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACxF,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAE7B,EAAE;IACJ,OAAO,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACzB,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACpE,GAAW,CAAC,WAAW,GAAG,kBAAkB,CAAC;QAE9C,oDAAoD;QACpD,MAAM,OAAO,GAAI,GAAW,CAAC,OAAO,CAAC;QACrC,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;YACjD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YACjD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,kDAAkD;gBAClD,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;YACxD,CAAC;iBAAM,IAAI,MAAM,KAAK,kBAAkB,EAAE,CAAC;gBACzC,qCAAqC;gBACrC,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;oBACvB,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;oBAC9B,OAAO;gBACT,CAAC;gBACD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACnB,KAAK,EAAE,uEAAuE;iBAC/E,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,IAAI,EAAE,CAAC;IACf,CAAC,CAAC;AACJ,CAAC"}
@@ -11,4 +11,6 @@ export { cors, type CorsOptions, } from '../middleware/cors.js';
11
11
  export * from './totp.js';
12
12
  export * from './vault.js';
13
13
  export * from './signed-url.js';
14
+ export * from './encryption.js';
15
+ export * from './fingerprint.js';
14
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/security/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,GAAG,EACH,IAAI,EACJ,MAAM,EACN,MAAM,EACN,OAAO,EACP,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,cAAc,GACpB,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,SAAS,EACT,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,0BAA0B,GAChC,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EAChB,KAAK,+BAA+B,GACrC,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,IAAI,EACJ,KAAK,WAAW,GACjB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,KAAK,aAAa,GACnB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,IAAI,EACJ,KAAK,WAAW,GACjB,MAAM,uBAAuB,CAAC;AAE/B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/security/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,GAAG,EACH,IAAI,EACJ,MAAM,EACN,MAAM,EACN,OAAO,EACP,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,cAAc,GACpB,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,SAAS,EACT,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,0BAA0B,GAChC,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EAChB,KAAK,+BAA+B,GACrC,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,IAAI,EACJ,KAAK,WAAW,GACjB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,KAAK,aAAa,GACnB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,IAAI,EACJ,KAAK,WAAW,GACjB,MAAM,uBAAuB,CAAC;AAE/B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
@@ -11,4 +11,6 @@ export { cors, } from '../middleware/cors.js';
11
11
  export * from './totp.js';
12
12
  export * from './vault.js';
13
13
  export * from './signed-url.js';
14
+ export * from './encryption.js';
15
+ export * from './fingerprint.js';
14
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/security/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,GAAG,EACH,IAAI,EACJ,MAAM,EACN,MAAM,EACN,OAAO,EACP,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,GAOf,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,SAAS,EACT,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,GAKrB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,eAAe,GAIhB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,IAAI,GAEL,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,IAAI,EACJ,IAAI,EACJ,UAAU,GAEX,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,IAAI,GAEL,MAAM,uBAAuB,CAAC;AAE/B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/security/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,GAAG,EACH,IAAI,EACJ,MAAM,EACN,MAAM,EACN,OAAO,EACP,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,GAOf,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,SAAS,EACT,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,GAKrB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,eAAe,GAIhB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,IAAI,GAEL,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,IAAI,EACJ,IAAI,EACJ,UAAU,GAEX,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,IAAI,GAEL,MAAM,uBAAuB,CAAC;AAE/B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @file cookie-session-driver.ts
3
+ * @description Encrypted client-side cookie session driver for AeroJS.
4
+ * Serializes and encrypts session state into an authenticated AES-256-GCM cookie.
5
+ * Zero-dependency, stateless, and ideal for serverless / edge deployments.
6
+ */
7
+ import type { SessionDriver } from './session-driver.js';
8
+ export declare class CookieSessionDriver implements SessionDriver {
9
+ readonly isClientSide = true;
10
+ private encrypter;
11
+ private lastPayload;
12
+ constructor(key?: string);
13
+ /**
14
+ * Reads and decrypts session data from the encrypted cookie payload.
15
+ */
16
+ read(sessionIdOrPayload: string): Promise<Record<string, unknown>>;
17
+ /**
18
+ * Encrypts the session state for writing to the client cookie.
19
+ */
20
+ write(sessionId: string, data: Record<string, unknown>, _ttl: number): Promise<void>;
21
+ /**
22
+ * Returns the encrypted cookie ciphertext string for the given session state.
23
+ */
24
+ getEncryptedCookieValue(data: Record<string, unknown>): string;
25
+ /**
26
+ * Destroys the session state.
27
+ */
28
+ destroy(_sessionId: string): Promise<void>;
29
+ /**
30
+ * Garbage collection is a no-op for client-side cookies as browsers manage expiry.
31
+ */
32
+ gc(): Promise<void>;
33
+ }
34
+ //# sourceMappingURL=cookie-session-driver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cookie-session-driver.d.ts","sourceRoot":"","sources":["../../src/session/cookie-session-driver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzD,qBAAa,mBAAoB,YAAW,aAAa;IACvD,SAAgB,YAAY,QAAQ;IACpC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,WAAW,CAAM;gBAEb,GAAG,CAAC,EAAE,MAAM;IAIxB;;OAEG;IACU,IAAI,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAgB/E;;OAEG;IACU,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjG;;OAEG;IACI,uBAAuB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM;IAIrE;;OAEG;IACU,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvD;;OAEG;IACU,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC;CACjC"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * @file cookie-session-driver.ts
3
+ * @description Encrypted client-side cookie session driver for AeroJS.
4
+ * Serializes and encrypts session state into an authenticated AES-256-GCM cookie.
5
+ * Zero-dependency, stateless, and ideal for serverless / edge deployments.
6
+ */
7
+ import { Encrypter } from '../security/encryption.js';
8
+ export class CookieSessionDriver {
9
+ isClientSide = true;
10
+ encrypter;
11
+ lastPayload = '';
12
+ constructor(key) {
13
+ this.encrypter = new Encrypter(key);
14
+ }
15
+ /**
16
+ * Reads and decrypts session data from the encrypted cookie payload.
17
+ */
18
+ async read(sessionIdOrPayload) {
19
+ if (!sessionIdOrPayload || !Encrypter.isEncrypted(sessionIdOrPayload)) {
20
+ return {};
21
+ }
22
+ try {
23
+ const data = this.encrypter.decrypt(sessionIdOrPayload);
24
+ if (data && typeof data === 'object') {
25
+ return data;
26
+ }
27
+ return {};
28
+ }
29
+ catch {
30
+ // Tampered or invalid ciphertext -> reset session
31
+ return {};
32
+ }
33
+ }
34
+ /**
35
+ * Encrypts the session state for writing to the client cookie.
36
+ */
37
+ async write(sessionId, data, _ttl) {
38
+ this.lastPayload = this.encrypter.encrypt(data);
39
+ }
40
+ /**
41
+ * Returns the encrypted cookie ciphertext string for the given session state.
42
+ */
43
+ getEncryptedCookieValue(data) {
44
+ return this.encrypter.encrypt(data);
45
+ }
46
+ /**
47
+ * Destroys the session state.
48
+ */
49
+ async destroy(_sessionId) {
50
+ this.lastPayload = '';
51
+ }
52
+ /**
53
+ * Garbage collection is a no-op for client-side cookies as browsers manage expiry.
54
+ */
55
+ async gc() { }
56
+ }
57
+ //# sourceMappingURL=cookie-session-driver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cookie-session-driver.js","sourceRoot":"","sources":["../../src/session/cookie-session-driver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,MAAM,OAAO,mBAAmB;IACd,YAAY,GAAG,IAAI,CAAC;IAC5B,SAAS,CAAY;IACrB,WAAW,GAAG,EAAE,CAAC;IAEzB,YAAY,GAAY;QACtB,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,IAAI,CAAC,kBAA0B;QAC1C,IAAI,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACtE,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAA0B,kBAAkB,CAAC,CAAC;YACjF,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QAAC,MAAM,CAAC;YACP,kDAAkD;YAClD,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,KAAK,CAAC,SAAiB,EAAE,IAA6B,EAAE,IAAY;QAC/E,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACI,uBAAuB,CAAC,IAA6B;QAC1D,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,OAAO,CAAC,UAAkB;QACrC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,EAAE,KAAmB,CAAC;CACpC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @file index.ts
3
+ * @description AeroJS Session Management and Drivers.
4
+ */
5
+ export * from './session-driver.js';
6
+ export * from './cookie-session-driver.js';
7
+ export * from './session-manager.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/session/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @file index.ts
3
+ * @description AeroJS Session Management and Drivers.
4
+ */
5
+ export * from './session-driver.js';
6
+ export * from './cookie-session-driver.js';
7
+ export * from './session-manager.js';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/session/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC"}
@@ -22,7 +22,7 @@ export declare class MemorySessionDriver implements SessionDriver {
22
22
  }
23
23
  /**
24
24
  * File-based session driver.
25
- * Suitable for single-server hospital deployments.
25
+ * Suitable for single-server standalone deployments.
26
26
  */
27
27
  export declare class FileSessionDriver implements SessionDriver {
28
28
  private dir;
@@ -34,7 +34,7 @@ export declare class FileSessionDriver implements SessionDriver {
34
34
  gc(): Promise<void>;
35
35
  }
36
36
  /**
37
- * Redis session driver — recommended for production hospital deployments.
37
+ * Redis session driver — recommended for horizontal multi-server production deployments.
38
38
  * Requires ioredis: npm install ioredis
39
39
  */
40
40
  /**
@@ -31,7 +31,7 @@ export class MemorySessionDriver {
31
31
  }
32
32
  /**
33
33
  * File-based session driver.
34
- * Suitable for single-server hospital deployments.
34
+ * Suitable for single-server standalone deployments.
35
35
  */
36
36
  export class FileSessionDriver {
37
37
  dir;
@@ -92,7 +92,7 @@ export class FileSessionDriver {
92
92
  }
93
93
  }
94
94
  /**
95
- * Redis session driver — recommended for production hospital deployments.
95
+ * Redis session driver — recommended for horizontal multi-server production deployments.
96
96
  * Requires ioredis: npm install ioredis
97
97
  */
98
98
  /**
@@ -2,7 +2,7 @@
2
2
  * @file session-manager.ts
3
3
  * @description Server-side Session Manager for AeroJS.
4
4
  * Provides a clean API for reading/writing session data per HTTP request.
5
- * Hospital use: Cashier shift sessions, CSRF tokens, flash messages, terminal binding.
5
+ * Supports authentication sessions, CSRF tokens, flash messages, and device binding.
6
6
  */
7
7
  import type { AeroContext } from '../core/context.js';
8
8
  import type { SessionDriver } from './session-driver.js';
@@ -17,7 +17,7 @@ export interface SessionConfig {
17
17
  */
18
18
  cookieName?: string;
19
19
  /**
20
- * Session lifetime in seconds. Default: 28800 (8 hours = one hospital shift).
20
+ * Session lifetime in seconds. Default: 86400 (24 hours).
21
21
  */
22
22
  lifetime?: number;
23
23
  /**
@@ -62,7 +62,7 @@ export declare class SessionManager {
62
62
  flush(): Promise<void>;
63
63
  /**
64
64
  * Set or get a flash message (single-use — removed on next request).
65
- * Hospital use: "Shift closed successfully" message after cashier close.
65
+ * Example: "Profile updated successfully" or "Order submitted".
66
66
  */
67
67
  flash(key: string, value?: unknown): Promise<unknown>;
68
68
  /**
@@ -92,7 +92,7 @@ export declare class SessionManager {
92
92
  * @example
93
93
  * app.use(sessionPlugin({
94
94
  * driver: new RedisSessionDriver(redisClient),
95
- * lifetime: 8 * 3600, // 8-hour hospital shift
95
+ * lifetime: 24 * 3600, // 24-hour lifetime
96
96
  * cookie: { httpOnly: true, secure: true, sameSite: 'Strict' }
97
97
  * }));
98
98
  */
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/session/session-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;IAEvB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,QAAQ,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;QAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,IAAI,CAA+B;IAC3C,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;gBAEtB,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC;IAOhF;;OAEG;YACW,YAAY;IAM1B,2BAA2B;IACd,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAKlE,4BAA4B;IACf,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAKpD,2BAA2B;IACd,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5D,qCAAqC;IACxB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK/C,4BAA4B;IACf,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM/C,8BAA8B;IACjB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAMnC;;;OAGG;IACU,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAclE;;OAEG;IACU,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvD;;;OAGG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAaxC;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IASrC;;OAEG;IACU,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAQpC,OAAO,CAAC,kBAAkB;IAUnB,KAAK,IAAI,MAAM;CAGvB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,MAAM,GAAE,aAAkB,GAAG,UAAU,CA+BpE"}
1
+ {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/session/session-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;IAEvB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,QAAQ,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;QAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,IAAI,CAA+B;IAC3C,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;gBAEtB,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC;IAOhF;;OAEG;YACW,YAAY;IAM1B,2BAA2B;IACd,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAKlE,4BAA4B;IACf,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAKpD,2BAA2B;IACd,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5D,qCAAqC;IACxB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK/C,4BAA4B;IACf,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM/C,8BAA8B;IACjB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAMnC;;;OAGG;IACU,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAclE;;OAEG;IACU,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvD;;;OAGG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAaxC;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IASrC;;OAEG;IACU,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAWpC,OAAO,CAAC,kBAAkB;IAUnB,KAAK,IAAI,MAAM;CAGvB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,MAAM,GAAE,aAAkB,GAAG,UAAU,CAmCpE"}
@@ -2,7 +2,7 @@
2
2
  * @file session-manager.ts
3
3
  * @description Server-side Session Manager for AeroJS.
4
4
  * Provides a clean API for reading/writing session data per HTTP request.
5
- * Hospital use: Cashier shift sessions, CSRF tokens, flash messages, terminal binding.
5
+ * Supports authentication sessions, CSRF tokens, flash messages, and device binding.
6
6
  */
7
7
  import crypto from 'node:crypto';
8
8
  import { MemorySessionDriver } from './session-driver.js';
@@ -68,7 +68,7 @@ export class SessionManager {
68
68
  }
69
69
  /**
70
70
  * Set or get a flash message (single-use — removed on next request).
71
- * Hospital use: "Shift closed successfully" message after cashier close.
71
+ * Example: "Profile updated successfully" or "Order submitted".
72
72
  */
73
73
  async flash(key, value) {
74
74
  await this.ensureLoaded();
@@ -126,6 +126,9 @@ export class SessionManager {
126
126
  return;
127
127
  await this.ensureLoaded();
128
128
  await this.driver.write(this.sessionId, this.data, this.config.lifetime);
129
+ if (this.driver.isClientSide && typeof this.driver.getEncryptedCookieValue === 'function') {
130
+ this.sessionId = this.driver.getEncryptedCookieValue(this.data);
131
+ }
129
132
  this.writeSessionCookie();
130
133
  this._dirty = false;
131
134
  }
@@ -149,7 +152,7 @@ export class SessionManager {
149
152
  * @example
150
153
  * app.use(sessionPlugin({
151
154
  * driver: new RedisSessionDriver(redisClient),
152
- * lifetime: 8 * 3600, // 8-hour hospital shift
155
+ * lifetime: 24 * 3600, // 24-hour lifetime
153
156
  * cookie: { httpOnly: true, secure: true, sameSite: 'Strict' }
154
157
  * }));
155
158
  */
@@ -169,9 +172,11 @@ export function sessionPlugin(config = {}) {
169
172
  return async (ctx, next) => {
170
173
  // Extract existing session ID from cookie, or create a new one
171
174
  const existingId = ctx.cookies[resolvedConfig.cookieName];
172
- const sessionId = existingId && existingId.length === 64
175
+ const isClientSide = !!resolvedConfig.driver.isClientSide;
176
+ const isValidId = existingId && (isClientSide ? existingId.startsWith('aero:enc:') : existingId.length === 64);
177
+ const sessionId = isValidId
173
178
  ? existingId
174
- : crypto.randomBytes(32).toString('hex');
179
+ : (isClientSide ? '' : crypto.randomBytes(32).toString('hex'));
175
180
  const session = new SessionManager(ctx, sessionId, resolvedConfig);
176
181
  ctx.session = session;
177
182
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../../src/session/session-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../../src/session/session-manager.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @file mllp.ts
3
- * @description Minimal Lower Layer Protocol (MLLP) framing helper for HL7 clinical interfaces.
3
+ * @description Minimal Lower Layer Protocol (MLLP) framing helper for framed socket interfaces.
4
4
  */
5
5
  export declare class MLLP {
6
6
  static readonly START_BLOCK = 11;
package/dist/tcp/mllp.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @file mllp.ts
3
- * @description Minimal Lower Layer Protocol (MLLP) framing helper for HL7 clinical interfaces.
3
+ * @description Minimal Lower Layer Protocol (MLLP) framing helper for framed socket interfaces.
4
4
  */
5
5
  export class MLLP {
6
6
  static START_BLOCK = 0x0b; // <VT> Vertical Tab
@@ -37,7 +37,7 @@ export class MLLP {
37
37
  */
38
38
  static ack(controlId = '1', ackCode = 'AA') {
39
39
  const timestamp = new Date().toISOString().replace(/[-:T.Z]/g, '').slice(0, 14);
40
- const ackMsg = `MSH|^~\\&|AERO_GATEWAY|AERO_HOSPITAL|LAB_ANALYZER|LAB|${timestamp}||ACK|${controlId}|P|2.3.1\rMSA|${ackCode}|${controlId}\r`;
40
+ const ackMsg = `MSH|^~\\&|AERO_GATEWAY|AERO_APP|CLIENT|RECEIVER|${timestamp}||ACK|${controlId}|P|2.3.1\rMSA|${ackCode}|${controlId}\r`;
41
41
  return MLLP.wrap(ackMsg);
42
42
  }
43
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mllp.js","sourceRoot":"","sources":["../../src/tcp/mllp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,OAAO,IAAI;IACR,MAAM,CAAU,WAAW,GAAG,IAAI,CAAC,CAAO,oBAAoB;IAC9D,MAAM,CAAU,SAAS,GAAG,IAAI,CAAC,CAAS,sBAAsB;IAChE,MAAM,CAAU,eAAe,GAAG,IAAI,CAAC,CAAG,uBAAuB;IAExE;;OAEG;IACI,MAAM,CAAC,IAAI,CAAC,OAAwB;QACzC,MAAM,SAAS,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QACxF,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACnD,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;QAC1B,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACvB,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;QACrC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC;QAC3C,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,MAAM,CAAC,MAAc;QACjC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;YACnC,KAAK,GAAG,CAAC,CAAC;QACZ,CAAC;QACD,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;QACxB,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,eAAe,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YACvG,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1B,CAAC;QACD,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,GAAG,CAAC,YAAoB,GAAG,EAAE,OAAO,GAAG,IAAI;QACvD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAChF,MAAM,MAAM,GAAG,yDAAyD,SAAS,SAAS,SAAS,iBAAiB,OAAO,IAAI,SAAS,IAAI,CAAC;QAC7I,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC"}
1
+ {"version":3,"file":"mllp.js","sourceRoot":"","sources":["../../src/tcp/mllp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,OAAO,IAAI;IACR,MAAM,CAAU,WAAW,GAAG,IAAI,CAAC,CAAO,oBAAoB;IAC9D,MAAM,CAAU,SAAS,GAAG,IAAI,CAAC,CAAS,sBAAsB;IAChE,MAAM,CAAU,eAAe,GAAG,IAAI,CAAC,CAAG,uBAAuB;IAExE;;OAEG;IACI,MAAM,CAAC,IAAI,CAAC,OAAwB;QACzC,MAAM,SAAS,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QACxF,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACnD,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;QAC1B,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACvB,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;QACrC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC;QAC3C,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,MAAM,CAAC,MAAc;QACjC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;YACnC,KAAK,GAAG,CAAC,CAAC;QACZ,CAAC;QACD,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;QACxB,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,eAAe,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YACvG,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1B,CAAC;QACD,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,GAAG,CAAC,YAAoB,GAAG,EAAE,OAAO,GAAG,IAAI;QACvD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAChF,MAAM,MAAM,GAAG,mDAAmD,SAAS,SAAS,SAAS,iBAAiB,OAAO,IAAI,SAAS,IAAI,CAAC;QACvI,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shohaghinfo/aerojs",
3
- "version": "0.3.0",
3
+ "version": "0.4.1",
4
4
  "description": "A minimal, blazing-fast, zero-dependency full-stack web framework for Node.js — supporting React, Vue 3, Inertia.js, and SSR monoliths.",
5
5
  "repository": {
6
6
  "type": "git",