@smplkit/sdk 3.0.55 → 3.0.57

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.
package/dist/index.cjs CHANGED
@@ -19281,13 +19281,13 @@ function _coerceValues(values) {
19281
19281
 
19282
19282
  // src/logging/types.ts
19283
19283
  var LogLevel = /* @__PURE__ */ ((LogLevel5) => {
19284
+ LogLevel5["TRACE"] = "TRACE";
19284
19285
  LogLevel5["DEBUG"] = "DEBUG";
19286
+ LogLevel5["INFO"] = "INFO";
19287
+ LogLevel5["WARN"] = "WARN";
19285
19288
  LogLevel5["ERROR"] = "ERROR";
19286
19289
  LogLevel5["FATAL"] = "FATAL";
19287
- LogLevel5["INFO"] = "INFO";
19288
19290
  LogLevel5["SILENT"] = "SILENT";
19289
- LogLevel5["TRACE"] = "TRACE";
19290
- LogLevel5["WARN"] = "WARN";
19291
19291
  return LogLevel5;
19292
19292
  })(LogLevel || {});
19293
19293
  var LoggerChangeEvent = class {
@@ -19963,15 +19963,20 @@ var Forwarder = class {
19963
19963
  */
19964
19964
  filter;
19965
19965
  /**
19966
- * Optional template applied to each event before delivery. Shape
19967
- * depends on {@link transformType}; for `"JSONATA"`, a JSONata
19966
+ * Optional template applied to each event before delivery. The wire
19967
+ * schema widens to arbitrary JSON to leave room for future transform
19968
+ * engines carrying structured templates; for
19969
+ * {@link TransformType.JSONATA} the value must be a JSONata
19968
19970
  * expression string. `null` delivers the event JSON as-is.
19971
+ *
19972
+ * {@link transform} and {@link transformType} travel as a pair —
19973
+ * both set, or both `null`. The SDK enforces this at save time.
19969
19974
  */
19970
19975
  transform;
19971
19976
  /**
19972
- * Engine used to evaluate {@link transform}. Currently only
19973
- * `"JSONATA"` is supported. Auto-filled by the SDK whenever
19974
- * {@link transform} is set on save.
19977
+ * Engine used to evaluate {@link transform}. Required whenever
19978
+ * {@link transform} is set, forbidden when it isn't. Today only
19979
+ * {@link TransformType.JSONATA} is supported.
19975
19980
  */
19976
19981
  transformType;
19977
19982
  /**
@@ -20102,8 +20107,20 @@ function _forwarderAttrs(forwarder) {
20102
20107
  if (forwarder.filter !== null) {
20103
20108
  attrs.filter = forwarder.filter;
20104
20109
  }
20105
- if (forwarder.transform !== null) {
20106
- attrs.transform_type = "JSONATA" /* JSONATA */;
20110
+ const hasTransform = forwarder.transform !== null && forwarder.transform !== void 0;
20111
+ const hasTransformType = forwarder.transformType !== null && forwarder.transformType !== void 0;
20112
+ if (hasTransform !== hasTransformType) {
20113
+ throw new Error(
20114
+ "Forwarder.transform and Forwarder.transformType must be set together (or both unset)"
20115
+ );
20116
+ }
20117
+ if (hasTransform) {
20118
+ if (forwarder.transformType === "JSONATA" /* JSONATA */ && typeof forwarder.transform !== "string") {
20119
+ throw new Error(
20120
+ "Forwarder.transform must be a string when Forwarder.transformType is JSONATA"
20121
+ );
20122
+ }
20123
+ attrs.transform_type = forwarder.transformType;
20107
20124
  attrs.transform = forwarder.transform;
20108
20125
  }
20109
20126
  return attrs;
@@ -20135,20 +20152,27 @@ var ForwardersClient = class {
20135
20152
  * Construct an unsaved {@link Forwarder}. Call {@link Forwarder.save}
20136
20153
  * to persist.
20137
20154
  *
20138
- * @param fields.name Display name. Free-form.
20139
- * @param fields.forwarderType Destination type — see {@link ForwarderType}.
20140
- * @param fields.configuration Destination HTTP request configuration.
20141
- * Headers carry credentials and are
20142
- * encrypted at rest server-side; reads
20143
- * return them redacted.
20144
- * @param fields.enabled Whether the forwarder is active. Defaults true.
20145
- * @param fields.description Optional free-text description.
20146
- * @param fields.filter Optional JSON Logic filter; events that
20147
- * don't match are recorded as
20148
- * `filtered_out` deliveries.
20149
- * @param fields.transform Optional JSONata template applied to
20150
- * the event payload before POST. `null`
20151
- * delivers the event as-is.
20155
+ * @param fields.name Display name. Free-form.
20156
+ * @param fields.forwarderType Destination type — see {@link ForwarderType}.
20157
+ * @param fields.configuration Destination HTTP request configuration.
20158
+ * Headers carry credentials and are
20159
+ * encrypted at rest server-side; reads
20160
+ * return them redacted.
20161
+ * @param fields.enabled Whether the forwarder is active. Defaults true.
20162
+ * @param fields.description Optional free-text description.
20163
+ * @param fields.filter Optional JSON Logic filter; events that
20164
+ * don't match are recorded as
20165
+ * `filtered_out` deliveries.
20166
+ * @param fields.transformType Engine used to evaluate `transform`.
20167
+ * Today only {@link TransformType.JSONATA}
20168
+ * is supported. Must be supplied together
20169
+ * with `transform` (both or neither).
20170
+ * @param fields.transform Optional template applied to each
20171
+ * event before delivery. The value is
20172
+ * arbitrary JSON — for JSONATA, it
20173
+ * must be a string containing a JSONata
20174
+ * expression. Must be supplied together
20175
+ * with `transformType` (both or neither).
20152
20176
  */
20153
20177
  new(fields) {
20154
20178
  return new Forwarder(this, {
@@ -20158,6 +20182,7 @@ var ForwardersClient = class {
20158
20182
  enabled: fields.enabled,
20159
20183
  description: fields.description,
20160
20184
  filter: fields.filter,
20185
+ transformType: fields.transformType,
20161
20186
  transform: fields.transform
20162
20187
  });
20163
20188
  }