iii-sdk 0.19.7 → 0.20.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 (89) hide show
  1. package/dist/channel.cjs +5 -0
  2. package/dist/channel.d.cts +2 -0
  3. package/dist/channel.d.mts +2 -0
  4. package/dist/channel.mjs +3 -0
  5. package/dist/{utils-DXL7JI0q.mjs → channels-De8fNMyx.mjs} +3 -108
  6. package/dist/channels-De8fNMyx.mjs.map +1 -0
  7. package/dist/{utils-CuS1Knym.cjs → channels-ZbQzcwnN.cjs} +3 -166
  8. package/dist/channels-ZbQzcwnN.cjs.map +1 -0
  9. package/dist/engine.cjs +5 -0
  10. package/dist/engine.d.cts +3 -0
  11. package/dist/engine.d.mts +3 -0
  12. package/dist/engine.mjs +3 -0
  13. package/dist/errors.cjs +28 -0
  14. package/dist/errors.cjs.map +1 -0
  15. package/dist/errors.d.cts +40 -0
  16. package/dist/errors.d.cts.map +1 -0
  17. package/dist/errors.d.mts +40 -0
  18. package/dist/errors.d.mts.map +1 -0
  19. package/dist/errors.mjs +25 -0
  20. package/dist/errors.mjs.map +1 -0
  21. package/dist/helpers.cjs +6 -5
  22. package/dist/helpers.cjs.map +1 -1
  23. package/dist/helpers.d.cts +23 -5
  24. package/dist/helpers.d.cts.map +1 -1
  25. package/dist/helpers.d.mts +23 -5
  26. package/dist/helpers.d.mts.map +1 -1
  27. package/dist/helpers.mjs +4 -3
  28. package/dist/helpers.mjs.map +1 -1
  29. package/dist/iii-constants-Baptl8nm.d.mts +47 -0
  30. package/dist/iii-constants-Baptl8nm.d.mts.map +1 -0
  31. package/dist/iii-constants-BqXp8xSN.d.cts +47 -0
  32. package/dist/iii-constants-BqXp8xSN.d.cts.map +1 -0
  33. package/dist/iii-constants-Br94RUNi.cjs +67 -0
  34. package/dist/iii-constants-Br94RUNi.cjs.map +1 -0
  35. package/dist/iii-constants-_k3SoHry.mjs +43 -0
  36. package/dist/iii-constants-_k3SoHry.mjs.map +1 -0
  37. package/dist/iii-types-6aHBgy7l.cjs +24 -0
  38. package/dist/iii-types-6aHBgy7l.cjs.map +1 -0
  39. package/dist/iii-types-CRx2qAjB.mjs +18 -0
  40. package/dist/iii-types-CRx2qAjB.mjs.map +1 -0
  41. package/dist/index.cjs +81 -162
  42. package/dist/index.cjs.map +1 -1
  43. package/dist/index.d.cts +14 -81
  44. package/dist/index.d.cts.map +1 -1
  45. package/dist/index.d.mts +14 -81
  46. package/dist/index.d.mts.map +1 -1
  47. package/dist/index.mjs +18 -94
  48. package/dist/index.mjs.map +1 -1
  49. package/dist/internal.cjs +0 -0
  50. package/dist/internal.d.cts +2 -0
  51. package/dist/internal.d.mts +2 -0
  52. package/dist/internal.mjs +1 -0
  53. package/dist/protocol.cjs +4 -0
  54. package/dist/protocol.d.cts +2 -0
  55. package/dist/protocol.d.mts +2 -0
  56. package/dist/protocol.mjs +3 -0
  57. package/dist/runtime.cjs +0 -0
  58. package/dist/runtime.d.cts +3 -0
  59. package/dist/runtime.d.mts +3 -0
  60. package/dist/runtime.mjs +1 -0
  61. package/dist/state.cjs.map +1 -1
  62. package/dist/state.d.cts +3 -7
  63. package/dist/state.d.cts.map +1 -1
  64. package/dist/state.d.mts +3 -7
  65. package/dist/state.d.mts.map +1 -1
  66. package/dist/state.mjs.map +1 -1
  67. package/dist/stream.d.cts +5 -246
  68. package/dist/stream.d.cts.map +1 -1
  69. package/dist/stream.d.mts +5 -246
  70. package/dist/stream.d.mts.map +1 -1
  71. package/dist/trigger.cjs +0 -0
  72. package/dist/trigger.d.cts +2 -0
  73. package/dist/trigger.d.mts +2 -0
  74. package/dist/trigger.mjs +1 -0
  75. package/dist/{utils-BnRzIUCy.d.cts → types-ChnmRit-.d.mts} +30 -217
  76. package/dist/types-ChnmRit-.d.mts.map +1 -0
  77. package/dist/{utils-e84Qph-9.d.mts → types-pzKubHk_.d.cts} +30 -217
  78. package/dist/types-pzKubHk_.d.cts.map +1 -0
  79. package/dist/utils-63wxBJg-.cjs +121 -0
  80. package/dist/utils-63wxBJg-.cjs.map +1 -0
  81. package/dist/utils-8G4hHqvZ.mjs +69 -0
  82. package/dist/utils-8G4hHqvZ.mjs.map +1 -0
  83. package/package.json +37 -2
  84. package/typedoc.json +13 -1
  85. package/vitest.config.ts +3 -3
  86. package/dist/utils-BnRzIUCy.d.cts.map +0 -1
  87. package/dist/utils-CuS1Knym.cjs.map +0 -1
  88. package/dist/utils-DXL7JI0q.mjs.map +0 -1
  89. package/dist/utils-e84Qph-9.d.mts.map +0 -1
package/dist/index.cjs CHANGED
@@ -1,93 +1,17 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
- const require_utils = require('./utils-CuS1Knym.cjs');
3
- let ws = require("ws");
2
+ const require_utils = require('./utils-63wxBJg-.cjs');
3
+ const require_errors = require('./errors.cjs');
4
+ const require_channels = require('./channels-ZbQzcwnN.cjs');
5
+ const require_iii_constants = require('./iii-constants-Br94RUNi.cjs');
6
+ const require_iii_types = require('./iii-types-6aHBgy7l.cjs');
4
7
  let _opentelemetry_api = require("@opentelemetry/api");
5
8
  let node_module = require("node:module");
6
9
  let node_os = require("node:os");
7
10
  node_os = require_utils.__toESM(node_os);
8
- let _iii_dev_observability = require("@iii-dev/observability");
9
- let _iii_dev_observability_internal = require("@iii-dev/observability/internal");
10
-
11
- //#region src/errors.ts
12
- var IIIInvocationError = class extends Error {
13
- constructor(init) {
14
- super(`${init.code}: ${init.message}`);
15
- this.name = "IIIInvocationError";
16
- this.code = init.code;
17
- this.function_id = init.function_id;
18
- this.stacktrace = init.stacktrace;
19
- }
20
- };
21
- /**
22
- * True when `value` looks like the wire `ErrorBody` the engine sends in
23
- * `InvocationResult.error`: `{ code: string, message: string, stacktrace?: string }`.
24
- * Used to distinguish an engine rejection (which we wrap in
25
- * {@link IIIInvocationError}) from a JS `Error` thrown elsewhere.
26
- */
27
- function isErrorBody(value) {
28
- if (typeof value !== "object" || value === null) return false;
29
- const v = value;
30
- return typeof v.code === "string" && typeof v.message === "string" && (v.stacktrace === void 0 || typeof v.stacktrace === "string");
31
- }
32
-
33
- //#endregion
34
- //#region src/iii-constants.ts
35
- /**
36
- * Constants for the III module.
37
- */
38
- /**
39
- * Engine function paths for internal operations.
40
- *
41
- * Naming note: `LIST_TRIGGERS` / `INFO_TRIGGERS` cover trigger TYPES
42
- * (templates). `LIST_REGISTERED_TRIGGERS` / `INFO_REGISTERED_TRIGGERS`
43
- * cover trigger INSTANCES (subscriber rows). The old
44
- * `engine::trigger-types::list` builtin has been removed and is now
45
- * served by `engine::triggers::list`.
46
- */
47
- const EngineFunctions = {
48
- LIST_FUNCTIONS: "engine::functions::list",
49
- INFO_FUNCTIONS: "engine::functions::info",
50
- LIST_WORKERS: "engine::workers::list",
51
- INFO_WORKERS: "engine::workers::info",
52
- LIST_TRIGGERS: "engine::triggers::list",
53
- INFO_TRIGGERS: "engine::triggers::info",
54
- LIST_REGISTERED_TRIGGERS: "engine::registered-triggers::list",
55
- INFO_REGISTERED_TRIGGERS: "engine::registered-triggers::info",
56
- REGISTER_WORKER: "engine::workers::register"
57
- };
58
- /** Engine trigger types */
59
- const EngineTriggers = {
60
- FUNCTIONS_AVAILABLE: "engine::functions-available",
61
- LOG: "log"
62
- };
63
- /** Default reconnection configuration */
64
- const DEFAULT_BRIDGE_RECONNECTION_CONFIG = {
65
- initialDelayMs: 1e3,
66
- maxDelayMs: 3e4,
67
- backoffMultiplier: 2,
68
- jitterFactor: .3,
69
- maxRetries: -1
70
- };
71
- /** Default invocation timeout in milliseconds */
72
- const DEFAULT_INVOCATION_TIMEOUT_MS = 3e4;
73
-
74
- //#endregion
75
- //#region src/iii-types.ts
76
- let MessageType = /* @__PURE__ */ function(MessageType) {
77
- MessageType["RegisterFunction"] = "registerfunction";
78
- MessageType["UnregisterFunction"] = "unregisterfunction";
79
- MessageType["InvokeFunction"] = "invokefunction";
80
- MessageType["InvocationResult"] = "invocationresult";
81
- MessageType["RegisterTriggerType"] = "registertriggertype";
82
- MessageType["RegisterTrigger"] = "registertrigger";
83
- MessageType["UnregisterTrigger"] = "unregistertrigger";
84
- MessageType["UnregisterTriggerType"] = "unregistertriggertype";
85
- MessageType["TriggerRegistrationResult"] = "triggerregistrationresult";
86
- MessageType["WorkerRegistered"] = "workerregistered";
87
- return MessageType;
88
- }({});
11
+ let ws = require("ws");
12
+ let _iii_dev_helpers_observability = require("@iii-dev/helpers/observability");
13
+ let _iii_dev_helpers_observability_internal = require("@iii-dev/helpers/observability/internal");
89
14
 
90
- //#endregion
91
15
  //#region src/iii.ts
92
16
  const { version: SDK_VERSION } = (0, node_module.createRequire)(require("url").pathToFileURL(__filename).href)("../package.json");
93
17
  function getOsInfo() {
@@ -109,11 +33,11 @@ var Sdk = class {
109
33
  this.connectionState = "disconnected";
110
34
  this.isShuttingDown = false;
111
35
  this.registerTriggerType = (triggerType, handler) => {
112
- this.sendMessage(MessageType.RegisterTriggerType, triggerType, true);
36
+ this.sendMessage(require_iii_types.MessageType.RegisterTriggerType, triggerType, true);
113
37
  this.triggerTypes.set(triggerType.id, {
114
38
  message: {
115
39
  ...triggerType,
116
- message_type: MessageType.RegisterTriggerType
40
+ message_type: require_iii_types.MessageType.RegisterTriggerType
117
41
  },
118
42
  handler
119
43
  });
@@ -143,7 +67,7 @@ var Sdk = class {
143
67
  };
144
68
  };
145
69
  this.unregisterTriggerType = (triggerType) => {
146
- this.sendMessage(MessageType.UnregisterTriggerType, triggerType, true);
70
+ this.sendMessage(require_iii_types.MessageType.UnregisterTriggerType, triggerType, true);
147
71
  this.triggerTypes.delete(triggerType.id);
148
72
  };
149
73
  this.registerTrigger = (trigger) => {
@@ -151,14 +75,14 @@ var Sdk = class {
151
75
  const fullTrigger = {
152
76
  ...trigger,
153
77
  id,
154
- message_type: MessageType.RegisterTrigger
78
+ message_type: require_iii_types.MessageType.RegisterTrigger
155
79
  };
156
- this.sendMessage(MessageType.RegisterTrigger, fullTrigger, true);
80
+ this.sendMessage(require_iii_types.MessageType.RegisterTrigger, fullTrigger, true);
157
81
  this.triggers.set(id, fullTrigger);
158
82
  return { unregister: () => {
159
- this.sendMessage(MessageType.UnregisterTrigger, {
83
+ this.sendMessage(require_iii_types.MessageType.UnregisterTrigger, {
160
84
  id,
161
- message_type: MessageType.UnregisterTrigger,
85
+ message_type: require_iii_types.MessageType.UnregisterTrigger,
162
86
  type: fullTrigger.type
163
87
  });
164
88
  this.triggers.delete(id);
@@ -171,11 +95,11 @@ var Sdk = class {
171
95
  const fullMessage = isHandler ? {
172
96
  ...options,
173
97
  id: functionId,
174
- message_type: MessageType.RegisterFunction
98
+ message_type: require_iii_types.MessageType.RegisterFunction
175
99
  } : {
176
100
  ...options,
177
101
  id: functionId,
178
- message_type: MessageType.RegisterFunction,
102
+ message_type: require_iii_types.MessageType.RegisterFunction,
179
103
  invocation: {
180
104
  url: handlerOrInvocation.url,
181
105
  method: handlerOrInvocation.method ?? "POST",
@@ -184,18 +108,18 @@ var Sdk = class {
184
108
  auth: handlerOrInvocation.auth
185
109
  }
186
110
  };
187
- this.sendMessage(MessageType.RegisterFunction, fullMessage, true);
111
+ this.sendMessage(require_iii_types.MessageType.RegisterFunction, fullMessage, true);
188
112
  if (isHandler) {
189
113
  const handler = handlerOrInvocation;
190
114
  this.functions.set(functionId, {
191
115
  message: fullMessage,
192
116
  handler: async (input, traceparent, baggage) => {
193
117
  const tracePayloads = !(process.env.III_DISABLE_TRACE_PAYLOADS === "1" || process.env.III_DISABLE_TRACE_PAYLOADS?.toLowerCase() === "true");
194
- const payloadMaxBytes = (0, _iii_dev_observability.resolveMaxBytesFromEnv)();
118
+ const payloadMaxBytes = (0, _iii_dev_helpers_observability.resolveMaxBytesFromEnv)();
195
119
  const runHandler = async () => {
196
120
  if (tracePayloads) {
197
- const { json, truncated } = (0, _iii_dev_observability.redactAndTruncate)(input, payloadMaxBytes);
198
- (0, _iii_dev_observability.recordSpanEvent)("iii.invocation.input", {
121
+ const { json, truncated } = (0, _iii_dev_helpers_observability.redactAndTruncate)(input, payloadMaxBytes);
122
+ (0, _iii_dev_helpers_observability.recordSpanEvent)("iii.invocation.input", {
199
123
  "iii.payload.json": json,
200
124
  "iii.payload.truncated": truncated
201
125
  });
@@ -203,8 +127,8 @@ var Sdk = class {
203
127
  try {
204
128
  const result = await handler(input);
205
129
  if (tracePayloads) {
206
- const { json, truncated } = (0, _iii_dev_observability.redactAndTruncate)(result, payloadMaxBytes);
207
- (0, _iii_dev_observability.recordSpanEvent)("iii.invocation.output", {
130
+ const { json, truncated } = (0, _iii_dev_helpers_observability.redactAndTruncate)(result, payloadMaxBytes);
131
+ (0, _iii_dev_helpers_observability.recordSpanEvent)("iii.invocation.output", {
208
132
  "iii.payload.json": json,
209
133
  "iii.payload.truncated": truncated,
210
134
  "iii.payload.ok": true
@@ -213,8 +137,8 @@ var Sdk = class {
213
137
  return result;
214
138
  } catch (err) {
215
139
  if (tracePayloads) {
216
- const { json, truncated } = (0, _iii_dev_observability.redactAndTruncate)({ error: err instanceof Error ? err.message : String(err) }, payloadMaxBytes);
217
- (0, _iii_dev_observability.recordSpanEvent)("iii.invocation.output", {
140
+ const { json, truncated } = (0, _iii_dev_helpers_observability.redactAndTruncate)({ error: err instanceof Error ? err.message : String(err) }, payloadMaxBytes);
141
+ (0, _iii_dev_helpers_observability.recordSpanEvent)("iii.invocation.output", {
218
142
  "iii.payload.json": json,
219
143
  "iii.payload.truncated": truncated,
220
144
  "iii.payload.ok": false
@@ -223,9 +147,9 @@ var Sdk = class {
223
147
  throw err;
224
148
  }
225
149
  };
226
- if ((0, _iii_dev_observability_internal.getTracer)()) {
227
- const parentContext = (0, _iii_dev_observability.extractContext)(traceparent, baggage);
228
- return _opentelemetry_api.context.with(parentContext, () => (0, _iii_dev_observability.withSpan)(`execute ${functionId}`, { kind: _opentelemetry_api.SpanKind.INTERNAL }, async () => await runHandler()));
150
+ if ((0, _iii_dev_helpers_observability_internal.getTracer)()) {
151
+ const parentContext = (0, _iii_dev_helpers_observability.extractContext)(traceparent, baggage);
152
+ return _opentelemetry_api.context.with(parentContext, () => (0, _iii_dev_helpers_observability.withSpan)(`execute ${functionId}`, { kind: _opentelemetry_api.SpanKind.INTERNAL }, async () => await runHandler()));
229
153
  }
230
154
  const traceId = crypto.randomUUID().replace(/-/g, "");
231
155
  const spanId = crypto.randomUUID().replace(/-/g, "").slice(0, 16);
@@ -241,7 +165,7 @@ var Sdk = class {
241
165
  return {
242
166
  id: functionId,
243
167
  unregister: () => {
244
- this.sendMessage(MessageType.UnregisterFunction, { id: functionId }, true);
168
+ this.sendMessage(require_iii_types.MessageType.UnregisterFunction, { id: functionId }, true);
245
169
  this.functions.delete(functionId);
246
170
  }
247
171
  };
@@ -252,8 +176,8 @@ var Sdk = class {
252
176
  payload: { buffer_size: bufferSize }
253
177
  });
254
178
  return {
255
- writer: new require_utils.ChannelWriter(this.address, result.writer),
256
- reader: new require_utils.ChannelReader(this.address, result.reader),
179
+ writer: new require_channels.ChannelWriter(this.address, result.writer),
180
+ reader: new require_channels.ChannelReader(this.address, result.reader),
257
181
  writerRef: result.writer,
258
182
  readerRef: result.reader
259
183
  };
@@ -262,9 +186,9 @@ var Sdk = class {
262
186
  const { function_id, payload, action, timeoutMs } = request;
263
187
  const effectiveTimeout = timeoutMs ?? this.invocationTimeoutMs;
264
188
  if (action?.type === "void") {
265
- const traceparent = (0, _iii_dev_observability.injectTraceparent)();
266
- const baggage = (0, _iii_dev_observability.injectBaggage)();
267
- this.sendMessage(MessageType.InvokeFunction, {
189
+ const traceparent = (0, _iii_dev_helpers_observability.injectTraceparent)();
190
+ const baggage = (0, _iii_dev_helpers_observability.injectBaggage)();
191
+ this.sendMessage(require_iii_types.MessageType.InvokeFunction, {
268
192
  function_id,
269
193
  data: payload,
270
194
  traceparent,
@@ -274,13 +198,13 @@ var Sdk = class {
274
198
  return;
275
199
  }
276
200
  const invocation_id = crypto.randomUUID();
277
- const traceparent = (0, _iii_dev_observability.injectTraceparent)();
278
- const baggage = (0, _iii_dev_observability.injectBaggage)();
201
+ const traceparent = (0, _iii_dev_helpers_observability.injectTraceparent)();
202
+ const baggage = (0, _iii_dev_helpers_observability.injectBaggage)();
279
203
  return new Promise((resolve, reject) => {
280
204
  const timeout = setTimeout(() => {
281
205
  if (this.invocations.get(invocation_id)) {
282
206
  this.invocations.delete(invocation_id);
283
- reject(new IIIInvocationError({
207
+ reject(new require_errors.InvocationError({
284
208
  code: "TIMEOUT",
285
209
  message: `invocation timed out after ${effectiveTimeout}ms`,
286
210
  function_id
@@ -299,7 +223,7 @@ var Sdk = class {
299
223
  function_id,
300
224
  timeout
301
225
  });
302
- this.sendMessage(MessageType.InvokeFunction, {
226
+ this.sendMessage(require_iii_types.MessageType.InvokeFunction, {
303
227
  invocation_id,
304
228
  function_id,
305
229
  data: payload,
@@ -319,7 +243,7 @@ var Sdk = class {
319
243
  this.shutdown = async () => {
320
244
  this.isShuttingDown = true;
321
245
  this.stopMetricsReporting();
322
- await (0, _iii_dev_observability.shutdownOtel)();
246
+ await (0, _iii_dev_helpers_observability.shutdownOtel)();
323
247
  this.clearReconnectTimeout();
324
248
  for (const [_id, invocation] of this.invocations) {
325
249
  if (invocation.timeout) clearTimeout(invocation.timeout);
@@ -341,10 +265,10 @@ var Sdk = class {
341
265
  this.metricsReportingEnabled = options?.enableMetricsReporting ?? true;
342
266
  this.invocationTimeoutMs = options?.invocationTimeoutMs ?? 3e4;
343
267
  this.reconnectionConfig = {
344
- ...DEFAULT_BRIDGE_RECONNECTION_CONFIG,
268
+ ...require_iii_constants.DEFAULT_BRIDGE_RECONNECTION_CONFIG,
345
269
  ...options?.reconnectionConfig
346
270
  };
347
- (0, _iii_dev_observability.initOtel)({
271
+ (0, _iii_dev_helpers_observability.initOtel)({
348
272
  ...options?.otel,
349
273
  engineWsUrl: this.address
350
274
  });
@@ -354,7 +278,7 @@ var Sdk = class {
354
278
  const telemetryOpts = this.options?.telemetry;
355
279
  const language = telemetryOpts?.language ?? Intl.DateTimeFormat().resolvedOptions().locale ?? process.env.LANG?.split(".")[0];
356
280
  this.trigger({
357
- function_id: EngineFunctions.REGISTER_WORKER,
281
+ function_id: require_iii_constants.EngineFunctions.REGISTER_WORKER,
358
282
  payload: {
359
283
  runtime: "node",
360
284
  version: SDK_VERSION,
@@ -416,18 +340,18 @@ var Sdk = class {
416
340
  }
417
341
  startMetricsReporting() {
418
342
  if (!this.metricsReportingEnabled || !this.workerId) return;
419
- const meter = (0, _iii_dev_observability_internal.getMeter)();
343
+ const meter = (0, _iii_dev_helpers_observability_internal.getMeter)();
420
344
  if (!meter) {
421
345
  console.warn("[iii] Worker metrics disabled: OpenTelemetry not initialized. Call initOtel() with metricsEnabled: true before creating the iii.");
422
346
  return;
423
347
  }
424
- (0, _iii_dev_observability.registerWorkerGauges)(meter, {
348
+ (0, _iii_dev_helpers_observability.registerWorkerGauges)(meter, {
425
349
  workerId: this.workerId,
426
350
  workerName: this.workerName
427
351
  });
428
352
  }
429
353
  stopMetricsReporting() {
430
- (0, _iii_dev_observability.stopWorkerGauges)();
354
+ (0, _iii_dev_helpers_observability.stopWorkerGauges)();
431
355
  }
432
356
  onSocketClose() {
433
357
  this.ws?.removeAllListeners();
@@ -443,18 +367,18 @@ var Sdk = class {
443
367
  this.setConnectionState("connected");
444
368
  this.ws?.on("message", this.onMessage.bind(this));
445
369
  this.triggerTypes.forEach(({ message }) => {
446
- this.sendMessage(MessageType.RegisterTriggerType, message, true);
370
+ this.sendMessage(require_iii_types.MessageType.RegisterTriggerType, message, true);
447
371
  });
448
372
  this.functions.forEach(({ message }) => {
449
- this.sendMessage(MessageType.RegisterFunction, message, true);
373
+ this.sendMessage(require_iii_types.MessageType.RegisterFunction, message, true);
450
374
  });
451
375
  this.triggers.forEach((trigger) => {
452
- this.sendMessage(MessageType.RegisterTrigger, trigger, true);
376
+ this.sendMessage(require_iii_types.MessageType.RegisterTrigger, trigger, true);
453
377
  });
454
378
  const pending = this.messagesToSend;
455
379
  this.messagesToSend = [];
456
380
  for (const message of pending) {
457
- if (message.type === MessageType.InvokeFunction && typeof message.invocation_id === "string" && !this.invocations.has(message.invocation_id)) continue;
381
+ if (message.type === require_iii_types.MessageType.InvokeFunction && typeof message.invocation_id === "string" && !this.invocations.has(message.invocation_id)) continue;
458
382
  this.sendMessageRaw(JSON.stringify(message));
459
383
  }
460
384
  this.registerWorkerMetadata();
@@ -473,7 +397,7 @@ var Sdk = class {
473
397
  }
474
398
  toWireFormat(messageType, message) {
475
399
  const { message_type: _, ...rest } = message;
476
- if (messageType === MessageType.RegisterTrigger && "type" in message) {
400
+ if (messageType === require_iii_types.MessageType.RegisterTrigger && "type" in message) {
477
401
  const { type: triggerType, ...triggerRest } = message;
478
402
  return {
479
403
  type: messageType,
@@ -481,7 +405,7 @@ var Sdk = class {
481
405
  trigger_type: triggerType
482
406
  };
483
407
  }
484
- if (messageType === MessageType.UnregisterTrigger && "type" in message) {
408
+ if (messageType === require_iii_types.MessageType.UnregisterTrigger && "type" in message) {
485
409
  const { type: triggerType, ...triggerRest } = message;
486
410
  return {
487
411
  type: messageType,
@@ -489,7 +413,7 @@ var Sdk = class {
489
413
  trigger_type: triggerType
490
414
  };
491
415
  }
492
- if (messageType === MessageType.TriggerRegistrationResult && "type" in message) {
416
+ if (messageType === require_iii_types.MessageType.TriggerRegistrationResult && "type" in message) {
493
417
  const { type: triggerType, ...resultRest } = message;
494
418
  return {
495
419
  type: messageType,
@@ -508,10 +432,10 @@ var Sdk = class {
508
432
  else if (!skipIfClosed) this.messagesToSend.push(wireMessage);
509
433
  }
510
434
  logError(message, error) {
511
- const otelLogger = (0, _iii_dev_observability.getLogger)();
435
+ const otelLogger = (0, _iii_dev_helpers_observability.getLogger)();
512
436
  const errorMessage = error instanceof Error ? error.message : String(error ?? "");
513
437
  if (otelLogger) otelLogger.emit({
514
- severityNumber: _iii_dev_observability.SeverityNumber.ERROR,
438
+ severityNumber: _iii_dev_helpers_observability.SeverityNumber.ERROR,
515
439
  body: `[iii] ${message}${errorMessage ? `: ${errorMessage}` : ""}`
516
440
  });
517
441
  else console.error(`[iii] ${message}`, error ?? "");
@@ -526,7 +450,7 @@ var Sdk = class {
526
450
  this.invocations.delete(invocation_id);
527
451
  }
528
452
  /**
529
- * Wrap a wire-format `ErrorBody` in {@link IIIInvocationError} so callers get
453
+ * Wrap a wire-format `ErrorBody` in {@link InvocationError} so callers get
530
454
  * a real `Error` with a readable `.message` and a typed `.code`. Pass-through
531
455
  * for values that are already `Error` subclasses. Everything else is wrapped
532
456
  * under an `UNKNOWN` code so `String(err) !== '[object Object]'` holds for
@@ -534,20 +458,20 @@ var Sdk = class {
534
458
  */
535
459
  toInvocationError(error, function_id) {
536
460
  if (error instanceof Error) return error;
537
- if (isErrorBody(error)) return new IIIInvocationError({
461
+ if (require_errors.isErrorBody(error)) return new require_errors.InvocationError({
538
462
  code: error.code,
539
463
  message: error.message,
540
464
  function_id,
541
465
  stacktrace: error.stacktrace
542
466
  });
543
- return new IIIInvocationError({
467
+ return new require_errors.InvocationError({
544
468
  code: "UNKNOWN",
545
469
  message: typeof error === "string" ? error : JSON.stringify(error) ?? String(error),
546
470
  function_id
547
471
  });
548
472
  }
549
473
  resolveChannelValue(value) {
550
- if (require_utils.isChannelRef(value)) return value.direction === "read" ? new require_utils.ChannelReader(this.address, value) : new require_utils.ChannelWriter(this.address, value);
474
+ if (require_utils.isChannelRef(value)) return value.direction === "read" ? new require_channels.ChannelReader(this.address, value) : new require_channels.ChannelWriter(this.address, value);
551
475
  if (Array.isArray(value)) return value.map((item) => this.resolveChannelValue(item));
552
476
  if (value !== null && typeof value === "object") {
553
477
  const out = {};
@@ -558,8 +482,8 @@ var Sdk = class {
558
482
  }
559
483
  async onInvokeFunction(invocation_id, function_id, input, traceparent, baggage) {
560
484
  const fn = this.functions.get(function_id);
561
- const getResponseTraceparent = () => (0, _iii_dev_observability.injectTraceparent)() ?? traceparent;
562
- const getResponseBaggage = () => (0, _iii_dev_observability.injectBaggage)() ?? baggage;
485
+ const getResponseTraceparent = () => (0, _iii_dev_helpers_observability.injectTraceparent)() ?? traceparent;
486
+ const getResponseBaggage = () => (0, _iii_dev_helpers_observability.injectBaggage)() ?? baggage;
563
487
  const resolvedInput = this.resolveChannelValue(input);
564
488
  if (fn?.handler) {
565
489
  if (!invocation_id) {
@@ -572,7 +496,7 @@ var Sdk = class {
572
496
  }
573
497
  try {
574
498
  const result = await fn.handler(resolvedInput, traceparent, baggage);
575
- this.sendMessage(MessageType.InvocationResult, {
499
+ this.sendMessage(require_iii_types.MessageType.InvocationResult, {
576
500
  invocation_id,
577
501
  function_id,
578
502
  result,
@@ -581,7 +505,7 @@ var Sdk = class {
581
505
  });
582
506
  } catch (error) {
583
507
  const isError = error instanceof Error;
584
- this.sendMessage(MessageType.InvocationResult, {
508
+ this.sendMessage(require_iii_types.MessageType.InvocationResult, {
585
509
  invocation_id,
586
510
  function_id,
587
511
  error: {
@@ -596,7 +520,7 @@ var Sdk = class {
596
520
  } else {
597
521
  const errorCode = fn ? "function_not_invokable" : "function_not_found";
598
522
  const errorMessage = fn ? "Function is HTTP-invoked and cannot be invoked locally" : "Function not found";
599
- if (invocation_id) this.sendMessage(MessageType.InvocationResult, {
523
+ if (invocation_id) this.sendMessage(require_iii_types.MessageType.InvocationResult, {
600
524
  invocation_id,
601
525
  function_id,
602
526
  error: {
@@ -618,16 +542,16 @@ var Sdk = class {
618
542
  config,
619
543
  metadata
620
544
  });
621
- this.sendMessage(MessageType.TriggerRegistrationResult, {
545
+ this.sendMessage(require_iii_types.MessageType.TriggerRegistrationResult, {
622
546
  id,
623
- message_type: MessageType.TriggerRegistrationResult,
547
+ message_type: require_iii_types.MessageType.TriggerRegistrationResult,
624
548
  type: trigger_type,
625
549
  function_id
626
550
  });
627
551
  } catch (error) {
628
- this.sendMessage(MessageType.TriggerRegistrationResult, {
552
+ this.sendMessage(require_iii_types.MessageType.TriggerRegistrationResult, {
629
553
  id,
630
- message_type: MessageType.TriggerRegistrationResult,
554
+ message_type: require_iii_types.MessageType.TriggerRegistrationResult,
631
555
  type: trigger_type,
632
556
  function_id,
633
557
  error: {
@@ -636,9 +560,9 @@ var Sdk = class {
636
560
  }
637
561
  });
638
562
  }
639
- else this.sendMessage(MessageType.TriggerRegistrationResult, {
563
+ else this.sendMessage(require_iii_types.MessageType.TriggerRegistrationResult, {
640
564
  id,
641
- message_type: MessageType.TriggerRegistrationResult,
565
+ message_type: require_iii_types.MessageType.TriggerRegistrationResult,
642
566
  type: trigger_type,
643
567
  function_id,
644
568
  error: {
@@ -681,16 +605,16 @@ var Sdk = class {
681
605
  this.logError("Failed to parse incoming message", error);
682
606
  return;
683
607
  }
684
- if (msgType === MessageType.InvocationResult) {
608
+ if (msgType === require_iii_types.MessageType.InvocationResult) {
685
609
  const { invocation_id, result, error } = message;
686
610
  this.onInvocationResult(invocation_id, result, error);
687
- } else if (msgType === MessageType.InvokeFunction) {
611
+ } else if (msgType === require_iii_types.MessageType.InvokeFunction) {
688
612
  const { invocation_id, function_id, data, traceparent, baggage } = message;
689
613
  this.onInvokeFunction(invocation_id, function_id, data, traceparent, baggage);
690
- } else if (msgType === MessageType.RegisterTrigger) this.onRegisterTrigger(message);
691
- else if (msgType === MessageType.UnregisterTrigger) this.onUnregisterTrigger(message);
692
- else if (msgType === MessageType.TriggerRegistrationResult) this.onTriggerRegistrationResult(message);
693
- else if (msgType === MessageType.WorkerRegistered) {
614
+ } else if (msgType === require_iii_types.MessageType.RegisterTrigger) this.onRegisterTrigger(message);
615
+ else if (msgType === require_iii_types.MessageType.UnregisterTrigger) this.onUnregisterTrigger(message);
616
+ else if (msgType === require_iii_types.MessageType.TriggerRegistrationResult) this.onTriggerRegistrationResult(message);
617
+ else if (msgType === require_iii_types.MessageType.WorkerRegistered) {
694
618
  const { worker_id } = message;
695
619
  this.workerId = worker_id;
696
620
  console.debug("[iii] Worker registered with ID:", worker_id);
@@ -699,21 +623,21 @@ var Sdk = class {
699
623
  }
700
624
  };
701
625
  /**
702
- * Factory object that constructs routing actions for {@link ISdk.trigger}.
626
+ * Factory object that constructs routing actions for {@link IIIClient.trigger}.
703
627
  *
704
628
  * @example
705
629
  * ```typescript
706
630
  * import { TriggerAction } from 'iii-sdk'
707
631
  *
708
632
  * // Enqueue to a named queue
709
- * iii.trigger({
633
+ * worker.trigger({
710
634
  * function_id: 'process',
711
635
  * payload: { data: 'hello' },
712
636
  * action: TriggerAction.Enqueue({ queue: 'jobs' }),
713
637
  * })
714
638
  *
715
639
  * // Fire-and-forget
716
- * iii.trigger({
640
+ * worker.trigger({
717
641
  * function_id: 'notify',
718
642
  * payload: {},
719
643
  * action: TriggerAction.Void(),
@@ -733,13 +657,13 @@ const TriggerAction = {
733
657
  *
734
658
  * @param address - WebSocket URL of the III engine (e.g. `ws://localhost:49134`).
735
659
  * @param options - Optional {@link InitOptions} for worker name, timeouts, reconnection, and OTel.
736
- * @returns A connected {@link ISdk} instance.
660
+ * @returns A connected {@link IIIClient} instance.
737
661
  *
738
662
  * @example
739
663
  * ```typescript
740
664
  * import { registerWorker } from 'iii-sdk'
741
665
  *
742
- * const iii = registerWorker(process.env.III_URL ?? 'ws://localhost:49134', {
666
+ * const worker = registerWorker(process.env.III_URL ?? 'ws://localhost:49134', {
743
667
  * workerName: 'my-worker',
744
668
  * })
745
669
  * ```
@@ -747,12 +671,7 @@ const TriggerAction = {
747
671
  const registerWorker = (address, options) => new Sdk(address, options);
748
672
 
749
673
  //#endregion
750
- exports.ChannelReader = require_utils.ChannelReader;
751
- exports.ChannelWriter = require_utils.ChannelWriter;
752
- exports.EngineFunctions = EngineFunctions;
753
- exports.EngineTriggers = EngineTriggers;
754
- exports.IIIInvocationError = IIIInvocationError;
674
+ exports.InvocationError = require_errors.InvocationError;
755
675
  exports.TriggerAction = TriggerAction;
756
- exports.http = require_utils.http;
757
676
  exports.registerWorker = registerWorker;
758
677
  //# sourceMappingURL=index.cjs.map