@gravito/ripple 3.0.0 → 3.1.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.
Files changed (118) hide show
  1. package/README.md +179 -6
  2. package/README.zh-TW.md +104 -2
  3. package/dist/core/src/Application.d.ts +215 -0
  4. package/dist/core/src/ConfigManager.d.ts +26 -0
  5. package/dist/core/src/Container.d.ts +78 -0
  6. package/dist/core/src/ErrorHandler.d.ts +63 -0
  7. package/dist/core/src/Event.d.ts +5 -0
  8. package/dist/core/src/EventManager.d.ts +123 -0
  9. package/dist/core/src/GlobalErrorHandlers.d.ts +47 -0
  10. package/dist/core/src/GravitoServer.d.ts +28 -0
  11. package/dist/core/src/HookManager.d.ts +84 -0
  12. package/dist/core/src/Listener.d.ts +4 -0
  13. package/dist/core/src/Logger.d.ts +20 -0
  14. package/dist/core/src/PlanetCore.d.ts +289 -0
  15. package/dist/core/src/Route.d.ts +36 -0
  16. package/dist/core/src/Router.d.ts +288 -0
  17. package/dist/core/src/ServiceProvider.d.ts +156 -0
  18. package/dist/core/src/adapters/GravitoEngineAdapter.d.ts +26 -0
  19. package/dist/core/src/adapters/PhotonAdapter.d.ts +170 -0
  20. package/dist/core/src/adapters/bun/BunContext.d.ts +45 -0
  21. package/dist/core/src/adapters/bun/BunNativeAdapter.d.ts +30 -0
  22. package/dist/core/src/adapters/bun/BunRequest.d.ts +31 -0
  23. package/dist/core/src/adapters/bun/RadixNode.d.ts +19 -0
  24. package/dist/core/src/adapters/bun/RadixRouter.d.ts +31 -0
  25. package/dist/core/src/adapters/bun/types.d.ts +20 -0
  26. package/dist/core/src/adapters/photon-types.d.ts +73 -0
  27. package/dist/core/src/adapters/types.d.ts +208 -0
  28. package/dist/core/src/engine/AOTRouter.d.ts +134 -0
  29. package/dist/core/src/engine/FastContext.d.ts +98 -0
  30. package/dist/core/src/engine/Gravito.d.ts +137 -0
  31. package/dist/core/src/engine/MinimalContext.d.ts +77 -0
  32. package/dist/core/src/engine/analyzer.d.ts +27 -0
  33. package/dist/core/src/engine/constants.d.ts +23 -0
  34. package/dist/core/src/engine/index.d.ts +26 -0
  35. package/dist/core/src/engine/path.d.ts +26 -0
  36. package/dist/core/src/engine/pool.d.ts +83 -0
  37. package/dist/core/src/engine/types.d.ts +138 -0
  38. package/dist/core/src/exceptions/AuthenticationException.d.ts +8 -0
  39. package/dist/core/src/exceptions/AuthorizationException.d.ts +8 -0
  40. package/dist/core/src/exceptions/GravitoException.d.ts +23 -0
  41. package/dist/core/src/exceptions/HttpException.d.ts +9 -0
  42. package/dist/core/src/exceptions/ModelNotFoundException.d.ts +10 -0
  43. package/dist/core/src/exceptions/ValidationException.d.ts +22 -0
  44. package/dist/core/src/exceptions/index.d.ts +6 -0
  45. package/dist/core/src/helpers/Arr.d.ts +19 -0
  46. package/dist/core/src/helpers/Str.d.ts +23 -0
  47. package/dist/core/src/helpers/data.d.ts +25 -0
  48. package/dist/core/src/helpers/errors.d.ts +34 -0
  49. package/dist/core/src/helpers/response.d.ts +41 -0
  50. package/dist/core/src/helpers.d.ts +338 -0
  51. package/dist/core/src/http/CookieJar.d.ts +51 -0
  52. package/dist/core/src/http/cookie.d.ts +29 -0
  53. package/dist/core/src/http/middleware/BodySizeLimit.d.ts +16 -0
  54. package/dist/core/src/http/middleware/Cors.d.ts +24 -0
  55. package/dist/core/src/http/middleware/Csrf.d.ts +23 -0
  56. package/dist/core/src/http/middleware/HeaderTokenGate.d.ts +28 -0
  57. package/dist/core/src/http/middleware/SecurityHeaders.d.ts +29 -0
  58. package/dist/core/src/http/middleware/ThrottleRequests.d.ts +18 -0
  59. package/dist/core/src/http/types.d.ts +334 -0
  60. package/dist/core/src/index.d.ts +67 -0
  61. package/dist/core/src/runtime.d.ts +119 -0
  62. package/dist/core/src/security/Encrypter.d.ts +33 -0
  63. package/dist/core/src/security/Hasher.d.ts +29 -0
  64. package/dist/core/src/testing/HttpTester.d.ts +39 -0
  65. package/dist/core/src/testing/TestResponse.d.ts +78 -0
  66. package/dist/core/src/testing/index.d.ts +2 -0
  67. package/dist/core/src/types/events.d.ts +94 -0
  68. package/dist/index.js +10206 -37
  69. package/dist/index.js.map +69 -10
  70. package/dist/photon/src/index.d.ts +70 -0
  71. package/dist/photon/src/middleware/binary.d.ts +31 -0
  72. package/dist/photon/src/middleware/htmx.d.ts +39 -0
  73. package/dist/ripple/src/OrbitRipple.d.ts +64 -0
  74. package/dist/ripple/src/RippleServer.d.ts +518 -0
  75. package/dist/{channels → ripple/src/channels}/Channel.d.ts +6 -1
  76. package/dist/ripple/src/channels/ChannelManager.d.ts +173 -0
  77. package/dist/{channels → ripple/src/channels}/index.d.ts +0 -1
  78. package/dist/ripple/src/drivers/LocalDriver.d.ts +61 -0
  79. package/dist/ripple/src/drivers/RedisDriver.d.ts +141 -0
  80. package/dist/ripple/src/drivers/index.d.ts +2 -0
  81. package/dist/ripple/src/errors/RippleError.d.ts +48 -0
  82. package/dist/ripple/src/errors/index.d.ts +1 -0
  83. package/dist/ripple/src/events/BroadcastEvent.d.ts +123 -0
  84. package/dist/ripple/src/events/BroadcastManager.d.ts +100 -0
  85. package/dist/ripple/src/events/Broadcaster.d.ts +264 -0
  86. package/dist/{events → ripple/src/events}/index.d.ts +1 -1
  87. package/dist/ripple/src/health/HealthChecker.d.ts +93 -0
  88. package/dist/ripple/src/health/index.d.ts +1 -0
  89. package/dist/ripple/src/index.d.ts +60 -0
  90. package/dist/ripple/src/logging/Logger.d.ts +99 -0
  91. package/dist/ripple/src/logging/index.d.ts +1 -0
  92. package/dist/ripple/src/tracking/ConnectionTracker.d.ts +116 -0
  93. package/dist/ripple/src/tracking/index.d.ts +1 -0
  94. package/dist/ripple/src/types.d.ts +753 -0
  95. package/dist/ripple/src/utils/MessageSerializer.d.ts +44 -0
  96. package/dist/ripple/src/utils/index.d.ts +1 -0
  97. package/package.json +14 -5
  98. package/dist/OrbitRipple.d.ts +0 -80
  99. package/dist/OrbitRipple.d.ts.map +0 -1
  100. package/dist/RippleServer.d.ts +0 -126
  101. package/dist/RippleServer.d.ts.map +0 -1
  102. package/dist/channels/Channel.d.ts.map +0 -1
  103. package/dist/channels/ChannelManager.d.ts +0 -79
  104. package/dist/channels/ChannelManager.d.ts.map +0 -1
  105. package/dist/channels/index.d.ts.map +0 -1
  106. package/dist/drivers/LocalDriver.d.ts +0 -30
  107. package/dist/drivers/LocalDriver.d.ts.map +0 -1
  108. package/dist/drivers/index.d.ts +0 -2
  109. package/dist/drivers/index.d.ts.map +0 -1
  110. package/dist/events/BroadcastEvent.d.ts +0 -52
  111. package/dist/events/BroadcastEvent.d.ts.map +0 -1
  112. package/dist/events/Broadcaster.d.ts +0 -68
  113. package/dist/events/Broadcaster.d.ts.map +0 -1
  114. package/dist/events/index.d.ts.map +0 -1
  115. package/dist/index.d.ts +0 -38
  116. package/dist/index.d.ts.map +0 -1
  117. package/dist/types.d.ts +0 -163
  118. package/dist/types.d.ts.map +0 -1
@@ -0,0 +1,2 @@
1
+ export * from './HttpTester';
2
+ export * from './TestResponse';
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Event system type definitions.
3
+ */
4
+ /**
5
+ * Listener interface.
6
+ *
7
+ * All event listeners must implement this interface.
8
+ */
9
+ export interface Listener<TEvent extends Event = Event> {
10
+ /**
11
+ * Handle an event.
12
+ * @param event - Event instance
13
+ */
14
+ handle(event: TEvent): Promise<void> | void;
15
+ }
16
+ /**
17
+ * Marker interface for listeners that should be queued.
18
+ *
19
+ * Listeners implementing this interface can be dispatched asynchronously via a queue.
20
+ */
21
+ export interface ShouldQueue {
22
+ /**
23
+ * Queue name (optional).
24
+ */
25
+ queue?: string;
26
+ /**
27
+ * Connection name (optional).
28
+ */
29
+ connection?: string;
30
+ /**
31
+ * Delay before execution (seconds).
32
+ */
33
+ delay?: number;
34
+ }
35
+ /**
36
+ * Marker interface for events that should be broadcast.
37
+ *
38
+ * Events implementing this interface can be automatically broadcast to clients.
39
+ */
40
+ export interface ShouldBroadcast {
41
+ /**
42
+ * Define the broadcast channel.
43
+ * @returns Channel name or channel object
44
+ */
45
+ broadcastOn(): string | Channel;
46
+ /**
47
+ * Define broadcast payload (optional).
48
+ * If omitted, public event properties will be used.
49
+ * @returns Broadcast payload
50
+ */
51
+ broadcastWith?(): Record<string, unknown>;
52
+ /**
53
+ * Define the broadcast event name (optional).
54
+ * If omitted, the event class name will be used.
55
+ * @returns Event name
56
+ */
57
+ broadcastAs?(): string;
58
+ }
59
+ /**
60
+ * Channel interface.
61
+ */
62
+ export interface Channel {
63
+ /**
64
+ * Channel name.
65
+ */
66
+ name: string;
67
+ /**
68
+ * Channel type.
69
+ */
70
+ type: 'public' | 'private' | 'presence';
71
+ }
72
+ /**
73
+ * Base event class.
74
+ *
75
+ * All events should extend this class.
76
+ */
77
+ export declare abstract class Event {
78
+ /**
79
+ * Whether this event should be broadcast.
80
+ */
81
+ shouldBroadcast(): boolean;
82
+ /**
83
+ * Get broadcast channel.
84
+ */
85
+ getBroadcastChannel(): string | Channel | null;
86
+ /**
87
+ * Get broadcast payload.
88
+ */
89
+ getBroadcastData(): Record<string, unknown>;
90
+ /**
91
+ * Get broadcast event name.
92
+ */
93
+ getBroadcastEventName(): string;
94
+ }