@beignet/core 0.0.1 → 0.0.2

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 (274) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +149 -4
  3. package/dist/application/index.d.ts +93 -9
  4. package/dist/application/index.d.ts.map +1 -1
  5. package/dist/application/index.js +11 -11
  6. package/dist/application/index.js.map +1 -1
  7. package/dist/client/client.d.ts +73 -12
  8. package/dist/client/client.d.ts.map +1 -1
  9. package/dist/client/client.js +37 -12
  10. package/dist/client/client.js.map +1 -1
  11. package/dist/client/index.d.ts +12 -0
  12. package/dist/client/index.d.ts.map +1 -1
  13. package/dist/client/index.js +6 -0
  14. package/dist/client/index.js.map +1 -1
  15. package/dist/client/types.d.ts +69 -8
  16. package/dist/client/types.d.ts.map +1 -1
  17. package/dist/config/index.d.ts +84 -0
  18. package/dist/config/index.d.ts.map +1 -1
  19. package/dist/config/index.js +36 -0
  20. package/dist/config/index.js.map +1 -1
  21. package/dist/contracts/contract-builder.d.ts +49 -22
  22. package/dist/contracts/contract-builder.d.ts.map +1 -1
  23. package/dist/contracts/contract-builder.js +48 -21
  24. package/dist/contracts/contract-builder.js.map +1 -1
  25. package/dist/contracts/contract-group.d.ts +35 -19
  26. package/dist/contracts/contract-group.d.ts.map +1 -1
  27. package/dist/contracts/contract-group.js +35 -19
  28. package/dist/contracts/contract-group.js.map +1 -1
  29. package/dist/contracts/contract-like.d.ts +4 -4
  30. package/dist/contracts/contract-like.d.ts.map +1 -1
  31. package/dist/contracts/contract-like.js +2 -1
  32. package/dist/contracts/contract-like.js.map +1 -1
  33. package/dist/contracts/index.d.ts +28 -0
  34. package/dist/contracts/index.d.ts.map +1 -1
  35. package/dist/contracts/index.js +12 -0
  36. package/dist/contracts/index.js.map +1 -1
  37. package/dist/contracts/openapi-meta.d.ts +8 -8
  38. package/dist/contracts/openapi-meta.d.ts.map +1 -1
  39. package/dist/contracts/path-template.d.ts +27 -0
  40. package/dist/contracts/path-template.d.ts.map +1 -1
  41. package/dist/contracts/path-template.js +6 -0
  42. package/dist/contracts/path-template.js.map +1 -1
  43. package/dist/contracts/types.d.ts +104 -10
  44. package/dist/contracts/types.d.ts.map +1 -1
  45. package/dist/contracts/types.js +15 -0
  46. package/dist/contracts/types.js.map +1 -1
  47. package/dist/contracts/utils.d.ts +6 -0
  48. package/dist/contracts/utils.d.ts.map +1 -1
  49. package/dist/contracts/utils.js +6 -0
  50. package/dist/contracts/utils.js.map +1 -1
  51. package/dist/domain/entity.d.ts +22 -11
  52. package/dist/domain/entity.d.ts.map +1 -1
  53. package/dist/domain/entity.js +5 -1
  54. package/dist/domain/entity.js.map +1 -1
  55. package/dist/domain/events.d.ts +5 -2
  56. package/dist/domain/events.d.ts.map +1 -1
  57. package/dist/domain/events.js +4 -1
  58. package/dist/domain/events.js.map +1 -1
  59. package/dist/domain/value-object.d.ts +19 -9
  60. package/dist/domain/value-object.d.ts.map +1 -1
  61. package/dist/domain/value-object.js +5 -1
  62. package/dist/domain/value-object.js.map +1 -1
  63. package/dist/errors/catalog.d.ts +40 -16
  64. package/dist/errors/catalog.d.ts.map +1 -1
  65. package/dist/errors/catalog.js +18 -7
  66. package/dist/errors/catalog.js.map +1 -1
  67. package/dist/errors/response.d.ts +16 -4
  68. package/dist/errors/response.d.ts.map +1 -1
  69. package/dist/errors/response.js +3 -3
  70. package/dist/errors/response.js.map +1 -1
  71. package/dist/errors/validation.d.ts +10 -1
  72. package/dist/errors/validation.d.ts.map +1 -1
  73. package/dist/errors/validation.js +3 -0
  74. package/dist/errors/validation.js.map +1 -1
  75. package/dist/events/index.d.ts +133 -0
  76. package/dist/events/index.d.ts.map +1 -1
  77. package/dist/events/index.js +30 -0
  78. package/dist/events/index.js.map +1 -1
  79. package/dist/idempotency/index.d.ts +355 -0
  80. package/dist/idempotency/index.d.ts.map +1 -0
  81. package/dist/idempotency/index.js +360 -0
  82. package/dist/idempotency/index.js.map +1 -0
  83. package/dist/jobs/index.d.ts +110 -0
  84. package/dist/jobs/index.d.ts.map +1 -1
  85. package/dist/jobs/index.js +22 -0
  86. package/dist/jobs/index.js.map +1 -1
  87. package/dist/mail/index.d.ts +149 -0
  88. package/dist/mail/index.d.ts.map +1 -1
  89. package/dist/mail/index.js +30 -0
  90. package/dist/mail/index.js.map +1 -1
  91. package/dist/notifications/index.d.ts +369 -0
  92. package/dist/notifications/index.d.ts.map +1 -0
  93. package/dist/notifications/index.js +310 -0
  94. package/dist/notifications/index.js.map +1 -0
  95. package/dist/openapi/index.d.ts +132 -16
  96. package/dist/openapi/index.d.ts.map +1 -1
  97. package/dist/openapi/index.js +1 -1
  98. package/dist/openapi/index.js.map +1 -1
  99. package/dist/outbox/index.d.ts +469 -0
  100. package/dist/outbox/index.d.ts.map +1 -0
  101. package/dist/outbox/index.js +482 -0
  102. package/dist/outbox/index.js.map +1 -0
  103. package/dist/pagination/index.d.ts +166 -0
  104. package/dist/pagination/index.d.ts.map +1 -0
  105. package/dist/pagination/index.js +96 -0
  106. package/dist/pagination/index.js.map +1 -0
  107. package/dist/ports/audit.d.ts +271 -0
  108. package/dist/ports/audit.d.ts.map +1 -1
  109. package/dist/ports/audit.js +128 -0
  110. package/dist/ports/audit.js.map +1 -1
  111. package/dist/ports/auth.d.ts +70 -0
  112. package/dist/ports/auth.d.ts.map +1 -1
  113. package/dist/ports/auth.js +30 -0
  114. package/dist/ports/auth.js.map +1 -1
  115. package/dist/ports/cache.d.ts +41 -0
  116. package/dist/ports/cache.d.ts.map +1 -1
  117. package/dist/ports/cache.js +10 -0
  118. package/dist/ports/cache.js.map +1 -1
  119. package/dist/ports/clock.d.ts +38 -0
  120. package/dist/ports/clock.d.ts.map +1 -1
  121. package/dist/ports/clock.js +20 -0
  122. package/dist/ports/clock.js.map +1 -1
  123. package/dist/ports/id-generator.d.ts +37 -0
  124. package/dist/ports/id-generator.d.ts.map +1 -1
  125. package/dist/ports/id-generator.js +22 -0
  126. package/dist/ports/id-generator.js.map +1 -1
  127. package/dist/ports/index.d.ts +83 -0
  128. package/dist/ports/index.d.ts.map +1 -1
  129. package/dist/ports/index.js +41 -5
  130. package/dist/ports/index.js.map +1 -1
  131. package/dist/ports/logger.d.ts +56 -0
  132. package/dist/ports/logger.d.ts.map +1 -1
  133. package/dist/ports/logger.js +17 -0
  134. package/dist/ports/logger.js.map +1 -1
  135. package/dist/ports/policy.d.ts +132 -0
  136. package/dist/ports/policy.d.ts.map +1 -1
  137. package/dist/ports/policy.js +45 -0
  138. package/dist/ports/policy.js.map +1 -1
  139. package/dist/ports/rate-limit.d.ts +25 -0
  140. package/dist/ports/rate-limit.d.ts.map +1 -1
  141. package/dist/ports/rate-limit.js +10 -0
  142. package/dist/ports/rate-limit.js.map +1 -1
  143. package/dist/ports/redaction.d.ts +101 -0
  144. package/dist/ports/redaction.d.ts.map +1 -1
  145. package/dist/ports/redaction.js +59 -0
  146. package/dist/ports/redaction.js.map +1 -1
  147. package/dist/ports/storage.d.ts +100 -0
  148. package/dist/ports/storage.d.ts.map +1 -1
  149. package/dist/ports/storage.js +10 -0
  150. package/dist/ports/storage.js.map +1 -1
  151. package/dist/ports/testing.d.ts +47 -0
  152. package/dist/ports/testing.d.ts.map +1 -1
  153. package/dist/ports/testing.js +23 -0
  154. package/dist/ports/testing.js.map +1 -1
  155. package/dist/ports/unit-of-work.d.ts +60 -3
  156. package/dist/ports/unit-of-work.d.ts.map +1 -1
  157. package/dist/ports/unit-of-work.js +11 -2
  158. package/dist/ports/unit-of-work.js.map +1 -1
  159. package/dist/providers/instrumentation.d.ts +204 -0
  160. package/dist/providers/instrumentation.d.ts.map +1 -1
  161. package/dist/providers/instrumentation.js +14 -0
  162. package/dist/providers/instrumentation.js.map +1 -1
  163. package/dist/providers/provider.d.ts +14 -1
  164. package/dist/providers/provider.d.ts.map +1 -1
  165. package/dist/providers/provider.js.map +1 -1
  166. package/dist/schedules/index.d.ts +246 -0
  167. package/dist/schedules/index.d.ts.map +1 -1
  168. package/dist/schedules/index.js +27 -0
  169. package/dist/schedules/index.js.map +1 -1
  170. package/dist/server/health.d.ts +14 -5
  171. package/dist/server/health.d.ts.map +1 -1
  172. package/dist/server/health.js +5 -2
  173. package/dist/server/health.js.map +1 -1
  174. package/dist/server/hooks/auth.d.ts +57 -0
  175. package/dist/server/hooks/auth.d.ts.map +1 -1
  176. package/dist/server/hooks/auth.js.map +1 -1
  177. package/dist/server/hooks/cors.d.ts +27 -0
  178. package/dist/server/hooks/cors.d.ts.map +1 -1
  179. package/dist/server/hooks/cors.js +12 -0
  180. package/dist/server/hooks/cors.js.map +1 -1
  181. package/dist/server/hooks/errors.d.ts +15 -6
  182. package/dist/server/hooks/errors.d.ts.map +1 -1
  183. package/dist/server/hooks/errors.js.map +1 -1
  184. package/dist/server/hooks/index.d.ts +3 -0
  185. package/dist/server/hooks/index.d.ts.map +1 -1
  186. package/dist/server/hooks/index.js +3 -0
  187. package/dist/server/hooks/index.js.map +1 -1
  188. package/dist/server/hooks/logging.d.ts +36 -0
  189. package/dist/server/hooks/logging.d.ts.map +1 -1
  190. package/dist/server/hooks/logging.js +6 -0
  191. package/dist/server/hooks/logging.js.map +1 -1
  192. package/dist/server/hooks/rate-limit.d.ts +33 -0
  193. package/dist/server/hooks/rate-limit.d.ts.map +1 -1
  194. package/dist/server/hooks/rate-limit.js +11 -0
  195. package/dist/server/hooks/rate-limit.js.map +1 -1
  196. package/dist/server/http.d.ts +170 -0
  197. package/dist/server/http.d.ts.map +1 -1
  198. package/dist/server/index.d.ts +18 -0
  199. package/dist/server/index.d.ts.map +1 -1
  200. package/dist/server/index.js +6 -0
  201. package/dist/server/index.js.map +1 -1
  202. package/dist/server/openapi.d.ts +5 -3
  203. package/dist/server/openapi.d.ts.map +1 -1
  204. package/dist/server/openapi.js +4 -2
  205. package/dist/server/openapi.js.map +1 -1
  206. package/dist/server/providers/loadProviderConfig.d.ts +9 -0
  207. package/dist/server/providers/loadProviderConfig.d.ts.map +1 -1
  208. package/dist/server/providers/loadProviderConfig.js +9 -0
  209. package/dist/server/providers/loadProviderConfig.js.map +1 -1
  210. package/dist/server/server.d.ts +107 -8
  211. package/dist/server/server.d.ts.map +1 -1
  212. package/dist/server/server.js +27 -7
  213. package/dist/server/server.js.map +1 -1
  214. package/dist/testing/index.d.ts +167 -0
  215. package/dist/testing/index.d.ts.map +1 -0
  216. package/dist/testing/index.js +119 -0
  217. package/dist/testing/index.js.map +1 -0
  218. package/package.json +21 -1
  219. package/src/application/index.ts +85 -22
  220. package/src/client/client.ts +73 -12
  221. package/src/client/index.ts +12 -0
  222. package/src/client/types.ts +70 -9
  223. package/src/config/index.ts +86 -0
  224. package/src/contracts/contract-builder.ts +49 -22
  225. package/src/contracts/contract-group.ts +35 -19
  226. package/src/contracts/contract-like.ts +4 -4
  227. package/src/contracts/index.ts +28 -1
  228. package/src/contracts/openapi-meta.ts +8 -8
  229. package/src/contracts/path-template.ts +27 -0
  230. package/src/contracts/types.ts +111 -10
  231. package/src/contracts/utils.ts +6 -0
  232. package/src/domain/entity.ts +22 -11
  233. package/src/domain/events.ts +5 -2
  234. package/src/domain/value-object.ts +19 -9
  235. package/src/errors/catalog.ts +40 -16
  236. package/src/errors/response.ts +16 -4
  237. package/src/errors/validation.ts +10 -1
  238. package/src/events/index.ts +134 -0
  239. package/src/idempotency/index.ts +767 -0
  240. package/src/jobs/index.ts +111 -0
  241. package/src/mail/index.ts +149 -0
  242. package/src/notifications/index.ts +771 -0
  243. package/src/openapi/index.ts +133 -16
  244. package/src/outbox/index.ts +1024 -0
  245. package/src/pagination/index.ts +278 -0
  246. package/src/ports/audit.ts +271 -0
  247. package/src/ports/auth.ts +70 -0
  248. package/src/ports/cache.ts +41 -0
  249. package/src/ports/clock.ts +38 -0
  250. package/src/ports/id-generator.ts +37 -0
  251. package/src/ports/index.ts +106 -11
  252. package/src/ports/logger.ts +56 -0
  253. package/src/ports/policy.ts +133 -0
  254. package/src/ports/rate-limit.ts +25 -0
  255. package/src/ports/redaction.ts +101 -0
  256. package/src/ports/storage.ts +100 -0
  257. package/src/ports/testing.ts +47 -0
  258. package/src/ports/unit-of-work.ts +60 -3
  259. package/src/providers/instrumentation.ts +204 -0
  260. package/src/providers/provider.ts +14 -1
  261. package/src/schedules/index.ts +247 -0
  262. package/src/server/health.ts +14 -5
  263. package/src/server/hooks/auth.ts +58 -0
  264. package/src/server/hooks/cors.ts +27 -0
  265. package/src/server/hooks/errors.ts +15 -6
  266. package/src/server/hooks/index.ts +3 -0
  267. package/src/server/hooks/logging.ts +36 -0
  268. package/src/server/hooks/rate-limit.ts +33 -0
  269. package/src/server/http.ts +170 -1
  270. package/src/server/index.ts +18 -1
  271. package/src/server/openapi.ts +5 -3
  272. package/src/server/providers/loadProviderConfig.ts +9 -0
  273. package/src/server/server.ts +107 -9
  274. package/src/testing/index.ts +337 -0
@@ -1,91 +1,295 @@
1
1
  import { type Redactor } from "../ports/redaction";
2
+ /**
3
+ * Logical provider watcher name used to toggle groups of instrumentation
4
+ * events.
5
+ */
2
6
  export type ProviderInstrumentationWatcherName = string;
7
+ /**
8
+ * Common metadata attached to every provider instrumentation event.
9
+ */
3
10
  export interface BaseProviderInstrumentationEvent {
11
+ /**
12
+ * Optional event identifier supplied by the caller.
13
+ */
4
14
  id?: string;
15
+ /**
16
+ * ISO timestamp supplied by the caller. Devtools can also assign a timestamp
17
+ * when one is omitted.
18
+ */
5
19
  timestamp?: string;
20
+ /**
21
+ * Request correlation ID for events emitted during request handling.
22
+ */
6
23
  requestId?: string;
24
+ /**
25
+ * Trace identifier for distributed tracing integrations.
26
+ */
7
27
  traceId?: string;
28
+ /**
29
+ * Span identifier for the current operation.
30
+ */
8
31
  spanId?: string;
32
+ /**
33
+ * Parent span identifier for nested operations.
34
+ */
9
35
  parentSpanId?: string;
36
+ /**
37
+ * W3C traceparent header value, when available.
38
+ */
10
39
  traceparent?: string;
40
+ /**
41
+ * Watcher category used by devtools and instrumentation sinks.
42
+ */
11
43
  watcher?: ProviderInstrumentationWatcherName;
44
+ /**
45
+ * Provider-specific structured details. Values are redacted before being
46
+ * recorded by `createProviderInstrumentation(...)`.
47
+ */
12
48
  details?: unknown;
13
49
  }
50
+ /**
51
+ * HTTP request instrumentation emitted by server adapters.
52
+ */
14
53
  export interface RequestProviderInstrumentationEvent extends BaseProviderInstrumentationEvent {
15
54
  type: "request";
55
+ /**
56
+ * HTTP method.
57
+ */
16
58
  method: string;
59
+ /**
60
+ * Request path.
61
+ */
17
62
  path: string;
63
+ /**
64
+ * Matched contract name, when known.
65
+ */
18
66
  contractName?: string;
67
+ /**
68
+ * Response status code.
69
+ */
19
70
  status?: number;
71
+ /**
72
+ * Request duration in milliseconds.
73
+ */
20
74
  durationMs?: number;
75
+ /**
76
+ * Human-readable summary for devtools lists.
77
+ */
21
78
  summary?: string;
22
79
  }
80
+ /**
81
+ * Error instrumentation emitted by framework hooks, use cases, or providers.
82
+ */
23
83
  export interface ErrorProviderInstrumentationEvent extends BaseProviderInstrumentationEvent {
24
84
  type: "error";
85
+ /**
86
+ * Error message.
87
+ */
25
88
  message: string;
89
+ /**
90
+ * Error stack trace, when available.
91
+ */
26
92
  stack?: string;
93
+ /**
94
+ * Contract associated with the error.
95
+ */
27
96
  contractName?: string;
97
+ /**
98
+ * Use case associated with the error.
99
+ */
28
100
  useCaseName?: string;
29
101
  }
102
+ /**
103
+ * Use-case lifecycle instrumentation.
104
+ */
30
105
  export interface UseCaseProviderInstrumentationEvent extends BaseProviderInstrumentationEvent {
31
106
  type: "usecase";
107
+ /**
108
+ * Use-case name.
109
+ */
32
110
  name: string;
111
+ /**
112
+ * Optional classification used by devtools.
113
+ */
33
114
  kind?: "command" | "query";
115
+ /**
116
+ * Lifecycle phase.
117
+ */
34
118
  phase: "start" | "end" | "error";
119
+ /**
120
+ * Duration in milliseconds for completed phases.
121
+ */
35
122
  durationMs?: number;
123
+ /**
124
+ * Error summary for failed phases.
125
+ */
36
126
  error?: string;
37
127
  }
128
+ /**
129
+ * Event bus instrumentation.
130
+ */
38
131
  export interface EventBusProviderInstrumentationEvent extends BaseProviderInstrumentationEvent {
39
132
  type: "eventBus";
133
+ /**
134
+ * Domain or integration event name.
135
+ */
40
136
  eventName: string;
41
137
  }
138
+ /**
139
+ * Background job instrumentation.
140
+ */
42
141
  export interface JobProviderInstrumentationEvent extends BaseProviderInstrumentationEvent {
43
142
  type: "job";
143
+ /**
144
+ * Job name.
145
+ */
44
146
  jobName: string;
147
+ /**
148
+ * Job lifecycle status.
149
+ */
45
150
  status: "scheduled" | "started" | "completed" | "failed";
46
151
  }
152
+ /**
153
+ * Scheduled task instrumentation.
154
+ */
47
155
  export interface ScheduleProviderInstrumentationEvent extends BaseProviderInstrumentationEvent {
48
156
  type: "schedule";
157
+ /**
158
+ * Schedule name.
159
+ */
49
160
  scheduleName: string;
161
+ /**
162
+ * Schedule run lifecycle status.
163
+ */
50
164
  status: "started" | "completed" | "failed";
165
+ /**
166
+ * Cron expression for the schedule, when known.
167
+ */
51
168
  cron?: string;
169
+ /**
170
+ * Time zone used by the schedule, when known.
171
+ */
52
172
  timezone?: string;
53
173
  }
174
+ /**
175
+ * Provider lifecycle instrumentation emitted during setup, start, and stop.
176
+ */
54
177
  export interface ProviderLifecycleInstrumentationEvent extends BaseProviderInstrumentationEvent {
55
178
  type: "provider";
179
+ /**
180
+ * Provider name.
181
+ */
56
182
  providerName: string;
183
+ /**
184
+ * Lifecycle action.
185
+ */
57
186
  action: "setup" | "start" | "stop";
58
187
  }
188
+ /**
189
+ * Custom provider instrumentation event for provider-owned operations.
190
+ */
59
191
  export interface CustomProviderInstrumentationEvent extends BaseProviderInstrumentationEvent {
60
192
  type: "custom";
193
+ /**
194
+ * Stable event name.
195
+ */
61
196
  name: string;
197
+ /**
198
+ * Short display label for devtools.
199
+ */
62
200
  label?: string;
201
+ /**
202
+ * Human-readable summary for devtools lists.
203
+ */
63
204
  summary?: string;
64
205
  }
206
+ /**
207
+ * Union of instrumentation events that provider sinks can receive.
208
+ */
65
209
  export type ProviderInstrumentationEvent = RequestProviderInstrumentationEvent | ErrorProviderInstrumentationEvent | UseCaseProviderInstrumentationEvent | EventBusProviderInstrumentationEvent | JobProviderInstrumentationEvent | ScheduleProviderInstrumentationEvent | ProviderLifecycleInstrumentationEvent | CustomProviderInstrumentationEvent;
210
+ /**
211
+ * Input accepted by provider instrumentation recorders.
212
+ */
66
213
  export type ProviderInstrumentationEventInput = ProviderInstrumentationEvent;
214
+ /**
215
+ * Custom instrumentation input. `type: "custom"` is added by the helper.
216
+ */
67
217
  export type ProviderCustomInstrumentationEventInput = Omit<CustomProviderInstrumentationEvent, "type">;
218
+ /**
219
+ * Sink for provider instrumentation events.
220
+ */
68
221
  export interface ProviderInstrumentationPort<EventInput extends ProviderInstrumentationEventInput = ProviderInstrumentationEventInput, WatcherName extends string = ProviderInstrumentationWatcherName, RecordResult = unknown> {
222
+ /**
223
+ * Record an instrumentation event.
224
+ */
69
225
  record(event: EventInput): RecordResult;
226
+ /**
227
+ * Return whether a watcher is enabled. Missing methods are treated as
228
+ * enabled so simple sinks only need to implement `record`.
229
+ */
70
230
  isWatcherEnabled?(name: WatcherName): boolean;
71
231
  }
232
+ /**
233
+ * Options for creating a provider instrumentation helper.
234
+ */
72
235
  export interface ProviderInstrumentationOptions {
236
+ /**
237
+ * Provider name to attach to custom event details.
238
+ */
73
239
  providerName: string;
240
+ /**
241
+ * Default watcher name for events emitted by the helper.
242
+ */
74
243
  watcher?: ProviderInstrumentationWatcherName;
244
+ /**
245
+ * Optional redactor applied after Beignet's default redaction pass.
246
+ */
75
247
  redact?: Redactor<ProviderInstrumentationEventInput>;
76
248
  }
249
+ /**
250
+ * Convenience wrapper used by providers to emit safe, watcher-aware events.
251
+ */
77
252
  export interface ProviderInstrumentation {
253
+ /**
254
+ * Resolved instrumentation port, when one is available.
255
+ */
78
256
  port: ProviderInstrumentationPort | undefined;
257
+ /**
258
+ * Return whether the given watcher is enabled.
259
+ */
79
260
  isEnabled(watcher?: ProviderInstrumentationWatcherName): boolean;
261
+ /**
262
+ * Record a fully formed provider instrumentation event.
263
+ */
80
264
  record(event: ProviderInstrumentationEventInput): unknown;
265
+ /**
266
+ * Record a provider-owned custom event.
267
+ */
81
268
  custom(event: ProviderCustomInstrumentationEventInput): unknown;
82
269
  }
270
+ /**
271
+ * Values accepted by `createProviderInstrumentation(...)`.
272
+ */
83
273
  export type ProviderInstrumentationTarget = ProviderInstrumentationPort | ProviderInstrumentation | {
84
274
  devtools?: ProviderInstrumentationPort | ProviderInstrumentation;
85
275
  instrumentation?: ProviderInstrumentationPort | ProviderInstrumentation;
86
276
  } | undefined;
277
+ /**
278
+ * Return whether a value is a provider instrumentation helper.
279
+ */
87
280
  export declare function isProviderInstrumentation(value: unknown): value is ProviderInstrumentation;
281
+ /**
282
+ * Return whether a value is a provider instrumentation port.
283
+ */
88
284
  export declare function isProviderInstrumentationPort(value: unknown): value is ProviderInstrumentationPort;
285
+ /**
286
+ * Resolve an instrumentation port from a direct port, helper, or context-like
287
+ * object.
288
+ */
89
289
  export declare function resolveProviderInstrumentationPort(target: ProviderInstrumentationTarget): ProviderInstrumentationPort | undefined;
290
+ /**
291
+ * Create a provider instrumentation helper that handles watcher checks,
292
+ * default watcher assignment, redaction, and sink failures.
293
+ */
90
294
  export declare function createProviderInstrumentation(target: ProviderInstrumentationTarget, options: ProviderInstrumentationOptions): ProviderInstrumentation;
91
295
  //# sourceMappingURL=instrumentation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../../src/providers/instrumentation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../../src/providers/instrumentation.ts"],"names":[],"mappings":"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"}
@@ -2,12 +2,18 @@ import { redactValue } from "../ports/redaction";
2
2
  function isObject(value) {
3
3
  return typeof value === "object" && value !== null;
4
4
  }
5
+ /**
6
+ * Return whether a value is a provider instrumentation helper.
7
+ */
5
8
  export function isProviderInstrumentation(value) {
6
9
  return (isObject(value) &&
7
10
  typeof value.record === "function" &&
8
11
  typeof value.custom === "function" &&
9
12
  typeof value.isEnabled === "function");
10
13
  }
14
+ /**
15
+ * Return whether a value is a provider instrumentation port.
16
+ */
11
17
  export function isProviderInstrumentationPort(value) {
12
18
  return isObject(value) && typeof value.record === "function";
13
19
  }
@@ -18,6 +24,10 @@ function resolveProviderInstrumentationValue(value) {
18
24
  return value;
19
25
  return undefined;
20
26
  }
27
+ /**
28
+ * Resolve an instrumentation port from a direct port, helper, or context-like
29
+ * object.
30
+ */
21
31
  export function resolveProviderInstrumentationPort(target) {
22
32
  if (!target)
23
33
  return undefined;
@@ -38,6 +48,10 @@ function withProviderDetails(providerName, details) {
38
48
  }
39
49
  return { providerName, value: details };
40
50
  }
51
+ /**
52
+ * Create a provider instrumentation helper that handles watcher checks,
53
+ * default watcher assignment, redaction, and sink failures.
54
+ */
41
55
  export function createProviderInstrumentation(target, options) {
42
56
  if (isProviderInstrumentation(target)) {
43
57
  return target;
@@ -1 +1 @@
1
- {"version":3,"file":"instrumentation.js","sourceRoot":"","sources":["../../src/providers/instrumentation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instrumentation.js","sourceRoot":"","sources":["../../src/providers/instrumentation.ts"],"names":[],"mappings":"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"}
@@ -33,10 +33,22 @@ export interface ProviderConfigDef<CfgSchema extends StandardSchemaV1> {
33
33
  */
34
34
  envPrefix?: string;
35
35
  }
36
+ /**
37
+ * Value or promise of that value.
38
+ */
36
39
  export type MaybePromise<T> = T | Promise<T>;
40
+ /**
41
+ * Context passed to provider lifecycle hooks.
42
+ */
37
43
  export type ProviderLifecycleContext = {
44
+ /**
45
+ * Final app ports after provider setup.
46
+ */
38
47
  ports: Readonly<ProviderPorts>;
39
48
  };
49
+ /**
50
+ * Result returned from provider setup.
51
+ */
40
52
  export type ProviderSetupResult<ProvidedPorts extends ProviderPorts> = {
41
53
  /**
42
54
  * Ports contributed by this provider.
@@ -97,7 +109,8 @@ export interface ServiceProvider<Ports, CfgSchema extends StandardSchemaV1 = Sta
97
109
  config?: ProviderConfigDef<CfgSchema>;
98
110
  /**
99
111
  * Setup phase: create the ports this provider contributes.
100
- * Called during app initialization, before routes are registered.
112
+ * Called during server initialization before provider `start` hooks and
113
+ * before the server handles requests.
101
114
  *
102
115
  * @param ctx.ports - Ports contributed by previous providers
103
116
  * @param ctx.config - Validated config (if config was defined), or undefined
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/providers/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/providers/provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,KAAK,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC7C,OAAO,CAAC,MAAM,eAAe,EAAE,OAAO,MAAM,CAAC;AAC7C,KAAK,eAAe,GAAG;IAAE,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AAErD;;;GAGG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,gBAAgB,IAChD,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AAElC;;;GAGG;AACH,MAAM,WAAW,iBAAiB,CAAC,SAAS,SAAS,gBAAgB;IACnE;;;OAGG;IACH,MAAM,EAAE,SAAS,CAAC;IAElB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE7C;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,aAAa,SAAS,aAAa,IAAI;IACrE;;;;OAIG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB;;OAEG;IACH,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,wBAAwB,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;IAE9D;;OAEG;IACH,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,wBAAwB,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;CAC9D,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,WAAW,eAAe,CAC9B,KAAK,EACL,SAAS,SAAS,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,EACjE,aAAa,SAAS,aAAa,GAAG,eAAe;IAErD;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAEtC;;;;;;;OAOG;IACH,KAAK,CAAC,GAAG,EAAE;QACT,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QACvB,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;KAC5C,GAAG,YAAY,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC,CAAC;IAErD;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,SAAS,IACnC,SAAS,SAAS,eAAe,CAC/B,MAAM,MAAM,EACZ,MAAM,UAAU,EAChB,MAAM,aAAa,CACpB,GACG,aAAa,GACb,eAAe,CAAC;AAEtB,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAC5B,CAAC,SAAS,OAAO,GACb,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAClB,KAAK,CACV,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,GAC9B,CAAC,GACD,KAAK,CAAC;AAEV;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,UAAU,IACxC,UAAU,SAAS,SAAS,OAAO,EAAE,GACjC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAClC,eAAe,GACf,mBAAmB,CAAC,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,GAC1D,eAAe,CAAC;AAEtB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAC5B,KAAK,GAAG,OAAO,EACf,SAAS,SAAS,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,EACjE,aAAa,SAAS,aAAa,GAAG,eAAe,EAErD,GAAG,EAAE,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,CAAC,GACpD,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,CAAC,CAElD"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/providers/provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA4JH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,cAAc,CAK5B,GAAqD;IAErD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/providers/provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAyKH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,cAAc,CAK5B,GAAqD;IAErD,OAAO,GAAG,CAAC;AACb,CAAC"}